lazy-db

A simple, bare-bones and lazily loaded database for small projects

## Examples

Some basic usage

Here is a really basic LazyDB that holds some information about a hypothetical person named 'Dave' ```rust use lazy_db::*;

let path = "exampledb"; // path to the database let database = LazyDB::initdb(path).unwrap(); // initialise the database

// Writing to the database with a concise macro // The individual containers are separated by / while the LazyData is separted with ::. // The assigning = sign indicates the LazyData that is being written to the path // The function after the = sign is formatted like this: new writedatabase!((&database) /people/Dave::favcolour = newstring("Blue")).unwrap(); writedatabase!((&database) /people/Dave::age = newu8(21)).unwrap(); writedatabase!((&database) /people/Dave::unemployed = newbool(true)).unwrap();

// Reading from the database with a concise macro // Same path as before let favcolour: String = searchdatabase!((&database) /people/Dave::favcolour).unwrap(); let age: u8 = searchdatabase!((&database) /people/Dave::age).unwrap(); let unemployed: bool = search_database!((&database) /people/Dave::unemployed).unwrap(); ```