2个版本
使用旧的Rust 2015
0.0.2 | 2015年4月4日 |
---|---|
0.0.1 | 2015年3月31日 |
#12 in #cdb
在2个crate中使用(通过tinycdb)
110KB
2K SLoC
包含(ELF可执行文件/库,27KB) deps/tinycdb-0.78/cdb,(静态库,26KB) deps/tinycdb-0.78/libcdb.a,(静态库,27KB) deps/tinycdb-0.78/libcdb_pic.a,(ELF可执行文件/库,3KB) deps/tinycdb-0.78/cdb_find.lo,(ELF可执行文件/库,3KB) deps/tinycdb-0.78/cdb_findnext.lo,(ELF可执行文件/库,2KB) deps/tinycdb-0.78/cdb_hash.lo 等7个更多。
tinycdb-rs
本项目包括对tinycdb的Rust绑定,tinycdb是一个用于创建和读取常量键值数据库的小型库。
示例
将以下内容添加到您的Cargo.toml
[dependencies.tinycdb]
git = "https://github.com/andrew-d/tinycdb-rs"
然后,在您的crate中
extern crate tinycdb;
use tinycdb::base::Cdb;
读取数据库
let path = Path::new("test.cdb");
let mut db = match Cdb::open(&path) {
Ok(db) => db,
Err(why) => panic!("Could not open CDB: {}", why),
};
match db.find(b"foo") {
Some(val) => println!("Value of 'foo' key is: {}", val),
None => println!("'foo' key was not found"),
};
创建数据库
let path = Path::new("created.cdb");
let res = Cdb::new(&path, |creator| {
let r = creator.add(b"foo", b"bar");
assert!(r.is_ok());
});
let mut db = match res {
Ok(db) => db,
Err(why) => panic!("Could not create database: {}", why),
};
// Now, use 'db' as normal...
许可协议
MIT(TinyCDB的原始代码属于公有领域)