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 Value[SType] with NotReadyValue[SType]

    Permalink
  6. case class BlockValue(items: IndexedSeq[BlockItem], result: SValue) extends Value[SType] with 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: Seq[Value[V]], elementType: V) extends EvaluatedValue[SCollection[V]] with EvaluatedCollection[V, SCollection[V]] with Product with Serializable

    Permalink
  17. abstract class 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 Value[S] with 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. abstract class EvaluatedValue[+S <: SType] extends Value[S]

    Permalink
  24. trait FixedCostValueCompanion extends ValueCompanion

    Permalink

    Should be inherited by companion objects of operations with fixed cost kind.

  25. case class FuncValue(args: IndexedSeq[(Int, SType)], body: Value[SType]) extends Value[SFunc] with 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.

  26. type GroupElementConstant = Constant[SGroupElement.type]

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

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

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

    Permalink
  30. trait LazyCollection[V <: SType] extends Value[SCollection[V]] with 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 Value[SOption[T]] with OptionValue[T] with Product with Serializable

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

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

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

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

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

    Permalink
  39. trait NotReadyValueByteArray extends Value[SByteArray] with NotReadyValue[SByteArray]

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

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

    Permalink
  42. trait NotReadyValueLong extends Value[SLong.type] with 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. trait PerItemCostValueCompanion extends ValueCompanion

    Permalink

    Should be inherited by companion objects of operations with per-item cost kind.

  46. type SValue = Value[SType]

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

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

    Permalink
  49. 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

  50. implicit final class SigmaBooleanOps extends AnyVal

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

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

    Permalink
  53. implicit final class SigmaPropValueOps extends AnyVal

    Permalink
  54. case class SomeValue[T <: SType](x: Value[T]) extends Value[SOption[T]] with 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 Value[T] with ContextVariable[T]

    Permalink

    Reference a context variable by id.

  69. case class TaggedVariableNode[T <: SType](varId: Byte, tpe: T) extends Value[T] with 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 Value[SType] with 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 Value[T] with NotReadyValue[T] with Product with Serializable

    Permalink

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

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

    Permalink

    Base class for all ErgoTree expression nodes.

    Base class for all ErgoTree expression nodes.

    See also

    sigmastate.Values.ErgoTree

  76. trait ValueCompanion extends SigmaNodeCompanion

    Permalink

    Base class for all companion objects which are used as operation descriptors.

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 BlockItem

    Permalink
  8. object BlockValue extends ValueCompanion with Serializable

    Permalink
  9. object BoolArrayConstant

    Permalink
  10. val BoolArrayTypeCode: Byte

    Permalink
  11. object BooleanConstant

    Permalink
  12. object BoxConstant

    Permalink
  13. object ByteArrayConstant

    Permalink
  14. val ByteArrayTypeCode: Byte

    Permalink
  15. object ByteConstant

    Permalink
  16. object CollectionConstant

    Permalink
  17. object ConcreteCollection extends ValueCompanion with Serializable

    Permalink
  18. object ConcreteCollectionBooleanConstant extends ValueCompanion

    Permalink
  19. object Constant extends FixedCostValueCompanion

    Permalink
  20. object ConstantPlaceholder extends ValueCompanion with Serializable

    Permalink
  21. object ErgoTree extends Serializable

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

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

    Permalink
  24. object FunDef extends ValueCompanion

    Permalink
  25. object FuncValue extends FixedCostValueCompanion with Serializable

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

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

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

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

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

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

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

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

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

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

    Permalink
  36. object GroupElementConstant

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

    Permalink
  38. object HeaderConstant

    Permalink
  39. object IntArrayConstant

    Permalink
  40. object IntConstant

    Permalink
  41. object LongArrayConstant

    Permalink
  42. object LongConstant

    Permalink
  43. object NoneValue extends ValueCompanion with Serializable

    Permalink
  44. object PreHeaderConstant

    Permalink
  45. object ShortArrayConstant

    Permalink
  46. object ShortConstant

    Permalink
  47. object SigmaBoolean

    Permalink
  48. object SigmaPropConstant

    Permalink
  49. object SomeValue extends ValueCompanion with Serializable

    Permalink
  50. object StringConstant

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

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

    Permalink
  53. object TaggedVariable extends ValueCompanion

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

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

    Permalink
  56. object Tuple extends FixedCostValueCompanion with Serializable

    Permalink
  57. object UnitConstant extends ValueCompanion with Serializable

    Permalink
  58. object ValDef extends ValueCompanion with Serializable

    Permalink
  59. object ValUse extends FixedCostValueCompanion with Serializable

    Permalink
  60. object Value

    Permalink
  61. object ValueCompanion

    Permalink
  62. final def asInstanceOf[T0]: T0

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

    Permalink
  64. def clone(): AnyRef

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Inherited from AnyRef

Inherited from Any

Ungrouped