Package

sigmastate

eval

Permalink

package eval

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

Type Members

  1. trait BaseDigestColl extends TaggedType[Coll[Byte]]

    Permalink
  2. case class CAnyValue[A](value: A, tVal: RType[Any]) extends AnyValue with Product with Serializable

    Permalink

    Default implementation of AnyValue interface.

  3. case class CAvlTree(treeData: AvlTreeData) extends AvlTree with WrapperOf[AvlTreeData] with Product with Serializable

    Permalink

    A default implementation of AvlTree interface.

    A default implementation of AvlTree interface.

    See also

    AvlTree for detailed descriptions

  4. class CAvlTreeVerifier extends BatchAVLVerifier[Digest32, Blake2b256.type] with AvlTreeVerifier

    Permalink

    Implementation of the special.sigma.AvlTreeVerifier trait based on scorex.crypto.authds.avltree.batch.BatchAVLVerifier.

    Implementation of the special.sigma.AvlTreeVerifier trait based on scorex.crypto.authds.avltree.batch.BatchAVLVerifier.

    See also

    BatchAVLVerifier, AvlTreeVerifier

  5. case class CBigInt(wrappedValue: BigInteger) extends BigInt with WrapperOf[BigInteger] with Product with Serializable

    Permalink

    A default implementation of BigInt interface.

    A default implementation of BigInt interface.

    See also

    BigInt for detailed descriptions

  6. case class CGroupElement(wrappedValue: EcPointType) extends GroupElement with WrapperOf[ECPoint] with Product with Serializable

    Permalink

    A default implementation of GroupElement interface.

    A default implementation of GroupElement interface.

    See also

    GroupElement for detailed descriptions

  7. case class CHeader(id: Coll[Byte], version: Byte, parentId: Coll[Byte], ADProofsRoot: Coll[Byte], stateRoot: AvlTree, transactionsRoot: Coll[Byte], timestamp: Long, nBits: Long, height: Int, extensionRoot: Coll[Byte], minerPk: GroupElement, powOnetimePk: GroupElement, powNonce: Coll[Byte], powDistance: BigInt, votes: Coll[Byte]) extends Header with Product with Serializable

    Permalink

    A default implementation of Header interface.

    A default implementation of Header interface.

    See also

    Header for detailed descriptions

  8. case class CPreHeader(version: Byte, parentId: Coll[Byte], timestamp: Long, nBits: Long, height: Int, minerPk: GroupElement, votes: Coll[Byte]) extends PreHeader with Product with Serializable

    Permalink

    A default implementation of PreHeader interface.

    A default implementation of PreHeader interface.

    See also

    PreHeader for detailed descriptions

  9. case class CSigmaProp(sigmaTree: SigmaBoolean) extends SigmaProp with WrapperOf[SigmaBoolean] with Product with Serializable

    Permalink

    A default implementation of SigmaProp interface.

    A default implementation of SigmaProp interface.

    See also

    SigmaProp for detailed descriptions

  10. class CompiletimeIRContext extends Scalan with IRContext

    Permalink

    IR context to be used by script development tools to compile ErgoScript into ErgoTree bytecode.

  11. case class CostingBox(ebox: ErgoBox) extends Box with WrapperOf[ErgoBox] with Product with Serializable

    Permalink

    A default implementation of Box interface.

    A default implementation of Box interface.

    See also

    Box for detailed descriptions

  12. case class CostingDataContext(_dataInputs: Coll[Box], headers: Coll[Header], preHeader: PreHeader, inputs: Coll[Box], outputs: Coll[Box], height: Int, selfBox: Box, selfIndex: Int, lastBlockUtxoRootHash: AvlTree, _minerPubKey: Coll[Byte], vars: Coll[AnyValue], activatedScriptVersion: Byte, currentErgoTreeVersion: Byte) extends Context with Product with Serializable

    Permalink

    A default implementation of Context interface.

    A default implementation of Context interface.

    See also

    Context for detailed descriptions

  13. class CostingSigmaDslBuilder extends SigmaDslBuilder

    Permalink

    A default implementation of SigmaDslBuilder interface.

    A default implementation of SigmaDslBuilder interface.

    See also

    SigmaDslBuilder for detailed descriptions

  14. type Digest32Coll = Coll[Byte] with Tag[Coll[Byte], eval.Digest32Coll.Tag]

    Permalink
  15. type DigestColl = Coll[Byte] with Tag[Coll[Byte], eval.BaseDigestColl.Tag]

    Permalink
  16. trait GraphBuilding extends Scalan with SigmaLibrary

    Permalink

    Perform translation of typed expression given by Value to a graph in IRContext.

    Perform translation of typed expression given by Value to a graph in IRContext. Which be than be translated to ErgoTree by using TreeBuilding.

    Common Sub-expression Elimination (CSE) optimization is performed which reduces serialized size of the resulting ErgoTree. CSE however means the original structure of source code may not be preserved in the resulting ErgoTree.

  17. trait IRContext extends Scalan with TreeBuilding with GraphBuilding

    Permalink

    Main interface of graph IR context which contain both GraphBuilding and TreeBuilding methods.

    Main interface of graph IR context which contain both GraphBuilding and TreeBuilding methods. It is not used in v5.0 interpreter and thus not part of consensus.

    See also

    RuntimeIRContext, CompiletimeIRContext

  18. final class InvalidType extends Exception

    Permalink
  19. class Profiler extends AnyRef

    Permalink

    A simple profiler to measure average execution times of ErgoTree operations.

  20. class RuntimeIRContext extends Scalan with IRContext

    Permalink

    IR context to be used by blockchain nodes to validate transactions.

  21. class StatCollection[K, V] extends AnyRef

    Permalink

    Collects profiler measured data points associated with keys.

    Collects profiler measured data points associated with keys. Group points by key into StatHolders.

    K

    type of the mapping key

    V

    type of the measured numeric value

  22. abstract class StatHolder[V] extends AnyRef

    Permalink

    Holds a series of profile measurements associated with a key.

    Holds a series of profile measurements associated with a key. Allows to compute simple statistic data.

    V

    type of the measured numeric value

  23. trait TreeBuilding extends Scalan with SigmaLibrary

    Permalink

    Implementation of IR-graph to ErgoTree expression translation.

    Implementation of IR-graph to ErgoTree expression translation. This, in a sense, is inverse to GraphBuilding, however roundtrip identity is not possible, because one of the goals of Tree -> Graph -> Tree translation is to perform size optimization of the resulting tree.

    The main optimizations that are achieved by Tree -> Graph -> Tree process: 1) Common Subexpression Elimination which is done in GraphBuilding 2) ValDef introduction minimization, which is done in TreeBuilding. The ValDef is introduced only for graph nodes (i.e. subcomputations) that have more than 1 usage.

    See also

    buildTree method

  24. trait WrapperOf[T] extends AnyRef

    Permalink

    Interface implmented by wrappers to provide access to the underlying wrapped value.

Value Members

  1. object CAnyValue extends Serializable

    Permalink
  2. object CFunc

    Permalink

    This class represents context variable and register value of a functional type A => B.

    This class represents context variable and register value of a functional type A => B. When variable or register is accessed using getVar[A => B](id).get or box.getReg[A => B].get an instance of this class is returned.

    It internally transforms a given tree into executable function. This it similar to what happens during validation of propositions in the input boxes: - size check of underlying ErgoTree against limits - construction of calcF and costF graphs, both are stored together with resulting function. - check the types of calcF graph to be compatible with expected types A and B If anything goes wrong, this operation fails and if it is used in the script, the script also fails.

    When f is obtained as val f = getVar[Int => Int](id).get then any application f(x) involves size estimation using underlying costF(x).

  3. object CHeader extends Serializable

    Permalink
  4. val Colls: CollBuilder

    Permalink

    The primary reference to global Coll operations.

    The primary reference to global Coll operations. Can be used to create collections from Array etc.

    See also

    CollBuilder

  5. object CostingBox extends Serializable

    Permalink
  6. object CostingSigmaDslBuilder extends CostingSigmaDslBuilder

    Permalink

    Default singleton instance of Global object, which implements global ErgoTree functions.

  7. object Digest32Coll extends BaseDigestColl

    Permalink
  8. implicit val Digest32CollRType: RType[Digest32Coll]

    Permalink
  9. implicit val Digest32RType: RType[Digest32]

    Permalink
  10. object Evaluation

    Permalink

    Helper methods used as part of ErgoTree evaluation.

  11. object Extensions

    Permalink
  12. object NumericOps

    Permalink
  13. object OrderingOps

    Permalink
  14. val SigmaDsl: CostingSigmaDslBuilder.type

    Permalink

    The primary reference to Global instance of SigmaDsl.

    The primary reference to Global instance of SigmaDsl. Besides operations of SigmaDslBuilder class, this instance also contains methods, which are not available in Dsl code, and which are not in SigmaDslBuilder interface. For example methods like Box, toErgoBox are available here, but not available in Dsl.

    See also

    SigmaDslBuilder

  15. def TupleColl(items: Any*): Coll[Any]

    Permalink

    Constructor of tuple value with more than 2 items.

    Constructor of tuple value with more than 2 items. Such long tuples are represented as Coll[Any]. This representaion of tuples is different from representation of pairs (x, y), where Tuple2 type is used instead of Coll.

  16. implicit def avlTreeDataToAvlTree(p: AvlTreeData): AvlTree

    Permalink
  17. implicit def avlTreeToAvlTreeData(p: AvlTree): AvlTreeData

    Permalink
  18. implicit def bigIntToBigInteger(bi: BigInt): BigInteger

    Permalink
  19. implicit def bigIntegerToBigInt(bi: BigInteger): BigInt

    Permalink

    Implicit conversions between Dsl type and the type wrapped by the corresponding type Dsl type.

    Implicit conversions between Dsl type and the type wrapped by the corresponding type Dsl type. Here BigInt is Dsl type and BigInteger is wrapped type.

    See also

    special.sigma.CBigInt

  20. implicit def boxToErgoBox(p: Box): ErgoBox

    Permalink
  21. implicit def ecPointToGroupElement(p: EcPointType): GroupElement

    Permalink
  22. implicit def ergoBoxToBox(p: ErgoBox): Box

    Permalink
  23. implicit def groupElementToECPoint(p: GroupElement): EcPointType

    Permalink
  24. implicit def sigmaBooleanToSigmaProp(p: SigmaBoolean): SigmaProp

    Permalink
  25. implicit def sigmaPropToSigmaBoolean(p: SigmaProp): SigmaBoolean

    Permalink

Inherited from AnyRef

Inherited from Any

Ungrouped