1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
use crate::node::Node;
/// Represents a proof to perform a Merkle tree operation on the leaf at `index`
#[derive(Copy, Clone, Debug, PartialEq, Eq)]
#[repr(C)]
pub struct Path<const MAX_DEPTH: usize> {
pub proof: [Node; MAX_DEPTH],
pub leaf: Node,
pub index: u32,
pub _padding: u32,
}
impl<const MAX_DEPTH: usize> Default for Path<MAX_DEPTH> {
fn default() -> Self {
Self {
proof: [Node::default(); MAX_DEPTH],
leaf: Node::default(),
index: 0,
_padding: 0,
}
}
}