[cl-store-cvs] CVS update: cl-store/cl-store-xml.noasd cl-store/.cvsignore cl-store/ChangeLog cl-store/README cl-store/cl-store.asd cl-store/default-backend.lisp cl-store/xml-backend.lisp cl-store/cl-store-xml.asd

Sean Ross sross at common-lisp.net
Thu Dec 2 10:31:59 UTC 2004


Update of /project/cl-store/cvsroot/cl-store
In directory common-lisp.net:/tmp/cvs-serv31538

Modified Files:
	.cvsignore ChangeLog README cl-store.asd default-backend.lisp 
	xml-backend.lisp 
Added Files:
	cl-store-xml.noasd 
Removed Files:
	cl-store-xml.asd 
Log Message:
Changelog 2004-12-02
Date: Thu Dec  2 11:31:55 2004
Author: sross



Index: cl-store/.cvsignore
diff -u cl-store/.cvsignore:1.2 cl-store/.cvsignore:1.3
--- cl-store/.cvsignore:1.2	Tue Aug 17 13:12:43 2004
+++ cl-store/.cvsignore	Thu Dec  2 11:31:54 2004
@@ -4,3 +4,5 @@
 filetest.cls
 *.fas
 *.lib
+clean.sh
+wc.sh


Index: cl-store/ChangeLog
diff -u cl-store/ChangeLog:1.16 cl-store/ChangeLog:1.17
--- cl-store/ChangeLog:1.16	Fri Nov 26 15:33:38 2004
+++ cl-store/ChangeLog	Thu Dec  2 11:31:54 2004
@@ -1,3 +1,9 @@
+2004-12-02 Sean Ross <sross at common-lisp.net>
+	* sbcl/custom.lisp, cmucl/custom.lisp: Changed the evals when restoring
+	structure definitions to (funcall (compile nil ...))
+	* cl-store-xml.asd: Removed
+	* cl-store-xml.noasd: Added (xml-backend is officially nuked).
+	
 2004-11-26 Sean Ross <sross at common-lisp.net>
 	* cmucl/custom.lisp: Custom structure definition storing for CMUCL.
 	* plumbing.lisp: Bind *read-eval* to nil inside store and restore.


Index: cl-store/README
diff -u cl-store/README:1.13 cl-store/README:1.14
--- cl-store/README:1.13	Fri Nov 26 15:35:36 2004
+++ cl-store/README	Thu Dec  2 11:31:54 2004
@@ -1,13 +1,15 @@
 README for Package CL-STORE.
 Author: Sean Ross 
 Homepage: http://www.common-lisp.net/project/cl-store/
-Version: 0.4.1
+Version: 0.4.2
 
 0. About.
    CL-STORE is an portable serialization package which 
    should give you the ability to store all common-lisp
    data types (well not all yet) into streams.
    See the cl-store manual (docs/cl-store.texi) for more in depth information.
+   
+   !!! NOTE: The cl-store-xml backend is deprecated.
 
 1. Usage
    The main entry points are 


Index: cl-store/cl-store.asd
diff -u cl-store/cl-store.asd:1.15 cl-store/cl-store.asd:1.16
--- cl-store/cl-store.asd:1.15	Fri Nov 26 15:35:36 2004
+++ cl-store/cl-store.asd	Thu Dec  2 11:31:54 2004
@@ -40,7 +40,7 @@
   :name "CL-STORE"
   :author "Sean Ross <sdr at jhb.ucs.co.za>"
   :maintainer "Sean Ross <sdr at jhb.ucs.co.za>"
-  :version "0.4.1"
+  :version "0.4.2"
   :description "Serialization package"
   :long-description "Portable CL Package to serialize data types"
   :licence "MIT"


Index: cl-store/default-backend.lisp
diff -u cl-store/default-backend.lisp:1.14 cl-store/default-backend.lisp:1.15
--- cl-store/default-backend.lisp:1.14	Fri Nov 26 15:35:36 2004
+++ cl-store/default-backend.lisp	Thu Dec  2 11:31:54 2004
@@ -59,7 +59,7 @@
 (defconstant +function-code+ (register-code 26 'function nil))
 (defconstant +gf-code+ (register-code 27 'generic-function nil))
 
-;; Used by SBCL.
+;; Used by SBCL and CMUCL.
 (defconstant +structure-class-code+ (register-code 28 'structure-class nil))
 (defconstant +struct-def-code+ (register-code 29 'struct-def nil))
 


Index: cl-store/xml-backend.lisp
diff -u cl-store/xml-backend.lisp:1.8 cl-store/xml-backend.lisp:1.9
--- cl-store/xml-backend.lisp:1.8	Fri Nov 26 15:35:36 2004
+++ cl-store/xml-backend.lisp	Thu Dec  2 11:31:54 2004
@@ -1,6 +1,9 @@
 ;;; -*- Mode: LISP; Syntax: ANSI-Common-Lisp; Base: 10 -*-
 ;; See the file LICENCE for licence information.
 
+;; THIS BACKEND IS DEPRECATED AND WILL NOT WORK
+;; ITS PRESENCE IS FOR POSTERITY ONLY
+
 (in-package :cl-store-xml)
 
 (declaim (optimize (speed 3) (safety 1) (debug 0)))
@@ -92,6 +95,7 @@
 (defmethod backend-restore ((place stream) (backend xml-backend))
   (let ((*restore-counter* 0)
         (*need-to-fix* nil)
+        (*print-circle* nil)
         (*restored-values* (make-hash-table)))
     (multiple-value-prog1
         (backend-restore-object (or (xmls:parse place)
@@ -120,13 +124,11 @@
   (with-tag ("SIMPLE-STRING" place)
     (format place "~S" string)))
 
-(defstore-xml (obj string stream)
-  (if (typep obj 'simple-standard-string)
-      (xml-dump-simple-string obj stream)
-      (xml-dump-array obj stream)))
+(defstore-xml (obj simple-string stream)
+  (xml-dump-simple-string obj stream))
 
 (defrestore-xml (simple-string place)
-  (read-from-string (third place)))
+  (remove #\" (third place)))
 
 
 ;; float
@@ -179,13 +181,16 @@
 
 ;; symbol
 (defstore-xml (obj symbol stream)
-  (format stream "<SYMBOL>~A::~A</SYMBOL>"
-          (package-name (symbol-package obj))
-          (symbol-name obj)))
+  (with-tag ("SYMBOL" stream)
+    (princ-xml "NAME" (symbol-name obj) stream)
+    (princ-and-store "PACKAGE" (symbol-package obj) stream)))
 
+(store 'foo "/home/sdr/test.out")
+(restore "/home/sdr/test.out")
 (defrestore-xml (symbol place)
-  (read-from-string (first-child place)))
-
+  (intern (restore-first (get-child "NAME" place))
+          (or (restore-first (get-child "PACKAGE" place))
+              *package*)))
 
 ;; cons
 (defstore-xml (obj cons stream)
@@ -468,4 +473,4 @@
 
 
 (setf *default-backend* *xml-backend*)
-;; EOF
\ No newline at end of file
+;; EOF






More information about the Cl-store-cvs mailing list