Object

sigmastate

Values

Related Doc: package sigmastate

Permalink

object Values

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

Type Members

  1. type AvlTreeConstant = Constant[SAvlTree.type]

    Permalink
  2. type AvlTreeValue = Value[SAvlTree.type]

    Permalink
  3. type BigIntConstant = Constant[SBigInt.type]

    Permalink
  4. type BigIntValue = Value[SBigInt.type]

    Permalink
  5. sealed trait BlockItem extends NotReadyValue[SType]

    Permalink
  6. case class BlockValue(items: IndexedSeq[BlockItem], result: SValue) extends NotReadyValue[SType] with Product with Serializable

    Permalink

    The order of ValDefs in the block is used to assign ids to ValUse(id) nodes For all i: items(i).id == {number of ValDefs preceded in a graph} with respect to topological order.

    The order of ValDefs in the block is used to assign ids to ValUse(id) nodes For all i: items(i).id == {number of ValDefs preceded in a graph} with respect to topological order. Specific topological order doesn't really matter, what is important is to preserve semantic linkage between ValUse(id) and ValDef with the corresponding id. This convention allow to valid serializing ids because we always serializing and deserializing in a fixed well defined order.

  7. type BoolValue = Value[SBoolean.type]

    Permalink
  8. implicit final class BoolValueOps extends AnyVal

    Permalink
  9. type BooleanConstant = Constant[SBoolean.type]

    Permalink
  10. type BoxConstant = Constant[SBox.type]

    Permalink
  11. type BoxValue = Value[SBox.type]

    Permalink
  12. type ByteConstant = Constant[SByte.type]

    Permalink
  13. type ByteValue = Value[SByte.type]

    Permalink
  14. type CollectionConstant[T <: SType] = Constant[SCollection[T]]

    Permalink
  15. implicit final class CollectionOps[T <: SType] extends AnyVal

    Permalink
  16. case class ConcreteCollection[V <: SType](items: IndexedSeq[Value[V]], elementType: V) extends EvaluatedCollection[V, SCollection[V]] with Product with Serializable

    Permalink
  17. trait Constant[+S <: SType] extends EvaluatedValue[S]

    Permalink
  18. case class ConstantNode[S <: SType](value: S.WrappedType, tpe: S) extends Constant[S] with Product with Serializable

    Permalink
  19. case class ConstantPlaceholder[S <: SType](id: Int, tpe: S) extends Value[S] with Product with Serializable

    Permalink

    Placeholder for a constant in ErgoTree.

    Placeholder for a constant in ErgoTree. Zero based index in ErgoTree.constants array.

  20. trait ContextVariable[S <: SType] extends NotReadyValue[S]

    Permalink

    Base class for references to context variables.

  21. case class ErgoTree extends Product with Serializable

    Permalink

    The root of ErgoScript IR.

    The root of ErgoScript IR. Serialized instances of this class are self sufficient and can be passed around. ErgoTreeSerializer defines top-level serialization format of the scripts. The interpretation of the byte array depend on the first header byte, which uses VLQ encoding up to 30 bits. Currently we define meaning for only first byte, which may be extended in future versions. 7 6 5 4 3 2 1 0 ------------------------- | | | | | | | | | ------------------------- Bit 7 == 1 if the header contains more than 1 byte (default == 0) Bit 6 - reserved for GZIP compression (should be 0) Bit 5 == 1 - reserved for context dependent costing (should be = 0) Bit 4 == 1 if constant segregation is used for this ErgoTree (default = 0) (see https://github.com/ScorexFoundation/sigmastate-interpreter/issues/264) Bit 3 == 1 if size of the whole tree is serialized after the header byte (default = 0) Bits 2-0 - language version (current version == 0)

    Currently we don't specify interpretation for the second and other bytes of the header. We reserve the possibility to extend header by using Bit 7 == 1 and chain additional bytes as in VLQ. Once the new bytes are required, a new version of the language should be created and implemented. That new language will give an interpretation for the new bytes.

    Consistency between fields is ensured by private constructor and factory methods in ErgoTree object. For performance reasons, ErgoTreeSerializer can be configured to perform additional constant segregation. In such a case after deserialization there may be more constants segregated. This is done for example to support caching optimization described in #264 mentioned above.

    The default behavior of ErgoTreeSerializer is to preserve original structure of ErgoTree and check consistency. In case of any inconsistency the serializer throws exception.

  22. trait EvaluatedCollection[T <: SType, C <: SCollection[T]] extends EvaluatedValue[C]

    Permalink
  23. trait EvaluatedValue[+S <: SType] extends Value[S]

    Permalink
  24. case class FuncValue(args: IndexedSeq[(Int, SType)], body: Value[SType]) extends NotReadyValue[SFunc] with Product with Serializable

    Permalink

    args

    parameters list, where each parameter has an id and a type.

    body

    expression, which refers function parameters with ValUse.

  25. type GroupElementConstant = Constant[SGroupElement.type]

    Permalink
  26. type GroupElementValue = Value[SGroupElement.type]

    Permalink
  27. type Idn = String

    Permalink
  28. type IntConstant = Constant[SInt.type]

    Permalink
  29. type IntValue = Value[SInt.type]

    Permalink
  30. trait LazyCollection[V <: SType] extends NotReadyValue[SCollection[V]]

    Permalink
  31. type LongConstant = Constant[SLong.type]

    Permalink
  32. type LongValue = Value[SLong.type]

    Permalink
  33. case class NoneValue[T <: SType](elemType: T) extends OptionValue[T] with Product with Serializable

    Permalink
  34. trait NotReadyValue[S <: SType] extends Value[S]

    Permalink
  35. trait NotReadyValueAvlTree extends NotReadyValue[SAvlTree.type]

    Permalink
  36. trait NotReadyValueBigInt extends NotReadyValue[SBigInt.type]

    Permalink
  37. trait NotReadyValueBoolean extends NotReadyValue[SBoolean.type]

    Permalink
  38. trait NotReadyValueBox extends NotReadyValue[SBox.type]

    Permalink
  39. trait NotReadyValueByteArray extends NotReadyValue[SByteArray]

    Permalink
  40. trait NotReadyValueGroupElement extends NotReadyValue[SGroupElement.type]

    Permalink
  41. trait NotReadyValueInt extends NotReadyValue[SInt.type]

    Permalink
  42. trait NotReadyValueLong extends NotReadyValue[SLong.type]

    Permalink
  43. trait OptionValue[T <: SType] extends Value[SOption[T]]

    Permalink
  44. implicit final class OptionValueOps[T <: SType] extends AnyVal

    Permalink
  45. type SValue = Value[SType]

    Permalink
  46. type ShortConstant = Constant[SShort.type]

    Permalink
  47. type ShortValue = Value[SShort.type]

    Permalink
  48. trait SigmaBoolean extends AnyRef

    Permalink

    Algebraic data type of sigma proposition expressions.

    Algebraic data type of sigma proposition expressions. Values of this type are used as values of SigmaProp type of SigmaScript and SigmaDsl

  49. implicit final class SigmaBooleanOps extends AnyVal

    Permalink
  50. type SigmaPropConstant = Constant[SSigmaProp.type]

    Permalink
  51. type SigmaPropValue = Value[SSigmaProp.type]

    Permalink
  52. implicit final class SigmaPropValueOps extends AnyVal

    Permalink
  53. type SigmaTree = Tree[SigmaNode, SValue]

    Permalink
  54. case class SomeValue[T <: SType](x: Value[T]) extends OptionValue[T] with Product with Serializable

    Permalink
  55. type StringConstant = Constant[SString.type]

    Permalink
  56. type StringValue = Value[SString.type]

    Permalink
  57. type TaggedAvlTree = TaggedVariable[SAvlTree.type]

    Permalink
  58. type TaggedBigInt = TaggedVariable[SBigInt.type]

    Permalink
  59. type TaggedBoolean = TaggedVariable[SBoolean.type]

    Permalink
  60. type TaggedBox = TaggedVariable[SBox.type]

    Permalink
  61. type TaggedByte = TaggedVariable[SByte.type]

    Permalink
  62. type TaggedByteArray = TaggedVariable[SCollection[SByte.type]]

    Permalink
  63. type TaggedGroupElement = TaggedVariable[SGroupElement.type]

    Permalink
  64. type TaggedInt = TaggedVariable[SInt.type]

    Permalink
  65. type TaggedLong = TaggedVariable[SLong.type]

    Permalink
  66. type TaggedShort = TaggedVariable[SShort.type]

    Permalink
  67. type TaggedSigmaProp = TaggedVariable[SSigmaProp.type]

    Permalink
  68. trait TaggedVariable[T <: SType] extends ContextVariable[T]

    Permalink

    Reference a context variable by id.

  69. case class TaggedVariableNode[T <: SType](varId: Byte, tpe: T) extends TaggedVariable[T] with Product with Serializable

    Permalink
  70. case class Tuple(items: IndexedSeq[Value[SType]]) extends EvaluatedValue[STuple] with EvaluatedCollection[SAny.type, STuple] with Product with Serializable

    Permalink
  71. case class UnitConstant() extends EvaluatedValue[SUnit.type] with Product with Serializable

    Permalink
  72. case class UnparsedErgoTree(bytes: WrappedArray[Byte], error: ValidationException) extends Product with Serializable

    Permalink

    This is alternative representation of ErgoTree expression when it cannot be parsed due to error.

    This is alternative representation of ErgoTree expression when it cannot be parsed due to error. This is used by the nodes running old versions of code to recognize soft-fork conditions and skip validation of box propositions which are unparsable.

  73. case class ValDef(id: Int, tpeArgs: Seq[STypeVar], rhs: SValue) extends BlockItem with Product with Serializable

    Permalink

    IR node for let-bound expressions let x = rhs which is ValDef, or let f[T] = rhs which is FunDef.

    IR node for let-bound expressions let x = rhs which is ValDef, or let f[T] = rhs which is FunDef. These nodes are used to represent ErgoTrees after common sub-expression elimination. This representation is more compact in serialized form.

    id

    unique identifier of the variable in the current scope.

  74. case class ValUse[T <: SType](valId: Int, tpe: T) extends NotReadyValue[T] with Product with Serializable

    Permalink

    Special node which represents a reference to ValDef in was introduced as result of CSE.

  75. trait Value[+S <: SType] extends SigmaNode

    Permalink
  76. trait ValueCompanion extends SigmaNodeCompanion

    Permalink

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. object AvlTreeConstant

    Permalink
  5. object BigIntArrayConstant

    Permalink
  6. object BigIntConstant

    Permalink
  7. object BlockValue extends ValueCompanion with Serializable

    Permalink
  8. object BoolArrayConstant

    Permalink
  9. val BoolArrayTypeCode: Byte

    Permalink
  10. object BooleanConstant

    Permalink
  11. object BoxConstant

    Permalink
  12. object ByteArrayConstant

    Permalink
  13. val ByteArrayTypeCode: Byte

    Permalink
  14. object ByteConstant

    Permalink
  15. object CollectionConstant

    Permalink
  16. object ConcreteCollection extends ValueCompanion with Serializable

    Permalink
  17. object ConcreteCollectionBooleanConstant extends ValueCompanion

    Permalink
  18. object Constant extends ValueCompanion

    Permalink
  19. object ConstantPlaceholder extends ValueCompanion with Serializable

    Permalink
  20. object ErgoTree extends Serializable

    Permalink
  21. object FalseLeaf extends ConstantNode[SBoolean.type] with ValueCompanion

    Permalink
  22. val FalseSigmaProp: Constant[SSigmaProp.type]

    Permalink
  23. object FunDef extends ValueCompanion

    Permalink
  24. object FuncValue extends ValueCompanion with Serializable

    Permalink
  25. def GetVarBigInt(varId: Byte): GetVar[SBigInt.type]

    Permalink
  26. def GetVarBoolean(varId: Byte): GetVar[SBoolean.type]

    Permalink
  27. def GetVarBox(varId: Byte): GetVar[SBox.type]

    Permalink
  28. def GetVarByte(varId: Byte): GetVar[SByte.type]

    Permalink
  29. def GetVarByteArray(varId: Byte): GetVar[SCollection[SByte.type]]

    Permalink
  30. def GetVarInt(varId: Byte): GetVar[SInt.type]

    Permalink
  31. def GetVarIntArray(varId: Byte): GetVar[SCollection[SInt.type]]

    Permalink
  32. def GetVarLong(varId: Byte): GetVar[SLong.type]

    Permalink
  33. def GetVarShort(varId: Byte): GetVar[SShort.type]

    Permalink
  34. def GetVarSigmaProp(varId: Byte): GetVar[SSigmaProp.type]

    Permalink
  35. object GroupElementConstant

    Permalink
  36. object GroupGenerator extends EvaluatedValue[SGroupElement.type] with ValueCompanion with Product with Serializable

    Permalink
  37. object HeaderConstant

    Permalink
  38. object IntArrayConstant

    Permalink
  39. object IntConstant

    Permalink
  40. object LongArrayConstant

    Permalink
  41. object LongConstant

    Permalink
  42. object NoneValue extends ValueCompanion with Serializable

    Permalink
  43. object PreHeaderConstant

    Permalink
  44. object ShortArrayConstant

    Permalink
  45. object ShortConstant

    Permalink
  46. object SigmaBoolean

    Permalink
  47. object SigmaPropConstant

    Permalink
  48. object SomeValue extends ValueCompanion with Serializable

    Permalink
  49. object StringConstant

    Permalink
  50. def TaggedAvlTree(id: Byte): Value[SAvlTree.type]

    Permalink
  51. def TaggedBox(id: Byte): Value[SBox.type]

    Permalink
  52. object TaggedVariable extends ValueCompanion

    Permalink
  53. object TrueLeaf extends ConstantNode[SBoolean.type] with ValueCompanion

    Permalink
  54. val TrueSigmaProp: Constant[SSigmaProp.type]

    Permalink
  55. object Tuple extends ValueCompanion with Serializable

    Permalink
  56. object UnitConstant extends ValueCompanion with Serializable

    Permalink
  57. object ValDef extends ValueCompanion with Serializable

    Permalink
  58. object ValUse extends ValueCompanion with Serializable

    Permalink
  59. object Value

    Permalink
  60. object ValueCompanion

    Permalink
  61. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  62. implicit def boolToSigmaProp(b: BoolValue): SigmaPropValue

    Permalink
  63. def clone(): AnyRef

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

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

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

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

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

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

    Permalink
    Definition Classes
    Any
  70. final def ne(arg0: AnyRef): Boolean

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

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

    Permalink
    Definition Classes
    AnyRef
  73. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  74. def toString(): String

    Permalink
    Definition Classes
    AnyRef → Any
  75. final def wait(): Unit

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

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

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

Inherited from AnyRef

Inherited from Any

Ungrouped