vivarium-collective / bigraph-schema

compositional type schemas
Apache License 2.0
1 stars 1 forks source link

Two things: recursive types and union type #26

Closed eagmon closed 8 months ago

eagmon commented 1 year ago

I want types to be able to reference themselves:

{
 '_type': 'self',
 'one': 'int',
 'two': 'self',
}

We also need a union type:

{
 '_type': 'union[int, dict]'
}

Combined, these should support a type such as this:

{
 _type: foursquare,
 00: union[bool,foursquare],
 01: union[bool,foursquare],
 10: union[bool,foursquare],
 11: union[bool,foursquare],
 _default: {00: False, 01: False, 10: False, 11: False}
}