class ErgoInterpreter extends ErgoLikeInterpreter with ScorexLogging
ErgoTree language interpreter, Ergo version. In addition to ErgoLikeInterpreter, it contains rules for expired boxes spending validation.
- Alphabetic
- By Inheritance
- ErgoInterpreter
- ScorexLogging
- StrictLogging
- ErgoLikeInterpreter
- Interpreter
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Instance Constructors
- new ErgoInterpreter(params: ErgoLikeParameters)
- params
- current values of adjustable blockchain settings
Type Members
- type CTX = ErgoLikeContext
- Definition Classes
- ErgoInterpreter → ErgoLikeInterpreter → Interpreter
- type ProofT = UncheckedTree
- Definition Classes
- Interpreter
Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##: Int
- Definition Classes
- AnyRef → Any
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- val CostPerByteDeserialized: Int
- Definition Classes
- Interpreter
- val CostPerTreeByte: Int
- Definition Classes
- Interpreter
- def addCryptoCost(reductionRes: SigmaBoolean, baseCost: Long, costLimit: Long): Long
- Attributes
- protected
- Definition Classes
- Interpreter
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- 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
- def checkSoftForkCondition(ergoTree: ErgoTree, context: CTX): Option[VerificationResult]
- Attributes
- protected
- Definition Classes
- Interpreter
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native()
- def deserializeMeasured(context: CTX, scriptBytes: Array[Byte]): (CTX, Value[SType])
- Attributes
- protected
- Definition Classes
- Interpreter
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- def evalSettings: EvalSettings
- Attributes
- protected
- Definition Classes
- Interpreter
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable])
- def fullReduction(ergoTree: ErgoTree, ctx: CTX): ReductionResult
- Definition Classes
- Interpreter
- def fullReduction(ergoTree: ErgoTree, ctx: CTX, env: ScriptEnv): ReductionResult
- Definition Classes
- Interpreter
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- def log: Logger
- Attributes
- protected
- Definition Classes
- ScorexLogging
- Annotations
- @inline()
- def logMessage(msg: String, t: Throwable): Unit
- Attributes
- protected
- Definition Classes
- ErgoInterpreter → Interpreter
- def logMessage(msg: String): Unit
Override default logging for all Ergo interpreters.
Override default logging for all Ergo interpreters.
- Attributes
- protected
- Definition Classes
- ErgoInterpreter → Interpreter
- val logger: Logger
- Attributes
- protected
- Definition Classes
- StrictLogging
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- def propositionFromErgoTree(ergoTree: ErgoTree, context: CTX): SigmaPropValue
- Attributes
- protected
- Definition Classes
- Interpreter
- def reduceToCryptoJITC(context: CTX, env: ScriptEnv, exp: SigmaPropValue): Try[ReductionResult]
- Attributes
- protected
- Definition Classes
- Interpreter
- def substDeserialize(context: CTX, updateContext: (CTX) => Unit, node: SValue): Option[SValue]
- Definition Classes
- ErgoLikeInterpreter → Interpreter
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toString(): String
- Definition Classes
- AnyRef → Any
- 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
- def verify(ergoTree: ErgoTree, context: CTX, proof: ProofT, message: Array[Byte]): Try[VerificationResult]
- Definition Classes
- Interpreter
- def verify(env: ScriptEnv, ergoTree: ErgoTree, context: CTX, proverResult: ProverResult, message: Array[Byte]): Try[VerificationResult]
- Definition Classes
- Interpreter
- def verify(ergoTree: ErgoTree, context: CTX, proverResult: ProverResult, message: Array[Byte]): Try[VerificationResult]
- Definition Classes
- Interpreter
- def verifySignature(sigmaTree: SigmaBoolean, message: Array[Byte], signature: Array[Byte])(implicit E: ErgoTreeEvaluator): Boolean
- Definition Classes
- Interpreter
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()