pagedelta 0.1.1

Deltas: LLAMA's primary units of data.
Documentation
# pagedelta

LLAMA's primary units of data.

---

## Building a `PageState` chain and iterating it

```rust
use pagedelta::{BasePage, PageState, UpdateDelta, FlushDelta, PartialSwapDelta};
use std::sync::Arc;

let base = Arc::new(PageState::Base(BasePage::small()));
let s1   = base.push_delta(UpdateDelta::new_shared_delta(b"op1", 0, 0));
let s2   = s1.push_delta(FlushDelta::new_shared_delta(0xDEAD, 0));
let flush_point = Arc::clone(&s2);
let s3   = s2.push_partial_swap(
    PartialSwapDelta::new_shared_delta(b"swap", 0, 0, 0),
    flush_point,
);

// The iterator visits every node exactly once, even the shared flush node.
for node in s3.iter() {
    println!("{:?}", node);
}
```