object SGlobal extends SProduct with SPredefType with SMonoType with Product with Serializable
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.CostingSigmaDslBuilder
The 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.
- See also
sigmastate.lang.SigmaPredef
- Alphabetic
- By Inheritance
- SGlobal
- Serializable
- Serializable
- SMonoType
- STypeCompanion
- SPredefType
- SProduct
- SType
- SigmaNode
- Product
- Equals
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Type Members
- type WrappedType = SigmaDslBuilder
Value Members
-
final
def
!=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
##(): Int
- Definition Classes
- AnyRef → Any
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
?:(whenNoType: ⇒ SType): SType
Elvis operator for types.
Elvis operator for types. See https://en.wikipedia.org/wiki/Elvis_operator
- Definition Classes
- SType
-
lazy val
_methodsMap: Map[Byte, Map[Byte, SMethod]]
- Definition Classes
- STypeCompanion
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
def
clone(): AnyRef
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native()
-
val
coster: Some[Coster]
- Definition Classes
- SGlobal → STypeCompanion
-
def
dataSize(v: SType.WrappedType): Long
Approximate data size of the given context without ContextExtension.
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
finalize(): Unit
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
def
getMethodById(methodId: Byte): Option[SMethod]
Lookup method by its id in this type.
Lookup method by its id in this type.
- Definition Classes
- STypeCompanion
- Annotations
- @inline()
-
def
getMethodByName(name: String): SMethod
- Definition Classes
- STypeCompanion
-
def
getMethods(): Seq[SMethod]
This method should be overriden in derived classes to add new methods in addition to inherited.
- val groupGeneratorMethod: SMethod
-
def
hasMethod(name: String): Boolean
- Definition Classes
- SProduct
-
def
hasMethodWithId(methodId: Byte): Boolean
- Definition Classes
- STypeCompanion
-
def
isConstantSize: Boolean
Returns true if dataSize doesn't depend on data value.
-
def
isEmbeddable: Boolean
- Definition Classes
- SType
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
def
method(methodName: String): Option[SMethod]
- Definition Classes
- SProduct
-
def
methodById(methodId: Byte): SMethod
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.
- Definition Classes
- STypeCompanion
- See also
getMethodById
-
def
methodIndex(name: String): Int
Returns -1 if
method
is not found.Returns -1 if
method
is not found.- Definition Classes
- SProduct
-
lazy val
methods: Seq[SMethod]
Returns all the methods of this type.
Returns all the methods of this type.
- Definition Classes
- SProduct
-
def
mkConstant(v: SigmaDslBuilder): Value[SGlobal.type]
Construct tree node Constant for a given data object.
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
def
property(name: String, tpeRes: SType, id: Byte, valueCompanion: ValueCompanion): SMethod
- Attributes
- protected
- Definition Classes
- SMonoType
-
def
property(name: String, tpeRes: SType, id: Byte): SMethod
- Attributes
- protected
- Definition Classes
- SMonoType
-
def
sameMethods(that: SProduct): Boolean
Checks if
this
product has exactly the same methods asthat
.Checks if
this
product has exactly the same methods asthat
.- Definition Classes
- SProduct
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
- val tT: STypeVar
-
def
toTermString: String
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.
- Definition Classes
- SType
-
val
typeCode: TypeCode
Type code used in serialization of SType values.
-
def
typeId: TypeCode
Type identifier to use in method serialization
Type identifier to use in method serialization
- Definition Classes
- SGlobal → STypeCompanion
-
def
typeName: String
- Definition Classes
- STypeCompanion
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native()
-
def
withSubstTypes(subst: Map[STypeVar, SType]): SType
- Definition Classes
- SType
- val xorMethod: SMethod