Browse files

* Added a README file

* Started defining classes for CLOS API
* Corrected library loading problem with #:tokyocabinet-sys
  • Loading branch information...
1 parent 6a54512 commit 53ae888e139b04469636ddda1312040ba6135289 @unya committed Mar 9, 2009
Showing with 30 additions and 2 deletions.
  1. +23 −0 README
  2. +3 −0 tc-db.lisp
  3. +4 −2 tokyocabinet.lisp
View
23 README
@@ -0,0 +1,23 @@
+* Intro
+
+TokyoCabinet is a set of database + network server + reverse index
+(for full-text search) libraries, implemented in C and built for
+speed. They represent non-relational wing of databases, though
+TokyoCabinet does have table-based storage with queries on tables (in
+a way, that mirrors basically what 90% of people use MySQL for ;-) )
+
+cl-tc is a set of SWIG-generated CFFI bindings for TokyoCabinet
+library and in future, TokyoTyrant and TokyoDystopia. Currently
+available bindings are 1-to-1 mapping of TokyoCabinet’s C API,
+available in package tokyocabinet-sys. They will be used to make a
+nice, CLOS-y API which will reside in package tokyocabinet, however,
+it’s still not written :)
+
+* How to use
+
+Just symlink ASDF definition file into your registry (or load it or
+add it manually to registry, your pick) and use asdf to load it.
+
+Currently only the C API is available, through direct bindings in
+#:TOKYOCABINET-SYS package. Proper CL api coming soon.
+
View
3 tc-db.lisp
@@ -1,3 +1,6 @@
(in-package :tokyocabinet)
+(defclass database ()
+ ((connection :accessor get-connection :initarg :connection)
+ (db-type :accessor get-db-type :initarg :db-type)))
View
6 tokyocabinet.lisp
@@ -1,11 +1,13 @@
(in-package :tokyocabinet-sys)
+(define-foreign-library tokyocabinet
+ (:unix (:or "libtokyocabinet.so.7" "libtokyocabinet.so"))
+ (t (:default "libtokyocabinet")))
+(use-foreign-library tokyocabinet)
;;; This file was automatically generated by SWIG (http://www.swig.org).
;;; Version 1.3.38
;;;
;;; Do not make changes to this file unless you know what you are doing--modify
;;; the SWIG interface file instead.
-
-
;;;SWIG wrapper code starts here
(cl:defmacro defanonenum (&body enums)

0 comments on commit 53ae888

Please sign in to comment.