Packages

class ErgoInterpreter extends ErgoLikeInterpreter

ErgoTree language interpreter, Ergo version. In addition to ErgoLikeInterpreter, it contains rules for expired boxes spending validation.

Linear Supertypes
ErgoLikeInterpreter, Interpreter, ScorexLogging, StrictLogging, AnyRef, Any
Known Subclasses
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. ErgoInterpreter
  2. ErgoLikeInterpreter
  3. Interpreter
  4. ScorexLogging
  5. StrictLogging
  6. AnyRef
  7. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new ErgoInterpreter(params: ErgoLikeParameters)(implicit IR: IRContext)

    params

    - current values of adjustable blockchain settings

Type Members

  1. type CTX = ErgoLikeContext
    Definition Classes
    ErgoInterpreter → ErgoLikeInterpreter → Interpreter
  2. type ProofT = UncheckedTree
    Definition Classes
    Interpreter

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. val CostPerByteDeserialized: Int
    Definition Classes
    Interpreter
  5. val CostPerTreeByte: Int
    Definition Classes
    Interpreter
  6. implicit val IR: IRContext
    Definition Classes
    ErgoLikeInterpreter → Interpreter
  7. def addCryptoCost(jitRes: JitReductionResult, costLimit: Long): Long
    Attributes
    protected
    Definition Classes
    Interpreter
  8. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  9. def checkExpiredBox(box: ErgoBox, output: ErgoBoxCandidate, currentHeight: ErgoLikeContext.Height): Boolean

    Checks that expired box is spent in a proper way

    Checks that expired box is spent in a proper way

    box

    - box being spent

    output

    - newly created box when storage fee covered, otherwise any output box

    currentHeight

    - current height of the blockchain (at the moment of spending)

    returns

    whether the box is spent properly according to the storage fee rule

    Attributes
    protected
  10. def checkSoftForkCondition(ergoTree: ErgoTree, context: CTX): Option[VerificationResult]
    Attributes
    protected
    Definition Classes
    Interpreter
  11. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native()
  12. def deserializeMeasured(context: CTX, scriptBytes: Array[Byte]): (CTX, Value[SType])
    Attributes
    protected
    Definition Classes
    Interpreter
  13. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  14. def equals(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  15. def evalSettings: EvalSettings
    Attributes
    protected
    Definition Classes
    Interpreter
  16. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  17. def fullReduction(ergoTree: ErgoTree, ctx: CTX): FullReductionResult
    Definition Classes
    Interpreter
  18. def fullReduction(ergoTree: ErgoTree, ctx: CTX, env: ScriptEnv): FullReductionResult
    Definition Classes
    Interpreter
  19. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  20. def getEvaluationMode(context: CTX): EvaluationMode
    Attributes
    protected
    Definition Classes
    Interpreter
  21. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  22. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  23. def log: Logger
    Attributes
    protected
    Definition Classes
    ScorexLogging
    Annotations
    @inline()
  24. def logMessage(msg: String): Unit
    Attributes
    protected
    Definition Classes
    Interpreter
  25. val logger: Logger
    Attributes
    protected
    Definition Classes
    StrictLogging
  26. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  27. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  28. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  29. val precompiledScriptProcessor: PrecompiledScriptProcessor
    Definition Classes
    ErgoLikeInterpreter → Interpreter
  30. def propositionFromErgoTree(ergoTree: ErgoTree, context: CTX): SigmaPropValue
    Attributes
    protected
    Definition Classes
    Interpreter
  31. def reduceToCrypto(context: CTX, env: ScriptEnv, exp: Value[SType]): Try[AotReductionResult]
    Attributes
    protected
    Definition Classes
    Interpreter
  32. def reduceToCryptoJITC(context: CTX, env: ScriptEnv, exp: SigmaPropValue): Try[JitReductionResult]
    Attributes
    protected
    Definition Classes
    Interpreter
  33. def substDeserialize(context: CTX, updateContext: (CTX) ⇒ Unit, node: SValue): Option[SValue]
    Definition Classes
    ErgoLikeInterpreter → Interpreter
  34. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  35. def toString(): String
    Definition Classes
    AnyRef → Any
  36. def verify(env: ScriptEnv, exp: ErgoTree, context: CTX, proof: Array[Byte], message: Array[Byte]): Try[VerificationResult]

    Checks that given exp evaluates to true.

    Checks that given exp evaluates to true.

    env

    - environment to use during expression evaluation

    exp

    - expression to check

    context

    - expression evaluation context

    proof

    - cryptographic proof

    message

    - message

    Definition Classes
    ErgoInterpreter → Interpreter
  37. def verify(ergoTree: ErgoTree, context: CTX, proof: ProofT, message: Array[Byte]): Try[VerificationResult]
    Definition Classes
    Interpreter
  38. def verify(env: ScriptEnv, ergoTree: ErgoTree, context: CTX, proverResult: ProverResult, message: Array[Byte]): Try[VerificationResult]
    Definition Classes
    Interpreter
  39. def verify(ergoTree: ErgoTree, context: CTX, proverResult: ProverResult, message: Array[Byte]): Try[VerificationResult]
    Definition Classes
    Interpreter
  40. def verifySignature(sigmaTree: SigmaBoolean, message: Array[Byte], signature: Array[Byte])(implicit E: ErgoTreeEvaluator): Boolean
    Definition Classes
    Interpreter
  41. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  42. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  43. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native()

Inherited from ErgoLikeInterpreter

Inherited from Interpreter

Inherited from ScorexLogging

Inherited from StrictLogging

Inherited from AnyRef

Inherited from Any

Ungrouped