Packages

  • package root
    Definition Classes
    root
  • package sigmastate
    Definition Classes
    root
  • package serialization
    Definition Classes
    sigmastate
  • object OpCodes extends ValueCodes

    The set of all possible IR graph nodes can be split in two subsets: 1) operations which may appear in ErgoTree (these are defined by OpCodes below) 2) operations which are not valid to be in ErgoTree, but serve special purposes.

    The set of all possible IR graph nodes can be split in two subsets: 1) operations which may appear in ErgoTree (these are defined by OpCodes below) 2) operations which are not valid to be in ErgoTree, but serve special purposes. (these are defined by OpCodesExtra) We can assume they are both Byte-sized codes, and store as a single byte, but as long as we can differentiate them from context (and where we cannot, we should use special encoding).

    The general extended encoding is like the following: 0-255 - range of OpCodes 256-511 - range of OpCodesExtra Thus, any code in an extended code range of 0-511 can be saved using putUShort. We use Byte to represent OpCodes and OpCodesExtra. We use Short to represent any op code from extended code range. And we use VLQ to serialize Short values of extended codes.

    Examples: 1) For validation rule CheckValidOpCode we use OpCodes range, so we use single byte encoding. 2) For CheckCostFuncOperation we use 1-511 range and extended encoding (see docs)

    Definition Classes
    serialization
  • OpCode

object OpCode extends TaggedType[Byte]

Linear Supertypes
TaggedType[Byte], LiftedOrdering, TaggedType0[Byte], AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. OpCode
  2. TaggedType
  3. LiftedOrdering
  4. TaggedType0
  5. AnyRef
  6. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Type Members

  1. type Raw = Byte
    Definition Classes
    TaggedType0
  2. abstract type Tag <: OpCode.this.type
    Definition Classes
    TaggedType0
  3. type Type = Byte with supertagged.Tag[Byte, Tag]
    Definition Classes
    TaggedType0

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def !@@[C, Tag](c: C)(implicit Tag: supertagged.utils.ETag.Aux[Tag, C, Raw], R: Replace[C, @@[Raw, Tag], Type]): Out
    Definition Classes
    TaggedType
  3. final def ##(): Int
    Definition Classes
    AnyRef → Any
  4. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  5. final def @@[C](c: C)(implicit R: Replace[C, Byte, Type]): Out
    Definition Classes
    TaggedType
  6. final def @@@[C](c: C)(implicit A: Add[C, Byte, Tag]): Out
    Definition Classes
    TaggedType
  7. final def apply[C](c: C)(implicit R: Replace[C, Byte, Type]): Out
    Definition Classes
    TaggedType
  8. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  9. def clone(): AnyRef
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native()
  10. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  11. def equals(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  12. def finalize(): Unit
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  13. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  14. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  15. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  16. final def lift[F[_]](implicit F: F[Raw]): F[Type]
    Definition Classes
    TaggedType
  17. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  18. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  19. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  20. implicit def ordering(implicit origin: Ordering[Raw]): Ordering[Type]
    Definition Classes
    LiftedOrdering
  21. final def raw(c: Type): Byte
    Definition Classes
    TaggedType
  22. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  23. def toString(): String
    Definition Classes
    AnyRef → Any
  24. final def unapply(v: Type): Option[Byte]
    Definition Classes
    TaggedType
  25. final def unsafeCast[A, B](v: A): B
    Attributes
    protected
    Definition Classes
    TaggedType0
    Annotations
    @inline()
  26. final def untag[C](c: C)(implicit R: Remove[C, Byte, Tag]): Out
    Definition Classes
    TaggedType
  27. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  28. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  29. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native()

Inherited from TaggedType[Byte]

Inherited from LiftedOrdering

Inherited from TaggedType0[Byte]

Inherited from AnyRef

Inherited from Any

Ungrouped