@midnight/ledger v3.0.2 • Readme | API
@midnight/ledger v3.0.2 / StateBoundedMerkleTree
Class: StateBoundedMerkleTree
Represents a fixed-depth Merkle tree storing hashed data, whose preimages are unknown
Constructors
new StateBoundedMerkleTree(height)
new StateBoundedMerkleTree(height): StateBoundedMerkleTree
Create a blank tree with the given height
Parameters
• height: number
Returns
Properties
height
readonly height: number;
Methods
collapse()
Internal
collapse(start, end): StateBoundedMerkleTree
Erases all but necessary hashes between, and inclusive of, start
and
end
inidices
Parameters
• start: bigint
• end: bigint
Returns
Throws
If the indices are out-of-bounds for the tree, or end < start
findPathForLeaf()
Internal
findPathForLeaf(leaf): AlignedValue
Internal implementation of the finding path primitive
Parameters
• leaf: AlignedValue
Returns
Throws
If the leaf is not in the tree
pathForLeaf()
Internal
pathForLeaf(index, leaf): AlignedValue
Internal implementation of the path construction primitive
Parameters
• index: bigint
• leaf: AlignedValue
Returns
Throws
If the index is out-of-bounds for the tree
root()
Internal
root(): Value
Internal implementation of the merkle tree root primitive
Returns
toString()
toString(compact?): string
Parameters
• compact?: boolean
Returns
string
update()
update(index, leaf): StateBoundedMerkleTree
Inserts a value into the Merkle tree, returning the updated tree
Parameters
• index: bigint
• leaf: AlignedValue
Returns
Throws
If the index is out-of-bounds for the tree