public void TightMarshalNestedObject2(DataStructure o, BinaryWriter ds, BooleanStream bs)
{
if(!bs.ReadBoolean())
{
return;
}
byte type = o.GetDataStructureType();
ds.Write(type);
if(o.IsMarshallAware() && bs.ReadBoolean())
{
MarshallAware ma = (MarshallAware) o;
byte[] sequence = ma.GetMarshalledForm(this);
ds.Write(sequence, 0, sequence.Length);
}
else
{
BaseDataStreamMarshaller dsm = GetDataStreamMarshallerForType(type);
dsm.TightMarshal2(this, o, ds, bs);
}
}