|
|
@ -14,27 +14,21 @@ extern crate rocksdb; |
|
|
|
use rocksdb::RocksDB; |
|
|
|
use rocksdb::RocksDB; |
|
|
|
|
|
|
|
|
|
|
|
fn main() { |
|
|
|
fn main() { |
|
|
|
match RocksDB::open_default("/path/for/rocksdb/storage") { |
|
|
|
let db = RocksDB::open_default("/path/for/rocksdb/storage").unwrap; |
|
|
|
Ok(db) => { |
|
|
|
db.put(b"my key", b"my value"); |
|
|
|
db.put(b"my key", b"my value"); |
|
|
|
db.get(b"my key").map( |value| { |
|
|
|
|
|
|
|
|
|
|
|
db.get(b"my key").map( |value| { |
|
|
|
|
|
|
|
match value.to_utf8() { |
|
|
|
match value.to_utf8() { |
|
|
|
Some(v) => |
|
|
|
Some(v) => |
|
|
|
println!("retrieved utf8 value {}", v), |
|
|
|
println!("retrieved utf8 value {}", v), |
|
|
|
None => |
|
|
|
None => |
|
|
|
println!("did not read valid utf-8 out of the db"), |
|
|
|
println!("did not read valid utf-8 out of the db"), |
|
|
|
} |
|
|
|
} |
|
|
|
}) |
|
|
|
}) |
|
|
|
.on_absent( || { println!("value not found") }) |
|
|
|
.on_absent( || { println!("value not found") }) |
|
|
|
.on_error( |e| { println!("error retrieving value: {}", e) }); |
|
|
|
.on_error( |e| { println!("error retrieving value: {}", e) }); |
|
|
|
|
|
|
|
|
|
|
|
db.delete(b"my key"); |
|
|
|
db.delete(b"my key"); |
|
|
|
|
|
|
|
db.close(); |
|
|
|
db.close(); |
|
|
|
|
|
|
|
}, |
|
|
|
|
|
|
|
Err(e) => panic!(e), |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
``` |
|
|
|
``` |
|
|
|
|
|
|
|
|
|
|
@ -43,7 +37,7 @@ fn main() { |
|
|
|
- [x] linux support |
|
|
|
- [x] linux support |
|
|
|
- [x] rocksdb compiled via cargo |
|
|
|
- [x] rocksdb compiled via cargo |
|
|
|
- [x] OSX support |
|
|
|
- [x] OSX support |
|
|
|
- [ ] rustic merge operator |
|
|
|
- [x] rustic merge operator |
|
|
|
- [ ] batch |
|
|
|
- [ ] batch |
|
|
|
- [ ] iterator |
|
|
|
- [ ] iterator |
|
|
|
- [ ] range |
|
|
|
- [ ] range |
|
|
|