Elvis operator for types.
Elvis operator for types. See https://en.wikipedia.org/wiki/Elvis_operator
Approximate size of the given value in bytes.
Returns true if dataSize doesn't depend on data value.
Returns true if this type embeddable, i.e.
Returns true if this type embeddable, i.e. a type that can be combined with type
constructor for optimized encoding. For each embeddable type T
, and type
constructor C
, the type C[T]
can be represented by a single byte.
Returns parsable type term string of the type described by this type descriptor.
Returns parsable type term string of the type described by this type descriptor. For every type it should be inverse to SigmaTyper.parseType. This is default fallback implementation, should be overriden if it is not correct for a particular type.
Type code used in serialization of SType values.
Special type to represent untyped values. Interpreter raises an error when encounter a Value with this type. All Value nodes with this type should be elimitanted during typing. If no specific type can be assigned statically during typing, then either error should be raised or type SAny should be assigned which is interpreted as dynamic typing.