Object

sigmastate

SGlobal

Related Doc: package sigmastate

Permalink

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

Linear Supertypes
Serializable, Serializable, SMonoType, STypeCompanion, SPredefType, SProduct, SType, SigmaNode, Product, Equals, AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. SGlobal
  2. Serializable
  3. Serializable
  4. SMonoType
  5. STypeCompanion
  6. SPredefType
  7. SProduct
  8. SType
  9. SigmaNode
  10. Product
  11. Equals
  12. AnyRef
  13. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Type Members

  1. type WrappedType = SigmaDslBuilder

    Permalink
    Definition Classes
    SGlobalSType

Value Members

  1. final def !=(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  4. def ?:(whenNoType: ⇒ SType): SType

    Permalink

    Elvis operator for types.

    Elvis operator for types. See https://en.wikipedia.org/wiki/Elvis_operator

    Definition Classes
    SType
  5. lazy val _methodsMap: Map[Byte, Map[Byte, SMethod]]

    Permalink
    Definition Classes
    STypeCompanion
  6. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  7. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  8. val coster: Some[Coster]

    Permalink
    Definition Classes
    SGlobalSTypeCompanion
  9. def dataSize(v: SType.WrappedType): Long

    Permalink

    Approximate data size of the given context without ContextExtension.

    Approximate data size of the given context without ContextExtension.

    Definition Classes
    SGlobalSType
  10. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  11. def equals(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  12. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  13. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  14. def getMethodById(methodId: Byte): Option[SMethod]

    Permalink

    Lookup method by its id in this type.

    Lookup method by its id in this type.

    Definition Classes
    STypeCompanion
    Annotations
    @inline()
  15. def getMethodByName(name: String): SMethod

    Permalink
    Definition Classes
    STypeCompanion
  16. def getMethods(): Seq[SMethod]

    Permalink

    This method should be overriden in derived classes to add new methods in addition to inherited.

    This method should be overriden in derived classes to add new methods in addition to inherited. Typical override: super.getMethods() ++ Seq(m1, m2, m3)

    Attributes
    protected
    Definition Classes
    SGlobalSProduct
  17. val groupGeneratorMethod: SMethod

    Permalink
  18. def hasMethod(name: String): Boolean

    Permalink
    Definition Classes
    SProduct
  19. def hasMethodWithId(methodId: Byte): Boolean

    Permalink
    Definition Classes
    STypeCompanion
  20. def isConstantSize: Boolean

    Permalink

    Returns true if dataSize doesn't depend on data value.

    Returns true if dataSize doesn't depend on data value. This is useful for optimizations of calculating sizes of collections.

    Definition Classes
    SGlobalSType
  21. def isEmbeddable: Boolean

    Permalink
    Definition Classes
    SType
  22. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  23. def method(methodName: String): Option[SMethod]

    Permalink
    Definition Classes
    SProduct
  24. def methodById(methodId: Byte): SMethod

    Permalink

    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

  25. def methodIndex(name: String): Int

    Permalink

    Returns -1 if method is not found.

    Returns -1 if method is not found.

    Definition Classes
    SProduct
  26. lazy val methods: Seq[SMethod]

    Permalink

    Returns all the methods of this type.

    Returns all the methods of this type.

    Definition Classes
    SProduct
  27. def mkConstant(v: SigmaDslBuilder): Value[SGlobal.type]

    Permalink

    Construct tree node Constant for a given data object.

    Construct tree node Constant for a given data object.

    Definition Classes
    SGlobalSType
  28. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  29. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
  30. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
  31. def property(name: String, tpeRes: SType, id: Byte, valueCompanion: ValueCompanion): SMethod

    Permalink
    Attributes
    protected
    Definition Classes
    SMonoType
  32. def property(name: String, tpeRes: SType, id: Byte): SMethod

    Permalink
    Attributes
    protected
    Definition Classes
    SMonoType
  33. def sameMethods(that: SProduct): Boolean

    Permalink

    Checks if this product has exactly the same methods as that.

    Checks if this product has exactly the same methods as that.

    Definition Classes
    SProduct
  34. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  35. val tT: STypeVar

    Permalink
  36. def toTermString: String

    Permalink

    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
  37. val typeCode: TypeCode

    Permalink

    Type code used in serialization of SType values.

    Type code used in serialization of SType values.

    Definition Classes
    SGlobalSType
    See also

    TypeSerializer

  38. def typeId: TypeCode

    Permalink

    Type identifier to use in method serialization

    Type identifier to use in method serialization

    Definition Classes
    SGlobalSTypeCompanion
  39. def typeName: String

    Permalink
    Definition Classes
    STypeCompanion
  40. final def wait(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  41. final def wait(arg0: Long, arg1: Int): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  42. final def wait(arg0: Long): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  43. def withSubstTypes(subst: Map[STypeVar, SType]): SType

    Permalink
    Definition Classes
    SType
  44. val xorMethod: SMethod

    Permalink

Inherited from Serializable

Inherited from Serializable

Inherited from SMonoType

Inherited from STypeCompanion

Inherited from SPredefType

Inherited from SProduct

Inherited from SType

Inherited from SigmaNode

Inherited from Product

Inherited from Equals

Inherited from AnyRef

Inherited from Any

Ungrouped