[elephant-cvs] CVS update: elephant/src/serializer.lisp

blee at common-lisp.net blee at common-lisp.net
Sun Aug 29 20:40:49 UTC 2004


Update of /project/elephant/cvsroot/elephant/src
In directory common-lisp.net:/tmp/cvs-serv7895/src

Modified Files:
	serializer.lisp 
Log Message:
new license, bignum bugfix, don't save class slots

Date: Sun Aug 29 22:40:49 2004
Author: blee

Index: elephant/src/serializer.lisp
diff -u elephant/src/serializer.lisp:1.5 elephant/src/serializer.lisp:1.6
--- elephant/src/serializer.lisp:1.5	Sun Aug 29 09:54:46 2004
+++ elephant/src/serializer.lisp	Sun Aug 29 22:40:49 2004
@@ -12,6 +12,10 @@
 ;;; Copyright (c) 2004 by Andrew Blumberg and Ben Lee
 ;;; <ablumberg at common-lisp.net> <blee at common-lisp.net>
 ;;;
+;;; This program is released under the following license
+;;; ("GPL").  For differenct licensing terms, contact the
+;;; copyright holders.
+;;;
 ;;; This program is free software; you can redistribute it
 ;;; and/or modify it under the terms of the GNU General
 ;;; Public License as published by the Free Software
@@ -121,10 +125,9 @@
 		  (buffer-write-byte +negative-bignum+ bs)
 		  (buffer-write-byte +positive-bignum+ bs))
 	      (buffer-write-int needed bs)
-	      (loop for i fixnum from 0 below word-size 
-		    ;; shouldn't this be "below"?
+	      (loop for i fixnum from 0 to word-size 
 		    for byte-spec = (int-byte-spec i)
-		    ;; this ldb is consing!
+		    ;; this ldb is consing on CMUCL!
 		    ;; there is an OpenMCL function which should work 
 		    ;; and non-cons
 		    for the-uint of-type (unsigned-byte 32) = (ldb byte-spec num)
@@ -204,7 +207,9 @@
 	for slot-name = (slot-definition-name sd)
 	with ret = ()
 	do
-	(when (slot-boundp o slot-name)
+	(when (and (slot-boundp o slot-name)
+		   (eq :instance
+		       (slot-definition-allocation sd)))
 	  (push (slot-value o slot-name) ret)
 	  (push slot-name ret))
 	finally (return ret)))





More information about the Elephant-cvs mailing list