Update of /project/elephant/cvsroot/elephant/src/elephant
In directory clnet:/tmp/cvs-serv4653/src/elephant
Modified Files:
backend.lisp package.lisp
Log Message:
Add exported symbols that were missing from backend.lisp
--- /project/elephant/cvsroot/elephant/src/elephant/backend.lisp 2007/03/30 14:34:35 1.12
+++ /project/elephant/cvsroot/elephant/src/elephant/backend.lisp 2007/03/30 14:55:54 1.13
@@ -19,57 +19,21 @@
(in-package :cl-user)
-(defpackage :elephant-backend
+(defmacro defpackage-import-exported (name source-package &rest args)
+ "Define an export list, a source package and this macro will automatically
+ import from that package the exported symbol names."
+ (let* ((exports (find :export args :key #'car))
+ (imports `(:import-from ,source-package ,@(cdr exports))))
+ `(defpackage ,name
+ ,@(append args (list imports)))))
+
+(defpackage-import-exported :elephant-backend :elephant
(:documentation "Backends should use this to get access to internal symbols
of elephant that importers of elephant shouldn't see. Backends should also
import elephant to get use-api generic function symbols, classes and globals")
(:use #:elephant)
- (:import-from #:elephant
- ;; Variables
- #:*dbconnection-spec*
- #:connection-is-indeed-open
-
- ;; Persistent objects
- #:oid #:get-con
- #:next-oid
- #:persistent-slot-writer
- #:persistent-slot-reader
- #:persistent-slot-boundp
- #:persistent-slot-makunbound
-
- ;; Controllers
- #:*elephant-code-version*
- #:open-controller
- #:close-controller
- #:database-version
- #:controller-spec
- #:controller-serialize
- #:controller-deserialize
- #:root #:spec #:class-root
- ;; Serialization
- #:deserialize-from-base64-string
- #:serialize-to-base64-string
- ;; Cursor accessors
- #:cursor-btree
- #:cursor-oid
- #:cursor-initialized-p
- ;; Transactions
- #:*current-transaction*
- #:make-transaction-record
- #:transaction-store
- #:transaction-object
- ;; Registration
- #:register-backend-con-init
- #:lookup-backend-con-init
- ;; Misc
- #:slot-definition-name
- #:slots-and-values
- #:struct-slots-and-values
- #:remove-indexed-element-and-adjust
- )
(:export
;; Variables
- #:*cachesize*
#:*dbconnection-spec*
#:connection-is-indeed-open
@@ -87,25 +51,37 @@
#:close-controller
#:database-version
#:controller-spec
- #:controller-version
+ #:controller-serializer-version
#:controller-serialize
#:controller-deserialize
#:root #:spec #:class-root
- ;; Serialization
+
+ ;; Serializer tools/api's
+ #:serialize #:deserialize
#:deserialize-from-base64-string
#:serialize-to-base64-string
+ #:initialize-serializer
+ #:serialize-database-version-key
+ #:serialize-database-version-value
+ #:deserialize-database-version-value
+
;; Cursor accessors
#:cursor-btree
#:cursor-oid
#:cursor-initialized-p
+
;; Transactions
#:*current-transaction*
#:make-transaction-record
#:transaction-store
#:transaction-object
+ #:execute-transaction
+
;; Registration
#:register-backend-con-init
#:lookup-backend-con-init
+ #:get-user-configuration-parameter
+
;; Misc
#:slot-definition-name
#:slots-and-values
--- /project/elephant/cvsroot/elephant/src/elephant/package.lisp 2007/03/30 14:34:35 1.26
+++ /project/elephant/cvsroot/elephant/src/elephant/package.lisp 2007/03/30 14:55:54 1.27
@@ -206,9 +206,10 @@
#:persistent #:persistent-object #:persistent-metaclass #:defpclass
#:persistent-collection #:drop-pobject
- #:btree #:make-btree
- #:get-value #:remove-kv #:existp
- #:indexed-btree #:make-indexed-btree
+ #:btree #:build-btree
+ #:get-value #:remove-kv #:existsp
+ #:indexed-btree #:build-indexed-btree
+ #:btree-index
#:add-index #:get-index #:remove-index #:map-indices
#:get-primary-key #:primary #:key-form #:key-fn
#:with-btree-cursor #:map-btree #:map-index