peapod 0.1.9

Ultra-compact storage for enums
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
use peapod::{Peapod, Phenotype};

#[derive(Phenotype, PartialEq, Eq, Debug)]
enum Enum {
    Variant0,
    Variant1,
    Variant2,
}

fn main() {
    let mut pp = Peapod::new();
    pp.push(Enum::Variant0);
    pp.truncate(usize::MAX / 2 + 1);
    assert_eq!(pp.pop(), Some(Enum::Variant0));
}