Name
Formatter
Synopsis
This is the abstract base class for all
runtime
serialization formatters. It implements the
IFormatter
interface, which provides the
properties that select the binder, surrogates, and streaming context
of the formatter. This interface also implements the
Serialize( )
and Deserialize( )
methods.
Additionally, the Formatter
manages the queue of
objects to serialize and provides a set of Write*
methods for writing types to the stream.
public abstract class Formatter : IFormatter { // Protected Constructors protected Formatter( ); // Protected Instance Fields protected ObjectIDGenerator m_idGenerator; protected Queue m_objectQueue; // Public Instance Properties public abstract SerializationBinder Binder{set; get; } //implements IFormatter public abstract StreamingContext Context{set; get; } // implements IFormatter public abstract ISurrogateSelector SurrogateSelector{set; get; } // implements IFormatter // Public Instance Methods public abstract object Deserialize(System.IO.StreamserializationStream
) // implements IFormatter public abstract void Serialize(System.IO.StreamserializationStream
, objectgraph
) // implements IFormatter // Protected Instance Methods protected virtual object GetNext(out longobjID
); protected virtual long Schedule(objectobj
); protected abstract void WriteArray(objectobj
, stringname
, TypememberType
); protected abstract void WriteBoolean(boolval
, stringname
); protected abstract void WriteByte(byteval
, stringname
); protected abstract ...
Get C# in a Nutshell, Second Edition now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.