Namespace Azos.Serialization.Slim
Classes
PODSlimSerializer
Serializes CLR object graphs using PortableObjectDocument container and Slim binary serialization algorithm. This class is far less performant than SlimSerializer, however it serializes types using document model that allows to transform/change data during serialization/deserialization. This class is needed for upgrades, when object metadata may change but need to be read (maybe partially) back into the new type structure
SlimDeserializationCtorSkipAttribute
When set on a parameterless constructor, instructs the Slim serializer not to invoke the ctor() on deserialization
SlimDeserializationException
Base exception thrown by the Slim when deserializing objects
SlimException
Base exception thrown by the Slim serialization format
SlimInvalidTypeHandleException
Thrown by type registry when supplied type handle is invalid/not found
SlimSerializationException
Base exception thrown by the Slim when serializing objects
SlimSerializationProhibitedAttribute
When set fails an attempt to serialize the decorated type
SlimSerializationProhibitedException
Thrown when a type is decoreted with SlimSerializationProhibitedAttribute
SlimSerializer
Implements Slim serialization algorithm that relies on an injectable SlimFormat-derivative (through .ctor) paremeter. This class was designed for highly-efficient serialization of types without versioning. SlimSerializer supports a concept of "known types" that save space by not emitting their names into stream. Performance note: This serializer yields on average 1/4 serialization and 1/2 deserialization times while compared to BinaryFormatter. Serialization of Record-instances usually takes 1/6 of BinaryFormatter time. Format takes 1/10 space for records and 1/2 for general object graphs. Such performance is achieved because of dynamic compilation of type-specific serialization/deserialization methods. This type is thread-safe for serializations/deserializations when TypeMode is set to "PerCall"
TypeRegistry
Provides a registry of types, types that do not need to be described in a serialization stream
Interfaces
ISlimSerializer
Marker interface for formats based on Slim algorithm family
Enums
TypeRegistryMode
Denotes modes of handling type registry by Slim serializer