public abstract class DataSerializerThe non-generic face of a serializer, for when the type is only known at run time.
No guide page documents this yet — the page shows what the code says about itself.
Remarks
Polymorphism is the reason this exists. A field typed as a base class holding a derived instance has to be written by the *derived* type's serializer, and the code doing the writing knows only the base — so somewhere the dispatch has to go through a shape that is not generic over the concrete type.
The object in these signatures would box a struct, which is why nothing uses them for one: polymorphism applies to reference types, where the value is already a reference and the cast is free. Value types go through Serialize and never touch this.
Fields and properties (1)
public abstract Type SerializedTypeWhat this serializer reads and writes.
Methods (2)
public abstract void SerializeObject(ref SerializationWriter writer, object value)Writes a value whose type is only known at run time.
public abstract object DeserializeObject(ref SerializationReader reader)Reads a value whose type is only known at run time.
Used by (8)
- DataSerializerVixen.Core.Serialization
- ObjectDatabaseVixen.Core.Serialization
- SerializationReaderVixen.Core.Serialization
- SerializationTestsVixen.Core.Serialization.Tests
- SerializationWriterVixen.Core.Serialization
- SerializerRegistryVixen.Core.Serialization
- TypeDescriptorVixen.Core.Reflection
- TypeRegistryTestsVixen.Core.Reflection.Tests