Elvis operator for types.
Elvis operator for types. See https://en.wikipedia.org/wiki/Elvis_operator
Approximate data size of the given context without ContextExtension.
Lookup method by its id in this type.
Lookup method by its id in this type.
This method should be overriden in derived classes to add new methods in addition to inherited.
Returns true if dataSize doesn't depend on data value.
Lookup method in this type by method's id or throw ValidationException.
Lookup method in this type by method's id or throw ValidationException. This method can be used in trySoftForkable section to either obtain valid method or catch ValidatioinException which can be checked for soft-fork condition. It delegate to getMethodById to lookup method.
getMethodById
Returns -1 if method
is not found.
Returns -1 if method
is not found.
Returns all the methods of this type.
Returns all the methods of this type.
Construct tree node Constant for a given data object.
Checks if this
product has exactly the same methods as that
.
Checks if this
product has exactly the same methods as that
.
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.
Type identifier to use in method serialization
Type identifier to use in method serialization
This type is introduced to unify handling of global and non-global (i.e. methods) operations. It unifies implementation of global operation with implementation of methods and avoids code duplication (following DRY principle https://en.wikipedia.org/wiki/Don%27t_repeat_yourself). The WrappedType is
special.sigma.SigmaDslBuilder
, which is an interface implemented by the singleton sigmastate.eval.CostingSigmaDslBuilderThe Constant(...) tree node of this type are not allowed, as well as using it in register and context variables (aka ContextExtension)
When new methods are added to this type via a soft-fork, they will be serialized as part of ErgoTree using MethodCallSerializer, where SGlobal.typeCode will be used.
sigmastate.lang.SigmaPredef