Object/Trait

sigmastate

SType

Related Docs: trait SType | package sigmastate

Permalink

object SType

Linear Supertypes
AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. SType
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Type Members

  1. implicit final class AnyOps extends AnyVal

    Permalink
  2. implicit final class STypeOps extends AnyVal

    Permalink
  3. type TypeCode = Byte

    Permalink

    Representation of type codes used in serialization.

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. implicit val AvlTreeDataRType: RType[AvlTreeData]

    Permalink
  5. val DummyValue: WrappedType

    Permalink
  6. val EmptyArray: Array[SType]

    Permalink

    Immutable empty array, can be used to avoid repeated allocations.

  7. val EmptySeq: IndexedSeq[SType]

    Permalink

    Immutable empty IndexedSeq, can be used to avoid repeated allocations.

  8. implicit val ErgoBoxCandidateRType: RType[ErgoBoxCandidate]

    Permalink
  9. implicit val ErgoBoxRType: RType[ErgoBox]

    Permalink
  10. implicit val ErgoLikeContextRType: RType[ErgoLikeContext]

    Permalink
  11. val IndexedSeqOfT1: IndexedSeq[SType]

    Permalink
  12. val IndexedSeqOfT2: IndexedSeq[SType]

    Permalink
  13. implicit val SigmaBooleanRType: RType[SigmaBoolean]

    Permalink

    RType descriptors for predefined types used in AOTC-based interpreter.

  14. val allPredefTypes: Seq[SType]

    Permalink

    All pre-defined types should be listed here.

    All pre-defined types should be listed here. Note, NoType is not listed. Should be in sync with sigmastate.lang.Types.predefTypes.

  15. final def asInstanceOf[T0]: T0

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

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  17. final def eq(arg0: AnyRef): Boolean

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

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

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

    Permalink
    Definition Classes
    AnyRef → Any
  21. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  22. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  23. def isValueOfType[T <: SType](x: Any, tpe: T): Boolean

    Permalink

    Checks that the type of the value corresponds to the descriptor tpe.

    Checks that the type of the value corresponds to the descriptor tpe. If the value has complex structure only root type constructor is checked. NOTE, this method is used in ErgoTree evaluation to systematically check that each tree node evaluates to a value of the expected type. Shallow runtime checks are enough if: 1) ErgoTree is well-typed, i.e. each sub-expression has correct types (agree with the argument type). 2) isValueOfType == true for each tree leaf 3) isValueOfType == true for each sub-expression

    tpe

    type descriptor to check value against

    returns

    true if the given value is of type tpe

  24. final def ne(arg0: AnyRef): Boolean

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

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

    Permalink
    Definition Classes
    AnyRef
  27. val paramIV: STypeParam

    Permalink
  28. val paramIVSeq: Seq[STypeParam]

    Permalink
  29. val paramOV: STypeParam

    Permalink
  30. val paramR: STypeParam

    Permalink
  31. val paramT: STypeParam

    Permalink
  32. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  33. val tD: STypeVar

    Permalink
  34. val tIV: STypeVar

    Permalink
  35. val tK: STypeVar

    Permalink
  36. val tL: STypeVar

    Permalink
  37. val tO: STypeVar

    Permalink
  38. val tOV: STypeVar

    Permalink
  39. val tR: STypeVar

    Permalink
  40. val tT: STypeVar

    Permalink

    Named type variables and parameters used in generic types and method signatures.

    Named type variables and parameters used in generic types and method signatures. Generic type terms like (Coll[IV],(IV) => Boolean) => Boolean are used to represent method types of Coll and Option types. Each such type is an instance of SFunc. To represent variables (such as IV in the example above) STypeVar instances are used.

    Generic types are not supported by ErgoTree serialization format and STypeVars are used internally and never serialized (there is no serializer for STypeVar). Thus the usage of type variables is limited.

    All necessary type variables can be declared in advance and reused across all code base. This allows to avoid allocation of many duplicates and also improve performance of SType values.

  41. val tV: STypeVar

    Permalink
  42. def toString(): String

    Permalink
    Definition Classes
    AnyRef → Any
  43. implicit val typeAvlTree: SAvlTree.type

    Permalink
  44. implicit val typeBigInt: SBigInt.type

    Permalink
  45. implicit val typeBoolean: SBoolean.type

    Permalink
  46. implicit val typeBox: SBox.type

    Permalink
  47. implicit val typeByte: SByte.type

    Permalink
  48. implicit def typeCollection[V <: SType](implicit tV: V): SCollection[V]

    Permalink

    Costructs a collection type with the given type of elements.

  49. implicit val typeGroupElement: SGroupElement.type

    Permalink
  50. implicit val typeInt: SInt.type

    Permalink
  51. implicit val typeLong: SLong.type

    Permalink
  52. implicit val typeShort: SShort.type

    Permalink
  53. implicit val typeSigmaProp: SSigmaProp.type

    Permalink
  54. lazy val types: Map[Byte, STypeCompanion]

    Permalink

    A mapping of object types supporting MethodCall operations.

    A mapping of object types supporting MethodCall operations. For each serialized typeId this map contains a companion object which can be used to access the list of corresponding methods.

    NOTE: in the current implementation only monomorphic methods are supported (without type parameters)

    NOTE2: in v3.x SNumericType.typeId is silently shadowed by SGlobal.typeId as part of toMap operation. As a result, the methods collected into SByte.methods cannot be resolved (using SMethod.fromIds()) for all numeric types (SByte, SShort, SInt, SLong, SBigInt). See the corresponding regression property("MethodCall on numerics"). However, this "shadowing" is not a problem since all casting methods are implemented via Downcast, Upcast opcodes and the remaining toBytes, toBits methods are not implemented at all. In order to allow MethodCalls on numeric types in future versions the SNumericType.typeId should be changed and SGlobal.typeId should be preserved. The regression tests in property("MethodCall Codes") should pass.

  55. final def wait(): Unit

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

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

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from AnyRef

Inherited from Any

Ungrouped