20 releases (breaking)
0.16.0 | Oct 19, 2022 |
---|---|
0.15.0-rkyv.0 | May 18, 2022 |
0.14.0-rc.0 | Feb 23, 2022 |
0.11.0-rc.0 | Nov 4, 2021 |
0.4.0 | Jun 10, 2020 |
#815 in Cryptography
1,450 downloads per month
20KB
451 lines
NStack
A stack data structure with indexed lookup.
nstack
nstack is a stack-like merkle datastructure for storing and accessing indexed values.
Operations supported are add and remove at the end of the structure, and mutable access to indexed leaves.
Usage example
use nstack::annotation::Cardinality;
use nstack::NStack;
let mut nt = NStack::<i32, Cardinality>::new();
nt.push(0);
nt.push(1);
// mutable references to the last element
if let Some(mut branch) = nt.nth_mut(1) {
*branch = 2;
}
assert_eq!(nt.pop(), Some(2));
assert_eq!(nt.pop(), Some(0));
Dependencies
~43KB