Table of Contents

Namespace Nerdbank.MessagePack

Classes

ConverterCollection

An immutable collection of converters.

ConverterTypeCollection

An immutable collection of MessagePackConverter<T> types.

DecodeResultExtensions

Extension methods for the MessagePackPrimitives.DecodeResult enum.

DerivedShapeMapping<TBase>

Describes a mapping between a base type and its known sub-types, along with the aliases that identify them.

DerivedTypeMapping

A non-generic abstract base class for DerivedShapeMapping<TBase>.

DerivedTypeMappingCollection

An immutable collection of DerivedShapeMapping<TBase> objects.

DerivedTypeMapping<TBase>

Describes a mapping between a base type and its known sub-types, along with the aliases that identify them.

JsonSchemaContext

The context provided to GetJsonSchema(JsonSchemaContext, ITypeShape) to aid in the generation of JSON schemas for types.

KeyAttribute

Specifies an ordinal key that may be used when the object serializes its properties for a faster and/or more compact binary representation.

LibraryReservedMessagePackExtensionTypeCode

Documents the library-reserved extension type codes and allows changing them to avoid conflicting with those defined by the application or another library.

MessagePackAsyncReader

A primitive types reader for the MessagePack format that reads from a PipeReader.

MessagePackAsyncWriter

A primitive types writer for the MessagePack format that writes to a PipeWriter.

MessagePackCode

The core type codes as defined by msgpack.

MessagePackConverter

A non-generic, object-based base class for all message pack converters.

MessagePackConverterAttribute

A class applied to a custom data type to prescribe a custom MessagePackConverter<T> implementation to use for serialization.

MessagePackConverter<T>

An base class for all MessagePack converters.

MessagePackNamingPolicy

Defines a transformation for property names from .NET to msgpack.

MessagePackPrimitives

Primitive msgpack encoding/decoding methods.

MessagePackSerializationException

Represents errors that occur during MessagePack serialization.

MessagePackSerializer

Serializes .NET objects using the MessagePack format.

MessagePackSerializer.StreamingEnumerationOptions<T, TElement>

Options for streaming a sequence of values from a msgpack stream.

MessagePackString

A .NET string together with its msgpack encoding parts, to optimize serialization of well-known, often seen strings such as property names used in a msgpack map object.

ReservedMessagePackExtensionTypeCode

The officially defined msgpack extension type codes.

StructuralEqualityComparer

Provides deep, by-value implementations of IEqualityComparer<T> for arbitrary data types.

Structs

DerivedTypeIdentifier

Acts as a type union between a string and an int, which are the allowed types for sub-type aliases.

Extension

Describes a msgpack extension.

ExtensionHeader

Describes a msgpack extension. This precedes the extension payload itself in the msgpack encoded format.

MessagePackReader

A primitive types reader for the MessagePack format.

MessagePackSerializer.DisposableSerializationContext

A wrapper around SerializationContext that makes disposal easier.

MessagePackSerializer.JsonOptions

A description of how JSON should be formatted when calling one of the ConvertToJson(ref MessagePackReader, TextWriter, JsonOptions?) overloads.

MessagePackStreamingReader

A msgpack decoder that returns error codes rather than throws exceptions when the buffer is incomplete or the token type does not match expectations.

MessagePackStreamingReader.BufferRefresh

A non-ref structure that can be used to recreate a MessagePackStreamingReader after an await expression.

MessagePackValue

A variant type that can represent any of the MessagePack primitives.

MessagePackWriter

A primitive types writer for the MessagePack format.

RawMessagePack

Represents a sequence of raw msgpack bytes.

SerializationContext

Context that flows through the serialization process.

Interfaces

IDeepSecureEqualityComparer<T>

An interface that may be implemented by user-defined types in order to provide their own deep (i.e. giving all values a chance to contribute) hash code.

IMessagePackConverterFactory

A factory for MessagePackConverter<T> objects of arbitrary types.

IMessagePackSerializationCallbacks

An interface that may be implemented to receive callbacks before serialization and after deserialization.

Enums

DerivedTypeIdentifier.AliasType

The types of values that are allowed for use as aliases.

MessagePackPrimitives.DecodeResult

Enumerates the possible outcomes of a read operation.

MessagePackType

https://github.com/msgpack/msgpack/blob/master/spec.md#serialization-type-to-format-conversion.

MessagePackValueKind

An enumeration of all the msgpack primitive value types.

MultiDimensionalArrayFormat

Enumerates the possible formats for serializing multi-dimensional arrays.

ReferencePreservationMode

An enumeration of the modes supported for preserving references in serialized object graphs.

SerializeDefaultValuesPolicy

Specifies the policy for serializing default values.

Delegates

MessagePackAsyncWriter.SyncWriter<T>

The delegate type that may be provided to the Write<TState>(SyncWriter<TState>, TState) method.

MessagePackStreamingReader.GetMoreBytesAsync

A delegate that can be used to get more bytes to complete the operation.