case 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
- SMonoType
- STypeCompanion
- SPredefType
- SProduct
- SType
- SigmaNode
- Product
- Equals
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Type Members
- type WrappedType = SigmaDslBuilder
The underlying Scala type of data values described by this type descriptor.
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
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def clone(): AnyRef
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native() @IntrinsicCandidate()
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @IntrinsicCandidate()
- 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
Looks up the method descriptor by the method name.
Looks up the method descriptor by the method name.
- Definition Classes
- STypeCompanion
- def getMethods(): Seq[SMethod]
This method should be overriden in derived classes to add new methods in addition to inherited.
- lazy val groupGeneratorMethod: SMethod
- def hasMethod(name: String): Boolean
Returns true if this type has a method with the given name.
Returns true if this type has a method with the given name.
- Definition Classes
- SProduct
- def isEmbeddable: Boolean
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 constructorC
, the typeC[T]
can be represented by a single byte.- Definition Classes
- SType
- See also
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- def method(methodName: String): Option[SMethod]
Finds a method descriptor SMethod for the given name.
- 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
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @IntrinsicCandidate()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @IntrinsicCandidate()
- def productElementName(n: Int): String
- Definition Classes
- Product
- def productElementNames: Iterator[String]
- Definition Classes
- Product
- def property(name: String, tpeRes: SType, id: Byte, valueCompanion: ValueCompanion): SMethod
Helper method to create method descriptors for properties (i.e.
Helper method to create method descriptors for properties (i.e. methods without args).
- Attributes
- protected
- Definition Classes
- SMonoType
- def propertyCall(name: String, tpeRes: SType, id: Byte, costKind: CostKind): SMethod
Helper method to create method descriptors for properties (i.e.
Helper method to create method descriptors for properties (i.e. methods without args).
- Attributes
- protected
- Definition Classes
- SMonoType
- val reprClass: Class[_]
Class which represents values of this type.
Class which represents values of this type. When method call is executed, the corresponding method of this class is invoked via reflection java.lang.reflect.Method.invoke().
- Definition Classes
- SGlobal → STypeCompanion
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- 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
If this is SType instance then returns the name of the corresponding RType.
If this is SType instance then returns the name of the corresponding RType. Otherwise returns the name of type companion object (e.g. SCollection).
- Definition Classes
- STypeCompanion
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- def withSubstTypes(subst: Map[STypeVar, SType]): SType
- Definition Classes
- SType
- lazy val xorMethod: SMethod
- def xor_eval(mc: MethodCall, G: SigmaDslBuilder, ls: Coll[Byte], rs: Coll[Byte])(implicit E: ErgoTreeEvaluator): Coll[Byte]
Implements evaluation of Global.xor method call ErgoTree node.
Implements evaluation of Global.xor method call ErgoTree node. Called via reflection based on naming convention.
- See also
SMethod.evalMethod, Xor.eval, Xor.xorWithCosting
Deprecated Value Members
- def finalize(): Unit
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable]) @Deprecated
- Deprecated