]> gitweb.factorcode.org Git - factor.git/blob - extra/tokyo/alien/tcadb/tcadb.factor
Remove ENUM: f and replace uses with CONSTANTs.
[factor.git] / extra / tokyo / alien / tcadb / tcadb.factor
1 ! Copyright (C) 2009 Bruno Deferrari
2 ! See http://factorcode.org/license.txt for BSD license.
3 USING: alien alien.c-types alien.libraries alien.syntax
4 combinators kernel tokyo.alien.tchdb tokyo.alien.tcutil
5 tokyo.alien.tcbdb tokyo.alien.tcfdb tokyo.alien.tctdb ;
6 IN: tokyo.alien.tcadb
7
8 LIBRARY: tokyocabinet
9
10 TYPEDEF: void* TCADB
11
12 CONSTANT: ADBOVOID 0
13 CONSTANT: ADBOMDB 1
14 CONSTANT: ADBONDB 2
15 CONSTANT: ADBOHDB 3
16 CONSTANT: ADBOBDB 4
17 CONSTANT: ADBOFDB 5
18 CONSTANT: ADBOTDB 6
19 CONSTANT: ADBOSKEL 7
20
21 FUNCTION: TCADB* tcadbnew ( ) ;
22 FUNCTION: void tcadbdel ( TCADB* adb ) ;
23 FUNCTION: bool tcadbopen ( TCADB* adb, c-string name ) ;
24 FUNCTION: bool tcadbclose ( TCADB* adb ) ;
25 FUNCTION: bool tcadbput ( TCADB* adb, void* kbuf, int ksiz, void* vbuf, int vsiz ) ;
26 FUNCTION: bool tcadbput2 ( TCADB* adb, c-string kstr, c-string vstr ) ;
27 FUNCTION: bool tcadbputkeep ( TCADB* adb, void* kbuf, int ksiz, void* vbuf, int vsiz ) ;
28 FUNCTION: bool tcadbputkeep2 ( TCADB* adb, c-string kstr, c-string vstr ) ;
29 FUNCTION: bool tcadbputcat ( TCADB* adb, void* kbuf, int ksiz, void* vbuf, int vsiz ) ;
30 FUNCTION: bool tcadbputcat2 ( TCADB* adb, c-string kstr, c-string vstr ) ;
31 FUNCTION: bool tcadbout ( TCADB* adb, void* kbuf, int ksiz ) ;
32 FUNCTION: bool tcadbout2 ( TCADB* adb, c-string kstr ) ;
33 FUNCTION: void* tcadbget ( TCADB* adb, void* kbuf, int ksiz, int* sp ) ;
34 FUNCTION: c-string tcadbget2 ( TCADB* adb, c-string kstr ) ;
35 FUNCTION: int tcadbvsiz ( TCADB* adb, void* kbuf, int ksiz ) ;
36 FUNCTION: int tcadbvsiz2 ( TCADB* adb, c-string kstr ) ;
37 FUNCTION: bool tcadbiterinit ( TCADB* adb ) ;
38 FUNCTION: void* tcadbiternext ( TCADB* adb, int* sp ) ;
39 FUNCTION: c-string tcadbiternext2 ( TCADB* adb ) ;
40 FUNCTION: TCLIST* tcadbfwmkeys ( TCADB* adb, void* pbuf, int psiz, int max ) ;
41 FUNCTION: TCLIST* tcadbfwmkeys2 ( TCADB* adb, c-string pstr, int max ) ;
42 FUNCTION: int tcadbaddint ( TCADB* adb, void* kbuf, int ksiz, int num ) ;
43 FUNCTION: double tcadbadddouble ( TCADB* adb, void* kbuf, int ksiz, double num ) ;
44 FUNCTION: bool tcadbsync ( TCADB* adb ) ;
45 FUNCTION: bool tcadboptimize ( TCADB* adb, c-string params ) ;
46 FUNCTION: bool tcadbvanish ( TCADB* adb ) ;
47 FUNCTION: bool tcadbcopy ( TCADB* adb, c-string path ) ;
48 FUNCTION: bool tcadbtranbegin ( TCADB* adb ) ;
49 FUNCTION: bool tcadbtrancommit ( TCADB* adb ) ;
50 FUNCTION: bool tcadbtranabort ( TCADB* adb ) ;
51 FUNCTION: c-string tcadbpath ( TCADB* adb ) ;
52 FUNCTION: ulonglong tcadbrnum ( TCADB* adb ) ;
53 FUNCTION: ulonglong tcadbsize ( TCADB* adb ) ;
54 FUNCTION: TCLIST* tcadbmisc ( TCADB* adb, c-string name, TCLIST* args ) ;
55
56 ! -----
57
58 TYPEDEF: void* ADBSKEL
59
60 TYPEDEF: void* ADBMAPPROC
61
62 FUNCTION: bool tcadbsetskel ( TCADB* adb, ADBSKEL* skel ) ;
63 FUNCTION: int tcadbomode ( TCADB* adb ) ;
64 FUNCTION: void* tcadbreveal ( TCADB* adb ) ;
65 FUNCTION: bool tcadbputproc ( TCADB* adb, void* kbuf, int ksiz, void* vbuf, int vsiz, TCPDPROC proc, void* op ) ;
66 FUNCTION: bool tcadbforeach ( TCADB* adb, TCITER iter, void* op ) ;
67 FUNCTION: bool tcadbmapbdb ( TCADB* adb, TCLIST* keys, TCBDB* bdb, ADBMAPPROC proc, void* op, longlong csiz ) ;
68 FUNCTION: bool tcadbmapbdbemit ( void* map, c-string kbuf, int ksiz, c-string vbuf, int vsiz ) ;