Structs§
- Basic
Block Node - Block for a linear sequence of operations (i.e., no branching or loops).
- Call
Node - A Call node describes a function call such that the callee is executed in a different execution context from the currently executing code.
- Decorator
Id - An opaque handle to a
Decoratorin someMastForest. It is the responsibility of the user to use a givenDecoratorIdwith the correspondingMastForest. - Decorator
OpLink Iterator - Iterator used to iterate through the decorator list of a basic block while executing operation batches of a basic block.
- DynNode
- A Dyn node specifies that the node to be executed next is defined dynamically via the stack.
- External
Node - Node for referencing procedures not present in a given
MastForest(hence “external”). - Index
Vec - A dense vector indexed by ID types.
- Join
Node - A Join node describe sequential execution. When the VM encounters a Join node, it executes the first child first and the second child second.
- Loop
Node - A Loop node defines condition-controlled iterative execution. When the VM encounters a Loop node, it will keep executing the body of the loop as long as the top of the stack is `1``.
- Mast
Forest - Represents one or more procedures, represented as a collection of
MastNodes. - Mast
Forest Root Map - A mapping for the new location of the roots of a
MastForestafter a merge. - Mast
Node Fingerprint - Represents the hash used to test for equality between
MastNodes. - Mast
Node Id - An opaque handle to a
MastNodein someMastForest. It is the responsibility of the user to use a givenMastNodeIdwith the correspondingMastForest. - OpBatch
- A batch of operations in a span block.
- Split
Node - A Split node defines conditional execution. When the VM encounters a Split node it executes
either the
on_truechild oron_falsechild. - Subtree
Iterator - Iterates over all the nodes a root depends on, in pre-order. The iteration can include other roots in the same forest.
Enums§
- Indexed
VecError - Error returned when too many items are added to an IndexedVec.
- Mast
Forest Error - Represents the types of errors that can occur when dealing with MAST forest.
- Mast
Node - Operation
OrDecorator - Encodes either an
Operationor acrate::Decorator.
Constants§
- OP_
BATCH_ SIZE - Maximum number of groups per batch.
- OP_
GROUP_ SIZE - Maximum number of operations per group.
Traits§
- Mast
Node Error Context - A trait for extending the functionality of all
MastNodes. - Mast
Node Ext
Functions§
- error_
code_ from_ msg - Derives an error code from an error message by hashing the message and returning the 0th element
of the resulting
Word.
Type Aliases§
- Decorated
OpLink - Decorator
Fingerprint - Remapping
- Operations that mutate a MAST often produce this mapping between old and new NodeIds.