sigma
package sigma
The following implicit values are used as type descriptors of all the predefined Sigma types.
- See also
RType class
- Alphabetic
- By Inheritance
- sigma
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Type Members
-
trait
AnyValue extends AnyRef
Represents any value paired with type descriptor.
-
trait
AvlTree extends AnyRef
Type of data which efficiently authenticates potentially huge dataset having key-value dictionary interface.
Type of data which efficiently authenticates potentially huge dataset having key-value dictionary interface. Only root hash of dynamic AVL+ tree, tree height, key length, optional value length, and access flags are stored in an instance of the datatype.
Please note that standard hash function from
scorex.crypto.hash
is used, and height is stored along with root hash of the tree, thusdigest
size is always CryptoConstants.hashLength + 1 bytes.This interface is used as runtime representation of the AvlTree type of ErgoTree.
-
trait
BigInt extends AnyRef
All
modQ
operations assume that Q is a global constant (an order of the only one cryptographically strong group which is used for all cryptographic operations).All
modQ
operations assume that Q is a global constant (an order of the only one cryptographically strong group which is used for all cryptographic operations). So it is globally and implicitly used in all methods. -
trait
Box extends AnyRef
Runtime representation of Ergo boxes used during execution of ErgoTree operations.
Runtime representation of Ergo boxes used during execution of ErgoTree operations.
- See also
-
trait
Coll[A] extends AnyRef
Indexed (zero-based) collection of elements of type
A
.Indexed (zero-based) collection of elements of type
A
. NOTE: declaring itabstract class
makes some performance benefits, but doesn't work well with specialization. -
trait
CollBuilder extends AnyRef
Interface to access global collection methods.
Interface to access global collection methods. See default implementation in CollOverArrayBuilder.
-
trait
Colls extends Base
Staged version of collection interfaces which is used in graph-based IR to represent methods of Coll and CollBuilder.
Staged version of collection interfaces which is used in graph-based IR to represent methods of Coll and CollBuilder. Each method of Coll and CollBuilder in Colls corresponds to a method of the original non-staged class sigma.Coll and sigma.CollBuilder. The semantics of each method is the same as in the original class, please look there for details.
- trait CollsModule extends Scalan with CollsDefs
-
trait
Context extends AnyRef
Runtime representation of Context ErgoTree type.
Runtime representation of Context ErgoTree type. Represents data available in Sigma language using
CONTEXT
global variable. -
sealed abstract
class
Environment extends AnyRef
Describes the current execution environment.
-
trait
GroupElement extends AnyRef
Base class for points on elliptic curves.
-
trait
Header extends AnyRef
Represents data of the block header available in Sigma propositions.
-
trait
PairColl[L, R] extends Coll[(L, R)]
Base trait for specialized (Structure-Of-Arrays) representation of collection of pairs (i.e.
Base trait for specialized (Structure-Of-Arrays) representation of collection of pairs (i.e.
Coll[(A, B)]
). Some instances ofColl[(A, B)]
may be instances of this trait, but it is NOT guaranteed, since some of them may be instances ofCollOverArray[(A, B)]
. -
trait
PreHeader extends AnyRef
Only header fields that can be predicted by a miner.
-
sealed
trait
RuntimePlatform extends AnyRef
Descriptor of a runtime platform.
Descriptor of a runtime platform. Can be used to conditionally execute code.
-
trait
SigmaContract extends AnyRef
Shortcut declarations for methods of global object (aka SigmaDslBuilder).
Shortcut declarations for methods of global object (aka SigmaDslBuilder). Every methods delegates to the corresponding method of
builder
, look there for details. - trait SigmaDsl extends Base
-
trait
SigmaDslBuilder extends AnyRef
Runtime representation of SGlobal ErgoTree type.
Runtime representation of SGlobal ErgoTree type. The only instance of SGlobal type can be referenced as
Global
variable in ErgoScript. It is represented as org.ergoplatform.Global node of ErgoTree, which evaluates to the default singleton instance of this interface.CostingSigmaDslBuilder object serves as the default singleton instance of Global object, which implements global ErgoTree functions.
- See also
SGlobal.WrappedType, CostingSigmaDslBuilder
- trait SigmaDslModule extends Scalan with SigmaDslDefs
-
trait
SigmaProp extends AnyRef
Proposition which can be proven and verified by sigma protocol.
-
type
TupleData = Coll[Any]
Generic representation of tuples values.
-
case class
VersionContext(activatedVersion: Byte, ergoTreeVersion: Byte) extends Product with Serializable
Represent currently activated protocol version and currently executed ErgoTree version.
Represent currently activated protocol version and currently executed ErgoTree version.
This parameters, once set in DynamicVariable can be accessed everywhere on the current thread.
- activatedVersion
Currently activated script version == Block.headerVersion - 1
- ergoTreeVersion
version of the currently executed ErgoTree
Value Members
- val AnyType: RType[Any]
- implicit val AnyValueRType: RType[AnyValue]
- implicit val AvlTreeRType: RType[AvlTree]
- implicit val BigIntRType: RType[BigInt]
- implicit val BooleanType: RType[Boolean]
- implicit val BoxRType: RType[Box]
- implicit val ByteType: RType[Byte]
-
val
Colls: CollBuilder
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
- implicit val ContextRType: RType[Context]
- implicit val GroupElementRType: RType[GroupElement]
- implicit val HeaderRType: RType[Header]
- implicit val IntType: RType[Int]
- implicit val LongType: RType[Long]
- implicit val PreHeaderRType: RType[PreHeader]
- implicit val ShortType: RType[Short]
- implicit val SigmaDslBuilderRType: RType[SigmaDslBuilder]
- implicit val SigmaPropRType: RType[SigmaProp]
- implicit val StringType: RType[String]
- implicit val UnitType: RType[Unit]
- implicit val collBuilderRType: RType[CollBuilder]
-
implicit
def
collRType[A](implicit tA: RType[A]): RType[Coll[A]]
Implicit resolution of
Coll[A]
type descriptor, given a descriptor ofA
. - def requireSameLength[A, B](xs: Coll[A], ys: Coll[B]): Unit
-
implicit
def
rtypeToClassTag[A](implicit t: RType[A]): ClassTag[A]
Allows implicit resolution to find appropriate instance of ClassTag in the scope where RType is implicitly available.
Allows implicit resolution to find appropriate instance of ClassTag in the scope where RType is implicitly available. NOTE, this implicit is shadowed internally in some places (search for
def rtypeToClassTag
), hence renaming it requires changing of the shadowing methods. -
def
tupleRType(types: Array[SomeType]): RType[TupleData]
Returns an RType object representing a tuple type with the given SomeType array types.
Returns an RType object representing a tuple type with the given SomeType array types.
- types
An array of SomeType representing the types of each item in the tuple.
- returns
An RType object for the tuple type.
- object Environment
- object Extensions
- object RuntimePlatform
- object VersionContext extends Serializable