Hi,
as the title tells,
DataStream>>writeInteger: anInteger
"PRIVATE -- Write the contents of a SmallInteger."
byteStream nextInt32Put: anInteger "signed!!!!!"
Which strategy do we adopt?
I suggest using a fake LargeInteger...
objectToStore := (self objectIfBlocked: anObject) objectForDataStream: self.
objectToStore == anObject ifFalse: [typeID := self typeIDFor: objectToStore].
Of course, we must also care of LargeInteger materialization in 64bits spur.