Keyboard shortcuts

Press or to navigate between chapters

Press ? to show this help

Press Esc to hide this help

StoredMerkleTree

Efficient MerkleTree with pre-built tree storage for O(log n) proof generation.

When to use StoredMerkleTree vs MerkleTree:

Use StoredMerkleTree when:

  • Generating 2+ proofs from the same tree (35% gas savings for multiple proofs)
  • Need consistent O(log n) performance for proof generation

Use regular MerkleTree when:

  • Only generating 1 proof (70% less gas for single proof)
  • Memory/storage is constrained
  • Tree data changes frequently (StoredMerkleTree requires rebuilding)

Gas Comparison (8 leaves):

  • Single proof: MerkleTree 96k gas vs StoredMerkleTree 165k gas
  • Multiple proofs (4x): MerkleTree 378k gas vs StoredMerkleTree 247k gas (35% savings)

Fully qualified path: alexandria_merkle_tree::merkle_tree::StoredMerkleTree

[derive(Drop)]
pub struct StoredMerkleTree<T> { /* private fields */ }