add Adam's name to copyright of serialisation code

release
chris.double 2006-08-30 12:23:48 +00:00
parent 68e1e230a8
commit e343df0d21
1 changed files with 100 additions and 94 deletions

View File

@ -1,5 +1,11 @@
! Copyright (C) 2006 Chris Double.
! Copyright (C) 2006 Adam Langley and Chris Double.
! Adam Langley was the original author of this work.
!
! Chris Double modified it to fix bugs and get it working
! correctly under the latest versions of Factor.
!
! See http://factorcode.org/license.txt for BSD license.
!
IN: serialize
USING: kernel math hashtables namespaces io strings sequences generic words errors arrays vectors ;
@ -73,7 +79,7 @@ M: sbuf (serialize) ( obj -- )
[ (serialize) ] each
] if* ;
M: tuple (serialize)
M: tuple (serialize) ( obj -- )
dup object-id [
"o" write (serialize) 2drop
] [
@ -82,16 +88,16 @@ M: tuple (serialize)
tuple>array (serialize)
] if* ;
M: array (serialize)
M: array (serialize) ( obj -- )
"a" (serialize-seq) ;
M: vector (serialize)
M: vector (serialize) ( obj -- )
"v" (serialize-seq) ;
M: quotation (serialize)
M: quotation (serialize) ( obj -- )
"q" (serialize-seq) ;
M: hashtable (serialize)
M: hashtable (serialize) ( obj -- )
dup object-id [
"o" write (serialize) 2drop
] [
@ -100,39 +106,39 @@ M: hashtable (serialize)
hash>alist (serialize)
] if* ;
M: word (serialize)
M: word (serialize) ( obj -- )
"w" write
dup word-name (serialize)
word-vocabulary (serialize) ;
M: wrapper (serialize)
M: wrapper (serialize) ( obj -- )
"W" write
wrapped (serialize) ;
DEFER: (deserialize)
DEFER: (deserialize) ( -- obj )
: deserialize-false ( -- f )
f ;
: deserialize-fixnum
: deserialize-fixnum ( -- fixnum )
4 read be> ;
: deserialize-string
: deserialize-string ( -- string )
(deserialize) read ;
: deserialize-ratio
: deserialize-ratio ( -- ratio )
(deserialize) (deserialize) / ;
: deserialize-complex
: deserialize-complex ( -- complex )
(deserialize) (deserialize) rect> ;
: deserialize-bignum
: deserialize-bignum ( -- bignum )
(deserialize) read be> ;
: deserialize-word
: deserialize-word ( -- word )
(deserialize) dup (deserialize) lookup dup [ nip ] [ "Unknown word" throw ] if ;
: deserialize-wrapper
: deserialize-wrapper ( -- wrapper )
(deserialize) <wrapper> ;
: deserialize-array ( -- array )
@ -167,7 +173,7 @@ DEFER: (deserialize)
: deserialize-unknown ( -- object )
(deserialize) serialized get nth ;
: (deserialize)
: (deserialize) ( -- object )
read1 ch>string dup
H{ { "f" deserialize-fixnum }
{ "s" deserialize-string }