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. class AvlTreeVerifier extends BatchAVLVerifier[Digest32, Blake2b256.type]

    Implements operations of AVL tree verifier based on scorex.crypto.authds.avltree.batch.BatchAVLVerifier.

    Implements operations of AVL tree verifier based on scorex.crypto.authds.avltree.batch.BatchAVLVerifier.

    See also

    BatchAVLVerifier

  2. trait BaseDigestColl extends TaggedType[Coll[Byte]]
  3. case class CAnyValue[A](value: A, tVal: RType[Any]) extends AnyValue with Product with Serializable

    Default implementation of AnyValue interface.

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

    A default implementation of AvlTree interface.

    A default implementation of AvlTree interface.

    See also

    AvlTree for detailed descriptions

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

    A default implementation of BigInt interface.

    A default implementation of BigInt interface.

    See also

    BigInt for detailed descriptions

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

    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

    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

    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

    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

    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

    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

    A default implementation of Context interface.

    A default implementation of Context interface.

    See also

    Context for detailed descriptions

  13. class CostingSigmaDslBuilder extends SigmaDslBuilder

    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]
  15. trait GraphBuilding extends Scalan with SigmaLibrary

    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.

  16. trait IRContext extends Scalan with TreeBuilding with GraphBuilding

    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

  17. final class InvalidType extends Exception
  18. class Profiler extends AnyRef

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

  19. class RuntimeIRContext extends Scalan with IRContext

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

  20. trait SigmaLibrary extends Scalan with Library with WrappersModule with SigmaDslModule

    Main trait which represents sigma operations in graph IR cake.

  21. class StatCollection[K, V] extends AnyRef

    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

    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

    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

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

Value Members

  1. implicit val Digest32CollRType: RType[Digest32Coll]
  2. val SigmaDsl: CostingSigmaDslBuilder.type

    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

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

    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.

  4. implicit def avlTreeDataToAvlTree(p: AvlTreeData): AvlTree
  5. implicit def avlTreeToAvlTreeData(p: AvlTree): AvlTreeData
  6. implicit def bigIntToBigInteger(bi: BigInt): BigInteger
  7. implicit def bigIntegerToBigInt(bi: BigInteger): BigInt

    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

    sigma.CBigInt

  8. implicit def boxToErgoBox(p: Box): ErgoBox
  9. implicit def ecPointToGroupElement(p: EcPointType): GroupElement
  10. implicit def ergoBoxToBox(p: ErgoBox): Box
  11. implicit def groupElementToECPoint(p: GroupElement): EcPointType
  12. implicit def sigmaBooleanToSigmaProp(p: SigmaBoolean): SigmaProp
  13. implicit def sigmaPropToSigmaBoolean(p: SigmaProp): SigmaBoolean
  14. object AvlTreeVerifier
  15. object CAnyValue extends Serializable
  16. object CFunc

    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).

  17. object CHeader extends Serializable
  18. object CostingBox extends Serializable
  19. object CostingSigmaDslBuilder extends CostingSigmaDslBuilder

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

  20. object Digest32Coll extends BaseDigestColl
  21. object Evaluation

    Helper methods used as part of ErgoTree evaluation.

  22. object Extensions
  23. object NumericOps
  24. object OrderingOps

Inherited from AnyRef

Inherited from Any

Ungrouped