heed

A fully typed LMDB wrapper with minimum overhead, uses zerocopy internally.

Build Status Dependency Status Heed Doc Crates.io

the opposite of heed

This library is able to serialize all kind of types, not just bytes slices, even Serde types are supported.

```rust fs::createdirall("target/zerocopy.mdb")?; let env = EnvOpenOptions::new().open("target/zerocopy.mdb")?;

// we will open the default unamed database let db: Database> = env.create_database(None)?;

// opening a write transaction let mut wtxn = env.write_txn()?; db.put(&mut wtxn, "seven", &7)?; db.put(&mut wtxn, "zero", &0)?; db.put(&mut wtxn, "five", &5)?; db.put(&mut wtxn, "three", &3)?; wtxn.commit()?;

// opening a read transaction // to check if those values are now available let mut rtxn = env.read_txn()?;

let ret = db.get(&rtxn, "zero")?; assert_eq!(ret, Some(0));

let ret = db.get(&rtxn, "five")?; assert_eq!(ret, Some(5)); ```

You want to see more about all the possibilities? Go check out the example.