--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/AbstractObjectCoder.st Wed Feb 06 20:10:11 2002 +0100
@@ -0,0 +1,149 @@
+"{ Package: 'stx:libbasic' }"
+
+Object subclass:#AbstractObjectCoder
+ instanceVariableNames:''
+ classVariableNames:''
+ poolDictionaries:''
+ category:'System-Storage'
+!
+
+!AbstractObjectCoder class methodsFor:'documentation'!
+
+documentation
+"
+ This class is defines #encodeXXX:with: messages for various kinds of objects.
+ Any of these messsages is mapped to #encodeObject:with:.
+
+ When a class redefines #encodeOn:with:, an method has to be defined here, too.
+
+ Subclasses have to define at least #encodeObject:with:
+
+ [author:]
+ Stefan Vogel (stefan@zwerg)
+
+ [see also:]
+ Object>>encodeOn:with:
+"
+! !
+
+!AbstractObjectCoder methodsFor:'encoding-smalltalk-types'!
+
+encodeAbsoluteTime:anAbsoluteTime with:aParameter
+ "encode an absolute time value"
+
+ self encodeObject:anAbsoluteTime with:aParameter
+
+
+!
+
+encodeBitArray:aBitArray with:aParameter
+ "encode a BitArray"
+
+ self encodeObject:aBitArray with:aParameter
+
+
+!
+
+encodeBoolean:aBoolean with:aParameter
+ "encode a Boolean"
+
+ self encodeObject:aBoolean with:aParameter
+
+
+!
+
+encodeByteArray:aByteArray with:aParameter
+ "encode an absolute time value"
+
+ self encodeObject:aByteArray with:aParameter
+
+
+!
+
+encodeCharacter:aCharacter with:aParameter
+ "encode a Character"
+
+ self encodeObject:aCharacter with:aParameter
+
+
+!
+
+encodeDictionary:aDictionary with:aParameter
+ "encode a Dictionary"
+
+ self encodeObject:aDictionary with:aParameter
+
+
+!
+
+encodeFloat:aFloat with:aParameter
+ "encode a Float"
+
+ self encodeObject:aFloat with:aParameter
+
+
+!
+
+encodeInteger:anInteger with:aParameter
+ "encode an Integer"
+
+ self encodeObject:anInteger with:aParameter
+
+
+!
+
+encodeNilWith:aParameter
+ "encode a nil"
+
+ self encodeObject:nil with:aParameter
+
+
+!
+
+encodeSequencableCollection:aCollection with:aParameter
+ "encode a SequencableCollection"
+
+ self encodeObject:aCollection with:aParameter
+
+
+!
+
+encodeSet:aCollection with:aParameter
+ "encode a Set"
+
+ self encodeObject:aCollection with:aParameter
+
+
+!
+
+encodeString:aString with:aParameter
+ "encode a String"
+
+ self encodeObject:aString with:aParameter
+
+
+!
+
+encodeSymbol:aSymbol with:aParameter
+ "encode a Symbol"
+
+ self encodeObject:aSymbol with:aParameter
+
+
+! !
+
+!AbstractObjectCoder methodsFor:'subclass responsibility'!
+
+encodeObject:anObject with:aParameter
+ "encode an object. Subclasses must implement this method"
+
+ self subclassResponsibility
+
+
+! !
+
+!AbstractObjectCoder class methodsFor:'documentation'!
+
+version
+ ^ '$Header: /cvs/stx/stx/libbasic/Attic/AbstractObjectCoder.st,v 1.1 2002-02-06 19:10:11 stefan Exp $'
+! !