@@ -10,26 +10,35 @@ a copy of TidesDB
10
10
11
11
``` bash
12
12
git clone https://github.com/tidesdb/tidesdb.git
13
+
14
+ ```
15
+ Build it and install
16
+ ``` bash
17
+ cd tidesdb
18
+ cmake -DTIDESDB_WITH_SANITIZER=OFF -S . -B build && make -C build/
19
+ sudo cmake --install build
20
+ ```
21
+
22
+ Build Lua library
23
+ ``` bash
13
24
git clone https://github.com/tidesdb/tidesdb-lua.git
14
25
cd tidesdb-lua
15
- cmake --debug-output -S . -B build
16
- cd build
17
- make
26
+ cmake -S . -B build && make -C build/
18
27
```
19
28
As a result libtidesdb_lua.so library is built
20
29
#### Basic operations
21
30
22
31
``` lua
23
32
-- Open lua wrapper library
24
- local db = require (" libtidesdb_lua" )
33
+ local lib = require (" libtidesdb_lua" )
25
34
26
35
-- Open a TidesDB database
27
- local code , message = db .open (" my_db" )
36
+ local code , message , db = lib .open (" my_db" )
28
37
-- assert error codes for failures
29
38
assert (code == 0 , message )
30
39
31
40
-- Create a column family
32
- code , message = db . create_column_family (
41
+ code , message = db : create_column_family (
33
42
" my_column_family" ,
34
43
1024 * 1024 * 64 , -- Flush threshold (64MB)
35
44
12 , -- Max level skip list, if using hash table is irrelevant
@@ -40,16 +49,16 @@ code, message = db.create_column_family(
40
49
)
41
50
42
51
-- Put key-value pair into the database
43
- code , message = db . put (" my_column_family" , " key" , " value" , 3600 )
52
+ code , message = db : put (" my_column_family" , " key" , " value" , 3600 )
44
53
45
54
-- Get the value for the key
46
- code , message , value = db . get (" my_column_family" , " key" )
55
+ code , message , value = db : get (" my_column_family" , " key" )
47
56
48
57
-- Delete the key-value pair
49
- db . delete (" my_column_family" , " key" )
58
+ db : delete (" my_column_family" , " key" )
50
59
51
60
--- Close the database
52
- db .close ()
61
+ lib .close (db )
53
62
```
54
63
55
64
#### Test lua wrapper-library
0 commit comments