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. - 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”). - 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.
Enums§
- 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.