update readme
This commit is contained in:
parent
f6e2b444d2
commit
b08c66fe7f
46
README.md
46
README.md
|
@ -1,2 +1,46 @@
|
|||
# leveldb.nim
|
||||
LevelDB wrapper for Nim
|
||||
A LevelDB wrapper for Nim in a Nim friendly way.
|
||||
|
||||
Create a database:
|
||||
```Nim
|
||||
import leveldb
|
||||
import options
|
||||
|
||||
var db = leveldb.open("/tmp/mydata")
|
||||
```
|
||||
|
||||
Read or modify the database content:
|
||||
```Nim
|
||||
assert db.getOrDefault("nothing", "") == ""
|
||||
|
||||
db.put("hello", "world")
|
||||
db.put("bin", "GIF89a\1\0")
|
||||
echo db.get("hello")
|
||||
assert db.get("hello").isSome()
|
||||
|
||||
var key, val = ""
|
||||
for key, val in db.iter():
|
||||
echo key, ": ", repr(val)
|
||||
|
||||
db.delete("hello")
|
||||
assert db.get("hello").isNone()
|
||||
```
|
||||
|
||||
Batch writes:
|
||||
```Nim
|
||||
let batch = newBatch()
|
||||
for i in 1..10:
|
||||
batch.put("key" & $i, $i)
|
||||
batch.delete("bin")
|
||||
db.write(batch)
|
||||
```
|
||||
|
||||
Iterate over subset of database content:
|
||||
```Nim
|
||||
for key, val in db.iterPrefix(prefix = "key1"):
|
||||
echo key, ": ", val
|
||||
for key, val in db.iter(seek = "key3", reverse = true):
|
||||
echo key, ": ", val
|
||||
|
||||
db.close()
|
||||
```
|
||||
|
|
Loading…
Reference in New Issue