[cl-store-cvs] CVS update: cl-store/doc/cl-store.texi

Sean Ross sross at common-lisp.net
Tue Feb 1 08:27:42 UTC 2005


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

Modified Files:
	cl-store.texi 
Log Message:
Changelog 2005-02-01
Date: Tue Feb  1 00:27:40 2005
Author: sross

Index: cl-store/doc/cl-store.texi
diff -u cl-store/doc/cl-store.texi:1.5 cl-store/doc/cl-store.texi:1.6
--- cl-store/doc/cl-store.texi:1.5	Thu Dec  2 02:32:02 2004
+++ cl-store/doc/cl-store.texi	Tue Feb  1 00:27:40 2005
@@ -468,7 +468,7 @@
 @end deffn 
 
 @anchor {Macro resolving-object}
- at deffn {Macro} resolving-object object &body body 
+ at deffn {Macro} resolving-object (var create) &body body 
 Executes @emph{body} resolving circularities detected in @emph{object}. 
 Resolving-object works by creating a closure, containing code to set a 
 particular place in @emph{object}, which is then pushed onto a list. 
@@ -477,9 +477,9 @@
 Example.
 @lisp
 (defrestore-cl-store (cons stream)
-  (resolving-object (cons nil nil)
-    (setting car (restore-object stream))
-    (setting cdr (restore-object stream))))
+  (resolving-object (object (cons nil nil))
+    (setting (car object) (restore-object stream))
+    (setting (cdr object) (restore-object stream))))
 @end lisp
 @end deffn
 
@@ -489,24 +489,18 @@
 @deffn {Macro} setting place get
 This macro can only be used inside @code{resolving-object}. It sets the value 
 designated by @emph{place} to @emph{get} for the object that is being resolved.
- at emph{Place} should be either a symbol or a list. By default we assume that the
-order of the arguments to (setf @emph{place}) is first the object to set and then
-the rest of the arguments. To work around instances where the order is reversed
-as in gethash, there is a variable called @code{*postfix-setters*}.  
-If the first element of place is in @code{*postfix-setters*} the setting macro 
-will adjust accordingly.
 
 Example.
 @lisp
 (defrestore-cl-store (simple-vector stream)
   (let* ((size (restore-object stream))
         (res (make-array size)))
-    (resolving-object res
+    (resolving-object (object res)
      (loop repeat size for i from 0 do
        ;; we need to copy the index so that
        ;; it's value is preserved for after the loop.
        (let ((x i))
-         (setting (aref x) (restore-object stream)))))
+         (setting (aref object x) (restore-object stream)))))
     res))
 @end lisp
 @end deffn
@@ -528,7 +522,7 @@
                                  :rehash-size rehash-size
                                  :rehash-threshold rehash-threshold
                                  :size size)))
-      (resolving-object hash
+      (resolving-object (obj hash)
         (loop repeat count do
               (setting-hash (restore-object stream) 
                             (restore-object stream))))




More information about the Cl-store-cvs mailing list