From 2c9a73defea18d5253d7e76def85a654edf952fe Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Mon, 12 Jul 2021 10:26:41 -0600 Subject: Add string interning option This isn't on by default, and while this first trivial implementation allocates every string and passes it through `string.Intern(string)`, many optimizations could be made to it either in this library directly or by apps through overridding the virtual method. Closes #634 --- sandbox/DynamicCodeDumper/DynamicCodeDumper.csproj | 3 ++ .../Formatters/StringInterningFormatter.cs | 25 ++++++++++++++++ .../MessagePack/InternedStringCollection.cs | 34 +++++++++++++++++++++ .../MessagePack/MessagePackSerializerOptions.cs | 27 +++++++++++++++++ .../MessagePack/Resolvers/StandardResolver.cs | 1 + .../Resolvers/StringInterningResolver.cs | 35 ++++++++++++++++++++++ .../MessagePackSerializerOptionsTests.cs | 14 ++++++++- src/MessagePack/net5.0/PublicAPI.Unshipped.txt | 12 ++++++++ .../netcoreapp2.1/PublicAPI.Unshipped.txt | 12 ++++++++ .../netcoreapp3.1/PublicAPI.Unshipped.txt | 12 ++++++++ .../netstandard2.0/PublicAPI.Unshipped.txt | 12 ++++++++ 11 files changed, 186 insertions(+), 1 deletion(-) create mode 100644 src/MessagePack.UnityClient/Assets/Scripts/MessagePack/Formatters/StringInterningFormatter.cs create mode 100644 src/MessagePack.UnityClient/Assets/Scripts/MessagePack/InternedStringCollection.cs create mode 100644 src/MessagePack.UnityClient/Assets/Scripts/MessagePack/Resolvers/StringInterningResolver.cs diff --git a/sandbox/DynamicCodeDumper/DynamicCodeDumper.csproj b/sandbox/DynamicCodeDumper/DynamicCodeDumper.csproj index 4ef220a0..a0252ad3 100644 --- a/sandbox/DynamicCodeDumper/DynamicCodeDumper.csproj +++ b/sandbox/DynamicCodeDumper/DynamicCodeDumper.csproj @@ -72,6 +72,9 @@ Code\MessagePackSerializerOptions.cs + + Code\InternedStringCollection.cs + Code\MessagePackSecurity.cs diff --git a/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/Formatters/StringInterningFormatter.cs b/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/Formatters/StringInterningFormatter.cs new file mode 100644 index 00000000..eb39af15 --- /dev/null +++ b/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/Formatters/StringInterningFormatter.cs @@ -0,0 +1,25 @@ +// Copyright (c) All contributors. All rights reserved. +// Licensed under the MIT license. See LICENSE file in the project root for full license information. + +namespace MessagePack.Formatters +{ + /// + /// A formatter that interns strings on deserialization. + /// + public sealed class StringInterningFormatter : IMessagePackFormatter + { + /// + public string Deserialize(ref MessagePackReader reader, MessagePackSerializerOptions options) + { + if (options.StringInterning is null) + { + return reader.ReadString(); + } + + return options.StringInterning.GetString(ref reader); + } + + /// + public void Serialize(ref MessagePackWriter writer, string value, MessagePackSerializerOptions options) => writer.Write(value); + } +} diff --git a/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/InternedStringCollection.cs b/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/InternedStringCollection.cs new file mode 100644 index 00000000..8218b17c --- /dev/null +++ b/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/InternedStringCollection.cs @@ -0,0 +1,34 @@ +// Copyright (c) All contributors. All rights reserved. +// Licensed under the MIT license. See LICENSE file in the project root for full license information. + +namespace MessagePack +{ + /// + /// Reuses previously created objects wherever possible + /// to reduce memory allocations while deserializing msgpack sequences. + /// + /// + /// This class is thread-safe. + /// Derived types are also expected to be thread-safe. + /// + public class InternedStringCollection + { + /// + /// Reads a string from a given . + /// + /// The reader to read the string from. + /// A string that matches the value at the caller's position on the reader. + /// + /// The default implementation simply interns all strings using . + /// This method may be overridden to: + /// 1) be more selective about which strings should be interned, + /// 2) change where interned strings are stored, + /// 3) avoid the initial string allocation and go straight to the interned string. + /// + public virtual string GetString(ref MessagePackReader reader) + { + string value = reader.ReadString(); + return value is null ? null : string.Intern(value); + } + } +} diff --git a/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/MessagePackSerializerOptions.cs b/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/MessagePackSerializerOptions.cs index ebf1ca43..ed510ff6 100644 --- a/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/MessagePackSerializerOptions.cs +++ b/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/MessagePackSerializerOptions.cs @@ -62,6 +62,7 @@ namespace MessagePack this.AllowAssemblyVersionMismatch = copyFrom.AllowAssemblyVersionMismatch; this.Security = copyFrom.Security; this.SequencePool = copyFrom.SequencePool; + this.StringInterning = copyFrom.StringInterning; } /// @@ -121,6 +122,15 @@ namespace MessagePack /// The default value is the instance. public SequencePool SequencePool { get; private set; } = SequencePool.Shared; + /// + /// Gets an optional collection used for string interning on deserialization. + /// + /// The default value is . + /// + /// When , string interning is disabled. + /// + public InternedStringCollection StringInterning { get; private set; } + /// /// Gets a type given a string representation of the type. /// @@ -289,6 +299,23 @@ namespace MessagePack return result; } + /// + /// Gets a copy of these options with the property set to a new value. + /// + /// The new value for the property. + /// The new instance. + public MessagePackSerializerOptions WithStringInterning(InternedStringCollection value) + { + if (this.StringInterning == value) + { + return this; + } + + var result = this.Clone(); + result.StringInterning = value; + return result; + } + /// /// Creates a clone of this instance with the same properties set. /// diff --git a/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/Resolvers/StandardResolver.cs b/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/Resolvers/StandardResolver.cs index 009e050e..38d8924c 100644 --- a/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/Resolvers/StandardResolver.cs +++ b/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/Resolvers/StandardResolver.cs @@ -283,6 +283,7 @@ namespace MessagePack.Internal public static readonly IFormatterResolver[] DefaultResolvers = new IFormatterResolver[] { BuiltinResolver.Instance, // Try Builtin + StringInterningResolver.Instance, // intern strings if enabled. AttributeFormatterResolver.Instance, // Try use [MessagePackFormatter] #if UNITY_2018_3_OR_NEWER diff --git a/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/Resolvers/StringInterningResolver.cs b/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/Resolvers/StringInterningResolver.cs new file mode 100644 index 00000000..bbe836f2 --- /dev/null +++ b/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/Resolvers/StringInterningResolver.cs @@ -0,0 +1,35 @@ +// Copyright (c) All contributors. All rights reserved. +// Licensed under the MIT license. See LICENSE file in the project root for full license information. + +using MessagePack.Formatters; + +namespace MessagePack.Resolvers +{ + /// + /// Directs strings to be deserialized with the . + /// + public sealed class StringInterningResolver : IFormatterResolver + { + /// + /// The singleton instance that can be used. + /// + public static readonly StringInterningResolver Instance = new StringInterningResolver(); + + private readonly StringInterningFormatter formatter = new StringInterningFormatter(); + + private StringInterningResolver() + { + } + + /// + public IMessagePackFormatter GetFormatter() + { + if (typeof(T) == typeof(string)) + { + return (IMessagePackFormatter)(object)this.formatter; + } + + return null; + } + } +} diff --git a/src/MessagePack.UnityClient/Assets/Scripts/Tests/ShareTests/MessagePackSerializerOptionsTests.cs b/src/MessagePack.UnityClient/Assets/Scripts/Tests/ShareTests/MessagePackSerializerOptionsTests.cs index 96bec149..cee1cfb1 100644 --- a/src/MessagePack.UnityClient/Assets/Scripts/Tests/ShareTests/MessagePackSerializerOptionsTests.cs +++ b/src/MessagePack.UnityClient/Assets/Scripts/Tests/ShareTests/MessagePackSerializerOptionsTests.cs @@ -13,7 +13,19 @@ public class MessagePackSerializerOptionsTests .WithOmitAssemblyVersion(true) .WithResolver(BuiltinResolver.Instance) .WithOldSpec(false) - .WithSecurity(MySecurityOptions.Instance); + .WithSecurity(MySecurityOptions.Instance) + .WithStringInterning(new InternedStringCollection()); + + [Fact] + public void StringInterning() + { + Assert.Null(MessagePackSerializerOptions.Standard.StringInterning); + var collection = new InternedStringCollection(); + Assert.Same(collection, MessagePackSerializerOptions.Standard.WithStringInterning(collection).StringInterning); + + Assert.Same(NonDefaultOptions, NonDefaultOptions.WithStringInterning(NonDefaultOptions.StringInterning)); + Assert.Null(NonDefaultOptions.WithStringInterning(null).StringInterning); + } [Fact] public void AllowAssemblyVersionMismatch() diff --git a/src/MessagePack/net5.0/PublicAPI.Unshipped.txt b/src/MessagePack/net5.0/PublicAPI.Unshipped.txt index 1447ef0d..d2851af1 100644 --- a/src/MessagePack/net5.0/PublicAPI.Unshipped.txt +++ b/src/MessagePack/net5.0/PublicAPI.Unshipped.txt @@ -6,13 +6,23 @@ MessagePack.Formatters.HalfFormatter.Deserialize(ref MessagePack.MessagePackRead MessagePack.Formatters.HalfFormatter.Serialize(ref MessagePack.MessagePackWriter writer, System.Half value, MessagePack.MessagePackSerializerOptions options) -> void MessagePack.Formatters.InterfaceReadOnlySetFormatter MessagePack.Formatters.InterfaceReadOnlySetFormatter.InterfaceReadOnlySetFormatter() -> void +MessagePack.Formatters.StringInterningFormatter +MessagePack.Formatters.StringInterningFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> string +MessagePack.Formatters.StringInterningFormatter.Serialize(ref MessagePack.MessagePackWriter writer, string value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.StringInterningFormatter.StringInterningFormatter() -> void +MessagePack.InternedStringCollection +MessagePack.InternedStringCollection.InternedStringCollection() -> void MessagePack.MessagePackReader.MessagePackReader() -> void MessagePack.MessagePackSerializerOptions.SequencePool.get -> MessagePack.SequencePool +MessagePack.MessagePackSerializerOptions.StringInterning.get -> MessagePack.InternedStringCollection MessagePack.MessagePackSerializerOptions.WithPool(MessagePack.SequencePool pool) -> MessagePack.MessagePackSerializerOptions +MessagePack.MessagePackSerializerOptions.WithStringInterning(MessagePack.InternedStringCollection value) -> MessagePack.MessagePackSerializerOptions MessagePack.MessagePackStreamReader.MessagePackStreamReader(System.IO.Stream stream, bool leaveOpen, MessagePack.SequencePool sequencePool) -> void MessagePack.MessagePackStreamReader.ReadArrayHeaderAsync(System.Threading.CancellationToken cancellationToken) -> System.Threading.Tasks.ValueTask MessagePack.MessagePackStreamReader.ReadMapHeaderAsync(System.Threading.CancellationToken cancellationToken) -> System.Threading.Tasks.ValueTask MessagePack.MessagePackWriter.MessagePackWriter() -> void +MessagePack.Resolvers.StringInterningResolver +MessagePack.Resolvers.StringInterningResolver.GetFormatter() -> MessagePack.Formatters.IMessagePackFormatter MessagePack.SequencePool MessagePack.SequencePool.SequencePool() -> void MessagePack.SequencePool.SequencePool(int maxSize) -> void @@ -21,6 +31,8 @@ MessagePack.TinyJsonException.TinyJsonException(System.Runtime.Serialization.Ser static MessagePack.Nil.operator !=(MessagePack.Nil left, MessagePack.Nil right) -> bool static MessagePack.Nil.operator ==(MessagePack.Nil left, MessagePack.Nil right) -> bool static readonly MessagePack.Formatters.HalfFormatter.Instance -> MessagePack.Formatters.IMessagePackFormatter +static readonly MessagePack.Resolvers.StringInterningResolver.Instance -> MessagePack.Resolvers.StringInterningResolver +virtual MessagePack.InternedStringCollection.GetString(ref MessagePack.MessagePackReader reader) -> string virtual MessagePack.MessagePackStreamReader.Dispose(bool disposing) -> void MessagePack.Formatters.GenericEnumerableFormatter MessagePack.Formatters.GenericEnumerableFormatter.GenericEnumerableFormatter() -> void diff --git a/src/MessagePack/netcoreapp2.1/PublicAPI.Unshipped.txt b/src/MessagePack/netcoreapp2.1/PublicAPI.Unshipped.txt index f053d3cd..a6bc9cd9 100644 --- a/src/MessagePack/netcoreapp2.1/PublicAPI.Unshipped.txt +++ b/src/MessagePack/netcoreapp2.1/PublicAPI.Unshipped.txt @@ -1,11 +1,21 @@ MessagePack.ExtensionHeader.ExtensionHeader() -> void MessagePack.ExtensionResult.ExtensionResult() -> void MessagePack.FormatterNotRegisteredException.FormatterNotRegisteredException(System.Runtime.Serialization.SerializationInfo info, System.Runtime.Serialization.StreamingContext context) -> void +MessagePack.Formatters.StringInterningFormatter +MessagePack.Formatters.StringInterningFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> string +MessagePack.Formatters.StringInterningFormatter.Serialize(ref MessagePack.MessagePackWriter writer, string value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.StringInterningFormatter.StringInterningFormatter() -> void +MessagePack.InternedStringCollection +MessagePack.InternedStringCollection.InternedStringCollection() -> void MessagePack.MessagePackReader.MessagePackReader() -> void MessagePack.MessagePackSerializerOptions.SequencePool.get -> MessagePack.SequencePool +MessagePack.MessagePackSerializerOptions.StringInterning.get -> MessagePack.InternedStringCollection MessagePack.MessagePackSerializerOptions.WithPool(MessagePack.SequencePool pool) -> MessagePack.MessagePackSerializerOptions +MessagePack.MessagePackSerializerOptions.WithStringInterning(MessagePack.InternedStringCollection value) -> MessagePack.MessagePackSerializerOptions MessagePack.MessagePackStreamReader.MessagePackStreamReader(System.IO.Stream stream, bool leaveOpen, MessagePack.SequencePool sequencePool) -> void MessagePack.MessagePackWriter.MessagePackWriter() -> void +MessagePack.Resolvers.StringInterningResolver +MessagePack.Resolvers.StringInterningResolver.GetFormatter() -> MessagePack.Formatters.IMessagePackFormatter MessagePack.SequencePool MessagePack.SequencePool.SequencePool() -> void MessagePack.SequencePool.SequencePool(int maxSize) -> void @@ -13,6 +23,8 @@ MessagePack.SequencePool.SequencePool(int maxSize, System.Buffers.ArrayPool void static MessagePack.Nil.operator !=(MessagePack.Nil left, MessagePack.Nil right) -> bool static MessagePack.Nil.operator ==(MessagePack.Nil left, MessagePack.Nil right) -> bool +static readonly MessagePack.Resolvers.StringInterningResolver.Instance -> MessagePack.Resolvers.StringInterningResolver +virtual MessagePack.InternedStringCollection.GetString(ref MessagePack.MessagePackReader reader) -> string virtual MessagePack.MessagePackStreamReader.Dispose(bool disposing) -> void MessagePack.Formatters.GenericEnumerableFormatter MessagePack.Formatters.GenericEnumerableFormatter.GenericEnumerableFormatter() -> void diff --git a/src/MessagePack/netcoreapp3.1/PublicAPI.Unshipped.txt b/src/MessagePack/netcoreapp3.1/PublicAPI.Unshipped.txt index 73b4e7c0..c311155b 100644 --- a/src/MessagePack/netcoreapp3.1/PublicAPI.Unshipped.txt +++ b/src/MessagePack/netcoreapp3.1/PublicAPI.Unshipped.txt @@ -1,13 +1,23 @@ MessagePack.ExtensionHeader.ExtensionHeader() -> void MessagePack.ExtensionResult.ExtensionResult() -> void MessagePack.FormatterNotRegisteredException.FormatterNotRegisteredException(System.Runtime.Serialization.SerializationInfo info, System.Runtime.Serialization.StreamingContext context) -> void +MessagePack.Formatters.StringInterningFormatter +MessagePack.Formatters.StringInterningFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> string +MessagePack.Formatters.StringInterningFormatter.Serialize(ref MessagePack.MessagePackWriter writer, string value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.StringInterningFormatter.StringInterningFormatter() -> void +MessagePack.InternedStringCollection +MessagePack.InternedStringCollection.InternedStringCollection() -> void MessagePack.MessagePackReader.MessagePackReader() -> void MessagePack.MessagePackSerializerOptions.SequencePool.get -> MessagePack.SequencePool +MessagePack.MessagePackSerializerOptions.StringInterning.get -> MessagePack.InternedStringCollection MessagePack.MessagePackSerializerOptions.WithPool(MessagePack.SequencePool pool) -> MessagePack.MessagePackSerializerOptions +MessagePack.MessagePackSerializerOptions.WithStringInterning(MessagePack.InternedStringCollection value) -> MessagePack.MessagePackSerializerOptions MessagePack.MessagePackStreamReader.MessagePackStreamReader(System.IO.Stream stream, bool leaveOpen, MessagePack.SequencePool sequencePool) -> void MessagePack.MessagePackStreamReader.ReadArrayHeaderAsync(System.Threading.CancellationToken cancellationToken) -> System.Threading.Tasks.ValueTask MessagePack.MessagePackStreamReader.ReadMapHeaderAsync(System.Threading.CancellationToken cancellationToken) -> System.Threading.Tasks.ValueTask MessagePack.MessagePackWriter.MessagePackWriter() -> void +MessagePack.Resolvers.StringInterningResolver +MessagePack.Resolvers.StringInterningResolver.GetFormatter() -> MessagePack.Formatters.IMessagePackFormatter MessagePack.SequencePool MessagePack.SequencePool.SequencePool() -> void MessagePack.SequencePool.SequencePool(int maxSize) -> void @@ -15,6 +25,8 @@ MessagePack.SequencePool.SequencePool(int maxSize, System.Buffers.ArrayPool void static MessagePack.Nil.operator !=(MessagePack.Nil left, MessagePack.Nil right) -> bool static MessagePack.Nil.operator ==(MessagePack.Nil left, MessagePack.Nil right) -> bool +static readonly MessagePack.Resolvers.StringInterningResolver.Instance -> MessagePack.Resolvers.StringInterningResolver +virtual MessagePack.InternedStringCollection.GetString(ref MessagePack.MessagePackReader reader) -> string virtual MessagePack.MessagePackStreamReader.Dispose(bool disposing) -> void MessagePack.Formatters.GenericEnumerableFormatter MessagePack.Formatters.GenericEnumerableFormatter.GenericEnumerableFormatter() -> void diff --git a/src/MessagePack/netstandard2.0/PublicAPI.Unshipped.txt b/src/MessagePack/netstandard2.0/PublicAPI.Unshipped.txt index 73b4e7c0..c311155b 100644 --- a/src/MessagePack/netstandard2.0/PublicAPI.Unshipped.txt +++ b/src/MessagePack/netstandard2.0/PublicAPI.Unshipped.txt @@ -1,13 +1,23 @@ MessagePack.ExtensionHeader.ExtensionHeader() -> void MessagePack.ExtensionResult.ExtensionResult() -> void MessagePack.FormatterNotRegisteredException.FormatterNotRegisteredException(System.Runtime.Serialization.SerializationInfo info, System.Runtime.Serialization.StreamingContext context) -> void +MessagePack.Formatters.StringInterningFormatter +MessagePack.Formatters.StringInterningFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> string +MessagePack.Formatters.StringInterningFormatter.Serialize(ref MessagePack.MessagePackWriter writer, string value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.StringInterningFormatter.StringInterningFormatter() -> void +MessagePack.InternedStringCollection +MessagePack.InternedStringCollection.InternedStringCollection() -> void MessagePack.MessagePackReader.MessagePackReader() -> void MessagePack.MessagePackSerializerOptions.SequencePool.get -> MessagePack.SequencePool +MessagePack.MessagePackSerializerOptions.StringInterning.get -> MessagePack.InternedStringCollection MessagePack.MessagePackSerializerOptions.WithPool(MessagePack.SequencePool pool) -> MessagePack.MessagePackSerializerOptions +MessagePack.MessagePackSerializerOptions.WithStringInterning(MessagePack.InternedStringCollection value) -> MessagePack.MessagePackSerializerOptions MessagePack.MessagePackStreamReader.MessagePackStreamReader(System.IO.Stream stream, bool leaveOpen, MessagePack.SequencePool sequencePool) -> void MessagePack.MessagePackStreamReader.ReadArrayHeaderAsync(System.Threading.CancellationToken cancellationToken) -> System.Threading.Tasks.ValueTask MessagePack.MessagePackStreamReader.ReadMapHeaderAsync(System.Threading.CancellationToken cancellationToken) -> System.Threading.Tasks.ValueTask MessagePack.MessagePackWriter.MessagePackWriter() -> void +MessagePack.Resolvers.StringInterningResolver +MessagePack.Resolvers.StringInterningResolver.GetFormatter() -> MessagePack.Formatters.IMessagePackFormatter MessagePack.SequencePool MessagePack.SequencePool.SequencePool() -> void MessagePack.SequencePool.SequencePool(int maxSize) -> void @@ -15,6 +25,8 @@ MessagePack.SequencePool.SequencePool(int maxSize, System.Buffers.ArrayPool void static MessagePack.Nil.operator !=(MessagePack.Nil left, MessagePack.Nil right) -> bool static MessagePack.Nil.operator ==(MessagePack.Nil left, MessagePack.Nil right) -> bool +static readonly MessagePack.Resolvers.StringInterningResolver.Instance -> MessagePack.Resolvers.StringInterningResolver +virtual MessagePack.InternedStringCollection.GetString(ref MessagePack.MessagePackReader reader) -> string virtual MessagePack.MessagePackStreamReader.Dispose(bool disposing) -> void MessagePack.Formatters.GenericEnumerableFormatter MessagePack.Formatters.GenericEnumerableFormatter.GenericEnumerableFormatter() -> void -- cgit v1.2.3 From 0f1a56bd7a435f0aa15f7215bc85113d2a2cbe39 Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Mon, 12 Jul 2021 13:40:16 -0600 Subject: Switch string interning to `Microsoft.NET.StringTools` This gets us a few things: 1. Intern strings without wastefully allocating them first in the common fast paths. 1. Switch to a string collection that retains only weak references. --- sandbox/DynamicCodeDumper/DynamicCodeDumper.csproj | 3 +- .../Formatters/StringInterningFormatter.cs | 5 +++ .../MessagePack/InternedStringCollection.cs | 36 +++++++++++++-- .../Assets/Scripts/MessagePack/MessagePack.asmdef | 3 +- .../ShareTests/InternedStringCollectionTests.cs | 37 ++++++++++++++++ .../ShareTests/StringInterningResolverTests.cs | 51 ++++++++++++++++++++++ src/MessagePack.UnityClient/copy_assets.bat | 1 + src/MessagePack.UnityClient/copy_assets.sh | 1 + src/MessagePack/MessagePack.csproj | 3 +- 9 files changed, 132 insertions(+), 8 deletions(-) create mode 100644 src/MessagePack.UnityClient/Assets/Scripts/Tests/ShareTests/InternedStringCollectionTests.cs create mode 100644 src/MessagePack.UnityClient/Assets/Scripts/Tests/ShareTests/StringInterningResolverTests.cs diff --git a/sandbox/DynamicCodeDumper/DynamicCodeDumper.csproj b/sandbox/DynamicCodeDumper/DynamicCodeDumper.csproj index a0252ad3..3bca0b87 100644 --- a/sandbox/DynamicCodeDumper/DynamicCodeDumper.csproj +++ b/sandbox/DynamicCodeDumper/DynamicCodeDumper.csproj @@ -144,7 +144,6 @@ - - + diff --git a/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/Formatters/StringInterningFormatter.cs b/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/Formatters/StringInterningFormatter.cs index eb39af15..984b9673 100644 --- a/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/Formatters/StringInterningFormatter.cs +++ b/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/Formatters/StringInterningFormatter.cs @@ -11,6 +11,11 @@ namespace MessagePack.Formatters /// public string Deserialize(ref MessagePackReader reader, MessagePackSerializerOptions options) { + if (reader.TryReadNil()) + { + return null; + } + if (options.StringInterning is null) { return reader.ReadString(); diff --git a/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/InternedStringCollection.cs b/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/InternedStringCollection.cs index 8218b17c..55a0a49d 100644 --- a/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/InternedStringCollection.cs +++ b/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/InternedStringCollection.cs @@ -1,6 +1,9 @@ // Copyright (c) All contributors. All rights reserved. // Licensed under the MIT license. See LICENSE file in the project root for full license information. +using System; +using Microsoft.NET.StringTools; + namespace MessagePack { /// @@ -16,7 +19,7 @@ namespace MessagePack /// /// Reads a string from a given . /// - /// The reader to read the string from. + /// The reader to read the string from. This string is never expected to be since the caller can trivially filter that case out. /// A string that matches the value at the caller's position on the reader. /// /// The default implementation simply interns all strings using . @@ -27,8 +30,35 @@ namespace MessagePack /// public virtual string GetString(ref MessagePackReader reader) { - string value = reader.ReadString(); - return value is null ? null : string.Intern(value); + MessagePackReader retryReader = reader; + if (reader.TryReadStringSpan(out ReadOnlySpan bytes)) + { + if (bytes.Length < 4096) + { + Span chars = stackalloc char[bytes.Length]; + int charLength; +#if SPAN_BUILTIN + charLength = StringEncoding.UTF8.GetChars(bytes, chars); +#else + unsafe + { + fixed (byte* pBytes = bytes) + fixed (char* pChars = chars) + { + charLength = StringEncoding.UTF8.GetChars(pBytes, bytes.Length, pChars, chars.Length); + } + } +#endif + return Strings.WeakIntern(chars.Slice(0, charLength)); + } + else + { + // Rewind the reader to the start of the string because we're taking the slow path. + reader = retryReader; + } + } + + return Strings.WeakIntern(reader.ReadString()); } } } diff --git a/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/MessagePack.asmdef b/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/MessagePack.asmdef index f1e851eb..ff7f5b38 100644 --- a/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/MessagePack.asmdef +++ b/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/MessagePack.asmdef @@ -13,9 +13,10 @@ "System.Buffers.dll", "System.Threading.Tasks.Extensions.dll", "System.Runtime.CompilerServices.Unsafe.dll", + "Microsoft.NET.StringTools.dll", "System.Runtime.Extensions.dll" ], "autoReferenced": true, "defineConstraints": [], "versionDefines": [] -} \ No newline at end of file +} diff --git a/src/MessagePack.UnityClient/Assets/Scripts/Tests/ShareTests/InternedStringCollectionTests.cs b/src/MessagePack.UnityClient/Assets/Scripts/Tests/ShareTests/InternedStringCollectionTests.cs new file mode 100644 index 00000000..8c840d6e --- /dev/null +++ b/src/MessagePack.UnityClient/Assets/Scripts/Tests/ShareTests/InternedStringCollectionTests.cs @@ -0,0 +1,37 @@ +// Copyright (c) All contributors. All rights reserved. +// Licensed under the MIT license. See LICENSE file in the project root for full license information. + +using Nerdbank.Streams; +using Xunit; + +namespace MessagePack.Tests +{ + public class InternedStringCollectionTests + { + [Theory] + [InlineData(3)] + [InlineData(1024 * 1024)] + public void EquivalentStringsGetSharedInstance(int length) + { + string originalValue1 = new string('a', length); + string originalValue3 = new string('b', length); + var seq = new Sequence(); + var writer = new MessagePackWriter(seq); + writer.Write(originalValue1); + writer.Write(originalValue1); + writer.Write(originalValue3); + writer.Flush(); + + var reader = new MessagePackReader(seq); + var collection = new InternedStringCollection(); + string value1 = collection.GetString(ref reader); + string value2 = collection.GetString(ref reader); + string value3 = collection.GetString(ref reader); + + Assert.Equal(originalValue1, value1); + Assert.Equal(originalValue3, value3); + + Assert.Same(value1, value2); + } + } +} diff --git a/src/MessagePack.UnityClient/Assets/Scripts/Tests/ShareTests/StringInterningResolverTests.cs b/src/MessagePack.UnityClient/Assets/Scripts/Tests/ShareTests/StringInterningResolverTests.cs new file mode 100644 index 00000000..b429d564 --- /dev/null +++ b/src/MessagePack.UnityClient/Assets/Scripts/Tests/ShareTests/StringInterningResolverTests.cs @@ -0,0 +1,51 @@ +// Copyright (c) All contributors. All rights reserved. +// Licensed under the MIT license. See LICENSE file in the project root for full license information. + +using MessagePack.Resolvers; +using Nerdbank.Streams; +using Xunit; + +namespace MessagePack.Tests +{ + public class StringInterningResolverTests + { + [Fact] + public void NullString() + { + var seq = new Sequence(); + var writer = new MessagePackWriter(seq); + writer.WriteNil(); + writer.Flush(); + + var reader = new MessagePackReader(seq); + var options = MessagePackSerializerOptions.Standard.WithStringInterning(new InternedStringCollection()); + string result = StringInterningResolver.Instance.GetFormatter().Deserialize(ref reader, options); + Assert.Null(result); + } + + [Fact] + public void EquivalentStringsGetSharedInstance() + { + string originalValue1 = new string('a', 5); + string originalValue3 = new string('b', 5); + var seq = new Sequence(); + var writer = new MessagePackWriter(seq); + writer.Write(originalValue1); + writer.Write(originalValue1); + writer.Write(originalValue3); + writer.Flush(); + + var reader = new MessagePackReader(seq); + var options = MessagePackSerializerOptions.Standard.WithStringInterning(new InternedStringCollection()); + var formatter = StringInterningResolver.Instance.GetFormatter(); + string value1 = formatter.Deserialize(ref reader, options); + string value2 = formatter.Deserialize(ref reader, options); + string value3 = formatter.Deserialize(ref reader, options); + + Assert.Equal(originalValue1, value1); + Assert.Equal(originalValue3, value3); + + Assert.Same(value1, value2); + } + } +} diff --git a/src/MessagePack.UnityClient/copy_assets.bat b/src/MessagePack.UnityClient/copy_assets.bat index bb7232df..c2b03f0e 100644 --- a/src/MessagePack.UnityClient/copy_assets.bat +++ b/src/MessagePack.UnityClient/copy_assets.bat @@ -11,6 +11,7 @@ echo F | xcopy "..\..\bin\MessagePack\release\netstandard2.0\publish\System.Buffers.dll" ".\Assets\Plugins\System.Buffers.dll" /Y /I echo F | xcopy "..\..\bin\MessagePack\release\netstandard2.0\publish\System.Memory.dll" ".\Assets\Plugins\System.Memory.dll" /Y /I echo F | xcopy "..\..\bin\MessagePack\release\netstandard2.0\publish\System.Runtime.CompilerServices.Unsafe.dll" ".\Assets\Plugins\System.Runtime.CompilerServices.Unsafe.dll" /Y /I +echo F | xcopy "..\..\bin\MessagePack\release\netstandard2.0\publish\Microsoft.NET.StringTools.dll" ".\Assets\Plugins\Microsoft.NET.StringTools.dll" /Y /I echo F | xcopy "..\..\bin\MessagePack\release\netstandard2.0\publish\System.Threading.Tasks.Extensions.dll" ".\Assets\Plugins\System.Threading.Tasks.Extensions.dll" /Y /I @popd diff --git a/src/MessagePack.UnityClient/copy_assets.sh b/src/MessagePack.UnityClient/copy_assets.sh index 9912ab97..7743fd66 100755 --- a/src/MessagePack.UnityClient/copy_assets.sh +++ b/src/MessagePack.UnityClient/copy_assets.sh @@ -21,4 +21,5 @@ fi cp ${SCRIPT_DIR}/../../bin/MessagePack/${BUILDCONFIGURATION}/netstandard2.0/publish/System.Buffers.dll ${SCRIPT_DIR}/Assets/Plugins/System.Buffers.dll cp ${SCRIPT_DIR}/../../bin/MessagePack/${BUILDCONFIGURATION}/netstandard2.0/publish/System.Memory.dll ${SCRIPT_DIR}/Assets/Plugins/System.Memory.dll cp ${SCRIPT_DIR}/../../bin/MessagePack/${BUILDCONFIGURATION}/netstandard2.0/publish/System.Runtime.CompilerServices.Unsafe.dll ${SCRIPT_DIR}/Assets/Plugins/System.Runtime.CompilerServices.Unsafe.dll +cp ${SCRIPT_DIR}/../../bin/MessagePack/${BUILDCONFIGURATION}/netstandard2.0/publish/Microsoft.NET.StringTools.dll ${SCRIPT_DIR}/Assets/Plugins/Microsoft.NET.StringTools.dll cp ${SCRIPT_DIR}/../../bin/MessagePack/${BUILDCONFIGURATION}/netstandard2.0/publish/System.Threading.Tasks.Extensions.dll ${SCRIPT_DIR}/Assets/Plugins/System.Threading.Tasks.Extensions.dll diff --git a/src/MessagePack/MessagePack.csproj b/src/MessagePack/MessagePack.csproj index 7a2df01d..d8ab9f42 100644 --- a/src/MessagePack/MessagePack.csproj +++ b/src/MessagePack/MessagePack.csproj @@ -34,6 +34,7 @@ + @@ -41,8 +42,6 @@ - - -- cgit v1.2.3 From f5edd630a3139a4b45aeac25386800c37019cb42 Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Tue, 13 Jul 2021 17:05:02 -0600 Subject: String interning on by default Also revert the Options changes. If the app needs to customize string interning, they can do so by changing the resolver to their own formatter. --- sandbox/DynamicCodeDumper/DynamicCodeDumper.csproj | 3 - .../Formatters/StringInterningFormatter.cs | 38 ++++++++++++- .../MessagePack/InternedStringCollection.cs | 64 ---------------------- .../MessagePack/MessagePackSerializerOptions.cs | 27 --------- .../MessagePack/Resolvers/BuiltinResolver.cs | 2 +- .../MessagePack/Resolvers/StandardResolver.cs | 1 - .../Resolvers/StringInterningResolver.cs | 35 ------------ .../ShareTests/InternedStringCollectionTests.cs | 37 ------------- .../MessagePackSerializerOptionsTests.cs | 14 +---- .../ShareTests/StringInterningResolverTests.cs | 22 ++++---- src/MessagePack/net5.0/PublicAPI.Unshipped.txt | 12 +--- .../netcoreapp2.1/PublicAPI.Unshipped.txt | 12 +--- .../netcoreapp3.1/PublicAPI.Unshipped.txt | 12 +--- .../netstandard2.0/PublicAPI.Unshipped.txt | 12 +--- 14 files changed, 56 insertions(+), 235 deletions(-) delete mode 100644 src/MessagePack.UnityClient/Assets/Scripts/MessagePack/InternedStringCollection.cs delete mode 100644 src/MessagePack.UnityClient/Assets/Scripts/MessagePack/Resolvers/StringInterningResolver.cs delete mode 100644 src/MessagePack.UnityClient/Assets/Scripts/Tests/ShareTests/InternedStringCollectionTests.cs diff --git a/sandbox/DynamicCodeDumper/DynamicCodeDumper.csproj b/sandbox/DynamicCodeDumper/DynamicCodeDumper.csproj index 3bca0b87..7c86c1eb 100644 --- a/sandbox/DynamicCodeDumper/DynamicCodeDumper.csproj +++ b/sandbox/DynamicCodeDumper/DynamicCodeDumper.csproj @@ -72,9 +72,6 @@ Code\MessagePackSerializerOptions.cs - - Code\InternedStringCollection.cs - Code\MessagePackSecurity.cs diff --git a/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/Formatters/StringInterningFormatter.cs b/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/Formatters/StringInterningFormatter.cs index 984b9673..8af3de36 100644 --- a/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/Formatters/StringInterningFormatter.cs +++ b/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/Formatters/StringInterningFormatter.cs @@ -1,6 +1,9 @@ // Copyright (c) All contributors. All rights reserved. // Licensed under the MIT license. See LICENSE file in the project root for full license information. +using System; +using Microsoft.NET.StringTools; + namespace MessagePack.Formatters { /// @@ -8,6 +11,12 @@ namespace MessagePack.Formatters /// public sealed class StringInterningFormatter : IMessagePackFormatter { + public static readonly StringInterningFormatter Instance = new StringInterningFormatter(); + + private StringInterningFormatter() + { + } + /// public string Deserialize(ref MessagePackReader reader, MessagePackSerializerOptions options) { @@ -16,12 +25,35 @@ namespace MessagePack.Formatters return null; } - if (options.StringInterning is null) + MessagePackReader retryReader = reader; + if (reader.TryReadStringSpan(out ReadOnlySpan bytes)) { - return reader.ReadString(); + if (bytes.Length < 4096) + { + Span chars = stackalloc char[bytes.Length]; + int charLength; +#if SPAN_BUILTIN + charLength = StringEncoding.UTF8.GetChars(bytes, chars); +#else + unsafe + { + fixed (byte* pBytes = bytes) + fixed (char* pChars = chars) + { + charLength = StringEncoding.UTF8.GetChars(pBytes, bytes.Length, pChars, chars.Length); + } + } +#endif + return Strings.WeakIntern(chars.Slice(0, charLength)); + } + else + { + // Rewind the reader to the start of the string because we're taking the slow path. + reader = retryReader; + } } - return options.StringInterning.GetString(ref reader); + return Strings.WeakIntern(reader.ReadString()); } /// diff --git a/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/InternedStringCollection.cs b/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/InternedStringCollection.cs deleted file mode 100644 index 55a0a49d..00000000 --- a/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/InternedStringCollection.cs +++ /dev/null @@ -1,64 +0,0 @@ -// Copyright (c) All contributors. All rights reserved. -// Licensed under the MIT license. See LICENSE file in the project root for full license information. - -using System; -using Microsoft.NET.StringTools; - -namespace MessagePack -{ - /// - /// Reuses previously created objects wherever possible - /// to reduce memory allocations while deserializing msgpack sequences. - /// - /// - /// This class is thread-safe. - /// Derived types are also expected to be thread-safe. - /// - public class InternedStringCollection - { - /// - /// Reads a string from a given . - /// - /// The reader to read the string from. This string is never expected to be since the caller can trivially filter that case out. - /// A string that matches the value at the caller's position on the reader. - /// - /// The default implementation simply interns all strings using . - /// This method may be overridden to: - /// 1) be more selective about which strings should be interned, - /// 2) change where interned strings are stored, - /// 3) avoid the initial string allocation and go straight to the interned string. - /// - public virtual string GetString(ref MessagePackReader reader) - { - MessagePackReader retryReader = reader; - if (reader.TryReadStringSpan(out ReadOnlySpan bytes)) - { - if (bytes.Length < 4096) - { - Span chars = stackalloc char[bytes.Length]; - int charLength; -#if SPAN_BUILTIN - charLength = StringEncoding.UTF8.GetChars(bytes, chars); -#else - unsafe - { - fixed (byte* pBytes = bytes) - fixed (char* pChars = chars) - { - charLength = StringEncoding.UTF8.GetChars(pBytes, bytes.Length, pChars, chars.Length); - } - } -#endif - return Strings.WeakIntern(chars.Slice(0, charLength)); - } - else - { - // Rewind the reader to the start of the string because we're taking the slow path. - reader = retryReader; - } - } - - return Strings.WeakIntern(reader.ReadString()); - } - } -} diff --git a/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/MessagePackSerializerOptions.cs b/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/MessagePackSerializerOptions.cs index ed510ff6..ebf1ca43 100644 --- a/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/MessagePackSerializerOptions.cs +++ b/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/MessagePackSerializerOptions.cs @@ -62,7 +62,6 @@ namespace MessagePack this.AllowAssemblyVersionMismatch = copyFrom.AllowAssemblyVersionMismatch; this.Security = copyFrom.Security; this.SequencePool = copyFrom.SequencePool; - this.StringInterning = copyFrom.StringInterning; } /// @@ -122,15 +121,6 @@ namespace MessagePack /// The default value is the instance. public SequencePool SequencePool { get; private set; } = SequencePool.Shared; - /// - /// Gets an optional collection used for string interning on deserialization. - /// - /// The default value is . - /// - /// When , string interning is disabled. - /// - public InternedStringCollection StringInterning { get; private set; } - /// /// Gets a type given a string representation of the type. /// @@ -299,23 +289,6 @@ namespace MessagePack return result; } - /// - /// Gets a copy of these options with the property set to a new value. - /// - /// The new value for the property. - /// The new instance. - public MessagePackSerializerOptions WithStringInterning(InternedStringCollection value) - { - if (this.StringInterning == value) - { - return this; - } - - var result = this.Clone(); - result.StringInterning = value; - return result; - } - /// /// Creates a clone of this instance with the same properties set. /// diff --git a/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/Resolvers/BuiltinResolver.cs b/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/Resolvers/BuiltinResolver.cs index 000b9fbd..a613126b 100644 --- a/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/Resolvers/BuiltinResolver.cs +++ b/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/Resolvers/BuiltinResolver.cs @@ -82,7 +82,7 @@ namespace MessagePack.Internal { typeof(char?), NullableCharFormatter.Instance }, // StandardClassLibraryFormatter - { typeof(string), NullableStringFormatter.Instance }, + { typeof(string), StringInterningFormatter.Instance }, { typeof(decimal), DecimalFormatter.Instance }, { typeof(decimal?), new StaticNullableFormatter(DecimalFormatter.Instance) }, { typeof(TimeSpan), TimeSpanFormatter.Instance }, diff --git a/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/Resolvers/StandardResolver.cs b/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/Resolvers/StandardResolver.cs index 38d8924c..009e050e 100644 --- a/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/Resolvers/StandardResolver.cs +++ b/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/Resolvers/StandardResolver.cs @@ -283,7 +283,6 @@ namespace MessagePack.Internal public static readonly IFormatterResolver[] DefaultResolvers = new IFormatterResolver[] { BuiltinResolver.Instance, // Try Builtin - StringInterningResolver.Instance, // intern strings if enabled. AttributeFormatterResolver.Instance, // Try use [MessagePackFormatter] #if UNITY_2018_3_OR_NEWER diff --git a/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/Resolvers/StringInterningResolver.cs b/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/Resolvers/StringInterningResolver.cs deleted file mode 100644 index bbe836f2..00000000 --- a/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/Resolvers/StringInterningResolver.cs +++ /dev/null @@ -1,35 +0,0 @@ -// Copyright (c) All contributors. All rights reserved. -// Licensed under the MIT license. See LICENSE file in the project root for full license information. - -using MessagePack.Formatters; - -namespace MessagePack.Resolvers -{ - /// - /// Directs strings to be deserialized with the . - /// - public sealed class StringInterningResolver : IFormatterResolver - { - /// - /// The singleton instance that can be used. - /// - public static readonly StringInterningResolver Instance = new StringInterningResolver(); - - private readonly StringInterningFormatter formatter = new StringInterningFormatter(); - - private StringInterningResolver() - { - } - - /// - public IMessagePackFormatter GetFormatter() - { - if (typeof(T) == typeof(string)) - { - return (IMessagePackFormatter)(object)this.formatter; - } - - return null; - } - } -} diff --git a/src/MessagePack.UnityClient/Assets/Scripts/Tests/ShareTests/InternedStringCollectionTests.cs b/src/MessagePack.UnityClient/Assets/Scripts/Tests/ShareTests/InternedStringCollectionTests.cs deleted file mode 100644 index 8c840d6e..00000000 --- a/src/MessagePack.UnityClient/Assets/Scripts/Tests/ShareTests/InternedStringCollectionTests.cs +++ /dev/null @@ -1,37 +0,0 @@ -// Copyright (c) All contributors. All rights reserved. -// Licensed under the MIT license. See LICENSE file in the project root for full license information. - -using Nerdbank.Streams; -using Xunit; - -namespace MessagePack.Tests -{ - public class InternedStringCollectionTests - { - [Theory] - [InlineData(3)] - [InlineData(1024 * 1024)] - public void EquivalentStringsGetSharedInstance(int length) - { - string originalValue1 = new string('a', length); - string originalValue3 = new string('b', length); - var seq = new Sequence(); - var writer = new MessagePackWriter(seq); - writer.Write(originalValue1); - writer.Write(originalValue1); - writer.Write(originalValue3); - writer.Flush(); - - var reader = new MessagePackReader(seq); - var collection = new InternedStringCollection(); - string value1 = collection.GetString(ref reader); - string value2 = collection.GetString(ref reader); - string value3 = collection.GetString(ref reader); - - Assert.Equal(originalValue1, value1); - Assert.Equal(originalValue3, value3); - - Assert.Same(value1, value2); - } - } -} diff --git a/src/MessagePack.UnityClient/Assets/Scripts/Tests/ShareTests/MessagePackSerializerOptionsTests.cs b/src/MessagePack.UnityClient/Assets/Scripts/Tests/ShareTests/MessagePackSerializerOptionsTests.cs index cee1cfb1..96bec149 100644 --- a/src/MessagePack.UnityClient/Assets/Scripts/Tests/ShareTests/MessagePackSerializerOptionsTests.cs +++ b/src/MessagePack.UnityClient/Assets/Scripts/Tests/ShareTests/MessagePackSerializerOptionsTests.cs @@ -13,19 +13,7 @@ public class MessagePackSerializerOptionsTests .WithOmitAssemblyVersion(true) .WithResolver(BuiltinResolver.Instance) .WithOldSpec(false) - .WithSecurity(MySecurityOptions.Instance) - .WithStringInterning(new InternedStringCollection()); - - [Fact] - public void StringInterning() - { - Assert.Null(MessagePackSerializerOptions.Standard.StringInterning); - var collection = new InternedStringCollection(); - Assert.Same(collection, MessagePackSerializerOptions.Standard.WithStringInterning(collection).StringInterning); - - Assert.Same(NonDefaultOptions, NonDefaultOptions.WithStringInterning(NonDefaultOptions.StringInterning)); - Assert.Null(NonDefaultOptions.WithStringInterning(null).StringInterning); - } + .WithSecurity(MySecurityOptions.Instance); [Fact] public void AllowAssemblyVersionMismatch() diff --git a/src/MessagePack.UnityClient/Assets/Scripts/Tests/ShareTests/StringInterningResolverTests.cs b/src/MessagePack.UnityClient/Assets/Scripts/Tests/ShareTests/StringInterningResolverTests.cs index b429d564..e2b51250 100644 --- a/src/MessagePack.UnityClient/Assets/Scripts/Tests/ShareTests/StringInterningResolverTests.cs +++ b/src/MessagePack.UnityClient/Assets/Scripts/Tests/ShareTests/StringInterningResolverTests.cs @@ -18,16 +18,17 @@ namespace MessagePack.Tests writer.Flush(); var reader = new MessagePackReader(seq); - var options = MessagePackSerializerOptions.Standard.WithStringInterning(new InternedStringCollection()); - string result = StringInterningResolver.Instance.GetFormatter().Deserialize(ref reader, options); + string result = StandardResolver.Instance.GetFormatter().Deserialize(ref reader, MessagePackSerializerOptions.Standard); Assert.Null(result); } - [Fact] - public void EquivalentStringsGetSharedInstance() + [Theory] + [InlineData(3)] + [InlineData(1024 * 1024)] + public void EquivalentStringsGetSharedInstance(int length) { - string originalValue1 = new string('a', 5); - string originalValue3 = new string('b', 5); + string originalValue1 = new string('a', length); + string originalValue3 = new string('b', length); var seq = new Sequence(); var writer = new MessagePackWriter(seq); writer.Write(originalValue1); @@ -36,11 +37,10 @@ namespace MessagePack.Tests writer.Flush(); var reader = new MessagePackReader(seq); - var options = MessagePackSerializerOptions.Standard.WithStringInterning(new InternedStringCollection()); - var formatter = StringInterningResolver.Instance.GetFormatter(); - string value1 = formatter.Deserialize(ref reader, options); - string value2 = formatter.Deserialize(ref reader, options); - string value3 = formatter.Deserialize(ref reader, options); + var formatter = StandardResolver.Instance.GetFormatter(); + string value1 = formatter.Deserialize(ref reader, MessagePackSerializerOptions.Standard); + string value2 = formatter.Deserialize(ref reader, MessagePackSerializerOptions.Standard); + string value3 = formatter.Deserialize(ref reader, MessagePackSerializerOptions.Standard); Assert.Equal(originalValue1, value1); Assert.Equal(originalValue3, value3); diff --git a/src/MessagePack/net5.0/PublicAPI.Unshipped.txt b/src/MessagePack/net5.0/PublicAPI.Unshipped.txt index d2851af1..e314ad87 100644 --- a/src/MessagePack/net5.0/PublicAPI.Unshipped.txt +++ b/src/MessagePack/net5.0/PublicAPI.Unshipped.txt @@ -9,20 +9,13 @@ MessagePack.Formatters.InterfaceReadOnlySetFormatter.InterfaceReadOnlySetForm MessagePack.Formatters.StringInterningFormatter MessagePack.Formatters.StringInterningFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> string MessagePack.Formatters.StringInterningFormatter.Serialize(ref MessagePack.MessagePackWriter writer, string value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.StringInterningFormatter.StringInterningFormatter() -> void -MessagePack.InternedStringCollection -MessagePack.InternedStringCollection.InternedStringCollection() -> void MessagePack.MessagePackReader.MessagePackReader() -> void MessagePack.MessagePackSerializerOptions.SequencePool.get -> MessagePack.SequencePool -MessagePack.MessagePackSerializerOptions.StringInterning.get -> MessagePack.InternedStringCollection MessagePack.MessagePackSerializerOptions.WithPool(MessagePack.SequencePool pool) -> MessagePack.MessagePackSerializerOptions -MessagePack.MessagePackSerializerOptions.WithStringInterning(MessagePack.InternedStringCollection value) -> MessagePack.MessagePackSerializerOptions MessagePack.MessagePackStreamReader.MessagePackStreamReader(System.IO.Stream stream, bool leaveOpen, MessagePack.SequencePool sequencePool) -> void MessagePack.MessagePackStreamReader.ReadArrayHeaderAsync(System.Threading.CancellationToken cancellationToken) -> System.Threading.Tasks.ValueTask MessagePack.MessagePackStreamReader.ReadMapHeaderAsync(System.Threading.CancellationToken cancellationToken) -> System.Threading.Tasks.ValueTask MessagePack.MessagePackWriter.MessagePackWriter() -> void -MessagePack.Resolvers.StringInterningResolver -MessagePack.Resolvers.StringInterningResolver.GetFormatter() -> MessagePack.Formatters.IMessagePackFormatter MessagePack.SequencePool MessagePack.SequencePool.SequencePool() -> void MessagePack.SequencePool.SequencePool(int maxSize) -> void @@ -31,10 +24,9 @@ MessagePack.TinyJsonException.TinyJsonException(System.Runtime.Serialization.Ser static MessagePack.Nil.operator !=(MessagePack.Nil left, MessagePack.Nil right) -> bool static MessagePack.Nil.operator ==(MessagePack.Nil left, MessagePack.Nil right) -> bool static readonly MessagePack.Formatters.HalfFormatter.Instance -> MessagePack.Formatters.IMessagePackFormatter -static readonly MessagePack.Resolvers.StringInterningResolver.Instance -> MessagePack.Resolvers.StringInterningResolver -virtual MessagePack.InternedStringCollection.GetString(ref MessagePack.MessagePackReader reader) -> string +static readonly MessagePack.Formatters.StringInterningFormatter.Instance -> MessagePack.Formatters.StringInterningFormatter virtual MessagePack.MessagePackStreamReader.Dispose(bool disposing) -> void MessagePack.Formatters.GenericEnumerableFormatter MessagePack.Formatters.GenericEnumerableFormatter.GenericEnumerableFormatter() -> void MessagePack.Formatters.GenericReadOnlyDictionaryFormatter -MessagePack.Formatters.GenericReadOnlyDictionaryFormatter.GenericReadOnlyDictionaryFormatter() -> void \ No newline at end of file +MessagePack.Formatters.GenericReadOnlyDictionaryFormatter.GenericReadOnlyDictionaryFormatter() -> void diff --git a/src/MessagePack/netcoreapp2.1/PublicAPI.Unshipped.txt b/src/MessagePack/netcoreapp2.1/PublicAPI.Unshipped.txt index a6bc9cd9..8f0dff9e 100644 --- a/src/MessagePack/netcoreapp2.1/PublicAPI.Unshipped.txt +++ b/src/MessagePack/netcoreapp2.1/PublicAPI.Unshipped.txt @@ -4,18 +4,11 @@ MessagePack.FormatterNotRegisteredException.FormatterNotRegisteredException(Syst MessagePack.Formatters.StringInterningFormatter MessagePack.Formatters.StringInterningFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> string MessagePack.Formatters.StringInterningFormatter.Serialize(ref MessagePack.MessagePackWriter writer, string value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.StringInterningFormatter.StringInterningFormatter() -> void -MessagePack.InternedStringCollection -MessagePack.InternedStringCollection.InternedStringCollection() -> void MessagePack.MessagePackReader.MessagePackReader() -> void MessagePack.MessagePackSerializerOptions.SequencePool.get -> MessagePack.SequencePool -MessagePack.MessagePackSerializerOptions.StringInterning.get -> MessagePack.InternedStringCollection MessagePack.MessagePackSerializerOptions.WithPool(MessagePack.SequencePool pool) -> MessagePack.MessagePackSerializerOptions -MessagePack.MessagePackSerializerOptions.WithStringInterning(MessagePack.InternedStringCollection value) -> MessagePack.MessagePackSerializerOptions MessagePack.MessagePackStreamReader.MessagePackStreamReader(System.IO.Stream stream, bool leaveOpen, MessagePack.SequencePool sequencePool) -> void MessagePack.MessagePackWriter.MessagePackWriter() -> void -MessagePack.Resolvers.StringInterningResolver -MessagePack.Resolvers.StringInterningResolver.GetFormatter() -> MessagePack.Formatters.IMessagePackFormatter MessagePack.SequencePool MessagePack.SequencePool.SequencePool() -> void MessagePack.SequencePool.SequencePool(int maxSize) -> void @@ -23,10 +16,9 @@ MessagePack.SequencePool.SequencePool(int maxSize, System.Buffers.ArrayPool void static MessagePack.Nil.operator !=(MessagePack.Nil left, MessagePack.Nil right) -> bool static MessagePack.Nil.operator ==(MessagePack.Nil left, MessagePack.Nil right) -> bool -static readonly MessagePack.Resolvers.StringInterningResolver.Instance -> MessagePack.Resolvers.StringInterningResolver -virtual MessagePack.InternedStringCollection.GetString(ref MessagePack.MessagePackReader reader) -> string +static readonly MessagePack.Formatters.StringInterningFormatter.Instance -> MessagePack.Formatters.StringInterningFormatter virtual MessagePack.MessagePackStreamReader.Dispose(bool disposing) -> void MessagePack.Formatters.GenericEnumerableFormatter MessagePack.Formatters.GenericEnumerableFormatter.GenericEnumerableFormatter() -> void MessagePack.Formatters.GenericReadOnlyDictionaryFormatter -MessagePack.Formatters.GenericReadOnlyDictionaryFormatter.GenericReadOnlyDictionaryFormatter() -> void \ No newline at end of file +MessagePack.Formatters.GenericReadOnlyDictionaryFormatter.GenericReadOnlyDictionaryFormatter() -> void diff --git a/src/MessagePack/netcoreapp3.1/PublicAPI.Unshipped.txt b/src/MessagePack/netcoreapp3.1/PublicAPI.Unshipped.txt index c311155b..85cc22a9 100644 --- a/src/MessagePack/netcoreapp3.1/PublicAPI.Unshipped.txt +++ b/src/MessagePack/netcoreapp3.1/PublicAPI.Unshipped.txt @@ -4,20 +4,13 @@ MessagePack.FormatterNotRegisteredException.FormatterNotRegisteredException(Syst MessagePack.Formatters.StringInterningFormatter MessagePack.Formatters.StringInterningFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> string MessagePack.Formatters.StringInterningFormatter.Serialize(ref MessagePack.MessagePackWriter writer, string value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.StringInterningFormatter.StringInterningFormatter() -> void -MessagePack.InternedStringCollection -MessagePack.InternedStringCollection.InternedStringCollection() -> void MessagePack.MessagePackReader.MessagePackReader() -> void MessagePack.MessagePackSerializerOptions.SequencePool.get -> MessagePack.SequencePool -MessagePack.MessagePackSerializerOptions.StringInterning.get -> MessagePack.InternedStringCollection MessagePack.MessagePackSerializerOptions.WithPool(MessagePack.SequencePool pool) -> MessagePack.MessagePackSerializerOptions -MessagePack.MessagePackSerializerOptions.WithStringInterning(MessagePack.InternedStringCollection value) -> MessagePack.MessagePackSerializerOptions MessagePack.MessagePackStreamReader.MessagePackStreamReader(System.IO.Stream stream, bool leaveOpen, MessagePack.SequencePool sequencePool) -> void MessagePack.MessagePackStreamReader.ReadArrayHeaderAsync(System.Threading.CancellationToken cancellationToken) -> System.Threading.Tasks.ValueTask MessagePack.MessagePackStreamReader.ReadMapHeaderAsync(System.Threading.CancellationToken cancellationToken) -> System.Threading.Tasks.ValueTask MessagePack.MessagePackWriter.MessagePackWriter() -> void -MessagePack.Resolvers.StringInterningResolver -MessagePack.Resolvers.StringInterningResolver.GetFormatter() -> MessagePack.Formatters.IMessagePackFormatter MessagePack.SequencePool MessagePack.SequencePool.SequencePool() -> void MessagePack.SequencePool.SequencePool(int maxSize) -> void @@ -25,10 +18,9 @@ MessagePack.SequencePool.SequencePool(int maxSize, System.Buffers.ArrayPool void static MessagePack.Nil.operator !=(MessagePack.Nil left, MessagePack.Nil right) -> bool static MessagePack.Nil.operator ==(MessagePack.Nil left, MessagePack.Nil right) -> bool -static readonly MessagePack.Resolvers.StringInterningResolver.Instance -> MessagePack.Resolvers.StringInterningResolver -virtual MessagePack.InternedStringCollection.GetString(ref MessagePack.MessagePackReader reader) -> string +static readonly MessagePack.Formatters.StringInterningFormatter.Instance -> MessagePack.Formatters.StringInterningFormatter virtual MessagePack.MessagePackStreamReader.Dispose(bool disposing) -> void MessagePack.Formatters.GenericEnumerableFormatter MessagePack.Formatters.GenericEnumerableFormatter.GenericEnumerableFormatter() -> void MessagePack.Formatters.GenericReadOnlyDictionaryFormatter -MessagePack.Formatters.GenericReadOnlyDictionaryFormatter.GenericReadOnlyDictionaryFormatter() -> void \ No newline at end of file +MessagePack.Formatters.GenericReadOnlyDictionaryFormatter.GenericReadOnlyDictionaryFormatter() -> void diff --git a/src/MessagePack/netstandard2.0/PublicAPI.Unshipped.txt b/src/MessagePack/netstandard2.0/PublicAPI.Unshipped.txt index c311155b..85cc22a9 100644 --- a/src/MessagePack/netstandard2.0/PublicAPI.Unshipped.txt +++ b/src/MessagePack/netstandard2.0/PublicAPI.Unshipped.txt @@ -4,20 +4,13 @@ MessagePack.FormatterNotRegisteredException.FormatterNotRegisteredException(Syst MessagePack.Formatters.StringInterningFormatter MessagePack.Formatters.StringInterningFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> string MessagePack.Formatters.StringInterningFormatter.Serialize(ref MessagePack.MessagePackWriter writer, string value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.StringInterningFormatter.StringInterningFormatter() -> void -MessagePack.InternedStringCollection -MessagePack.InternedStringCollection.InternedStringCollection() -> void MessagePack.MessagePackReader.MessagePackReader() -> void MessagePack.MessagePackSerializerOptions.SequencePool.get -> MessagePack.SequencePool -MessagePack.MessagePackSerializerOptions.StringInterning.get -> MessagePack.InternedStringCollection MessagePack.MessagePackSerializerOptions.WithPool(MessagePack.SequencePool pool) -> MessagePack.MessagePackSerializerOptions -MessagePack.MessagePackSerializerOptions.WithStringInterning(MessagePack.InternedStringCollection value) -> MessagePack.MessagePackSerializerOptions MessagePack.MessagePackStreamReader.MessagePackStreamReader(System.IO.Stream stream, bool leaveOpen, MessagePack.SequencePool sequencePool) -> void MessagePack.MessagePackStreamReader.ReadArrayHeaderAsync(System.Threading.CancellationToken cancellationToken) -> System.Threading.Tasks.ValueTask MessagePack.MessagePackStreamReader.ReadMapHeaderAsync(System.Threading.CancellationToken cancellationToken) -> System.Threading.Tasks.ValueTask MessagePack.MessagePackWriter.MessagePackWriter() -> void -MessagePack.Resolvers.StringInterningResolver -MessagePack.Resolvers.StringInterningResolver.GetFormatter() -> MessagePack.Formatters.IMessagePackFormatter MessagePack.SequencePool MessagePack.SequencePool.SequencePool() -> void MessagePack.SequencePool.SequencePool(int maxSize) -> void @@ -25,10 +18,9 @@ MessagePack.SequencePool.SequencePool(int maxSize, System.Buffers.ArrayPool void static MessagePack.Nil.operator !=(MessagePack.Nil left, MessagePack.Nil right) -> bool static MessagePack.Nil.operator ==(MessagePack.Nil left, MessagePack.Nil right) -> bool -static readonly MessagePack.Resolvers.StringInterningResolver.Instance -> MessagePack.Resolvers.StringInterningResolver -virtual MessagePack.InternedStringCollection.GetString(ref MessagePack.MessagePackReader reader) -> string +static readonly MessagePack.Formatters.StringInterningFormatter.Instance -> MessagePack.Formatters.StringInterningFormatter virtual MessagePack.MessagePackStreamReader.Dispose(bool disposing) -> void MessagePack.Formatters.GenericEnumerableFormatter MessagePack.Formatters.GenericEnumerableFormatter.GenericEnumerableFormatter() -> void MessagePack.Formatters.GenericReadOnlyDictionaryFormatter -MessagePack.Formatters.GenericReadOnlyDictionaryFormatter.GenericReadOnlyDictionaryFormatter() -> void \ No newline at end of file +MessagePack.Formatters.GenericReadOnlyDictionaryFormatter.GenericReadOnlyDictionaryFormatter() -> void -- cgit v1.2.3 From a266ea2cf673886d014dc3fd0d1e6eb13deb9b89 Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Wed, 14 Jul 2021 07:35:54 -0600 Subject: Fix interning of empty strings This caused a test failure on `net472`. --- .../MessagePack/Formatters/StringInterningFormatter.cs | 5 +++++ .../Tests/ShareTests/StringInterningResolverTests.cs | 13 +++++++++++++ 2 files changed, 18 insertions(+) diff --git a/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/Formatters/StringInterningFormatter.cs b/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/Formatters/StringInterningFormatter.cs index 8af3de36..17a0ab29 100644 --- a/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/Formatters/StringInterningFormatter.cs +++ b/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/Formatters/StringInterningFormatter.cs @@ -30,6 +30,11 @@ namespace MessagePack.Formatters { if (bytes.Length < 4096) { + if (bytes.Length == 0) + { + return string.Empty; + } + Span chars = stackalloc char[bytes.Length]; int charLength; #if SPAN_BUILTIN diff --git a/src/MessagePack.UnityClient/Assets/Scripts/Tests/ShareTests/StringInterningResolverTests.cs b/src/MessagePack.UnityClient/Assets/Scripts/Tests/ShareTests/StringInterningResolverTests.cs index e2b51250..b7d93bf8 100644 --- a/src/MessagePack.UnityClient/Assets/Scripts/Tests/ShareTests/StringInterningResolverTests.cs +++ b/src/MessagePack.UnityClient/Assets/Scripts/Tests/ShareTests/StringInterningResolverTests.cs @@ -22,6 +22,19 @@ namespace MessagePack.Tests Assert.Null(result); } + [Fact] + public void EmptyString() + { + var seq = new Sequence(); + var writer = new MessagePackWriter(seq); + writer.Write(string.Empty); + writer.Flush(); + + var reader = new MessagePackReader(seq); + string result = StandardResolver.Instance.GetFormatter().Deserialize(ref reader, MessagePackSerializerOptions.Standard); + Assert.Same(string.Empty, result); + } + [Theory] [InlineData(3)] [InlineData(1024 * 1024)] -- cgit v1.2.3 From 013e3c32a6c5c89e384e36e4a2100e61e72d31d4 Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Wed, 28 Jul 2021 22:07:30 -0600 Subject: Start building 2.4-alpha --- src/MessagePack.UnityClient/Assets/Scripts/MessagePack/package.json | 2 +- version.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/package.json b/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/package.json index 677cba61..5e7b60bd 100644 --- a/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/package.json +++ b/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/package.json @@ -1,7 +1,7 @@ { "name": "com.neuecc.messagepack", "displayName": "MessagePack", - "version": "2.3.74", + "version": "2.4.1-alpha", "unity": "2018.4", "description": "Extremely Fast MessagePack Serializer for C#.", "keywords": [ diff --git a/version.json b/version.json index 5d063bf1..6fc917f3 100644 --- a/version.json +++ b/version.json @@ -1,6 +1,6 @@ { "$schema": "https://raw.githubusercontent.com/dotnet/Nerdbank.GitVersioning/master/src/NerdBank.GitVersioning/version.schema.json", - "version": "2.3", + "version": "2.4-alpha", "publicReleaseRefSpec": [ "^refs/heads/master$", "^refs/heads/v1\\.x$", -- cgit v1.2.3 From 6e4fd8d2c25d915c5a6fab913e49734254175dff Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Sat, 21 Aug 2021 20:48:46 -0600 Subject: Remove string interning by default It is still available via the `StringInterningFormatter`, which can be turned on by default by aggregating a custom resolver, or by specifying this on a `[Key]` or `[DataMember]` member: ```cs [MessagePackFormatter(typeof(StringInterningFormatter))] ``` --- .../Formatters/StringInterningFormatter.cs | 6 -- .../MessagePack/Resolvers/BuiltinResolver.cs | 2 +- .../ShareTests/StringInterningResolverTests.cs | 64 ------------ .../Tests/ShareTests/StringInterningTests.cs | 107 +++++++++++++++++++++ src/MessagePack/net5.0/PublicAPI.Unshipped.txt | 2 +- .../netcoreapp2.1/PublicAPI.Unshipped.txt | 2 +- .../netcoreapp3.1/PublicAPI.Unshipped.txt | 2 +- .../netstandard2.0/PublicAPI.Unshipped.txt | 2 +- 8 files changed, 112 insertions(+), 75 deletions(-) delete mode 100644 src/MessagePack.UnityClient/Assets/Scripts/Tests/ShareTests/StringInterningResolverTests.cs create mode 100644 src/MessagePack.UnityClient/Assets/Scripts/Tests/ShareTests/StringInterningTests.cs diff --git a/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/Formatters/StringInterningFormatter.cs b/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/Formatters/StringInterningFormatter.cs index 17a0ab29..9e07521b 100644 --- a/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/Formatters/StringInterningFormatter.cs +++ b/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/Formatters/StringInterningFormatter.cs @@ -11,12 +11,6 @@ namespace MessagePack.Formatters /// public sealed class StringInterningFormatter : IMessagePackFormatter { - public static readonly StringInterningFormatter Instance = new StringInterningFormatter(); - - private StringInterningFormatter() - { - } - /// public string Deserialize(ref MessagePackReader reader, MessagePackSerializerOptions options) { diff --git a/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/Resolvers/BuiltinResolver.cs b/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/Resolvers/BuiltinResolver.cs index a613126b..000b9fbd 100644 --- a/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/Resolvers/BuiltinResolver.cs +++ b/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/Resolvers/BuiltinResolver.cs @@ -82,7 +82,7 @@ namespace MessagePack.Internal { typeof(char?), NullableCharFormatter.Instance }, // StandardClassLibraryFormatter - { typeof(string), StringInterningFormatter.Instance }, + { typeof(string), NullableStringFormatter.Instance }, { typeof(decimal), DecimalFormatter.Instance }, { typeof(decimal?), new StaticNullableFormatter(DecimalFormatter.Instance) }, { typeof(TimeSpan), TimeSpanFormatter.Instance }, diff --git a/src/MessagePack.UnityClient/Assets/Scripts/Tests/ShareTests/StringInterningResolverTests.cs b/src/MessagePack.UnityClient/Assets/Scripts/Tests/ShareTests/StringInterningResolverTests.cs deleted file mode 100644 index b7d93bf8..00000000 --- a/src/MessagePack.UnityClient/Assets/Scripts/Tests/ShareTests/StringInterningResolverTests.cs +++ /dev/null @@ -1,64 +0,0 @@ -// Copyright (c) All contributors. All rights reserved. -// Licensed under the MIT license. See LICENSE file in the project root for full license information. - -using MessagePack.Resolvers; -using Nerdbank.Streams; -using Xunit; - -namespace MessagePack.Tests -{ - public class StringInterningResolverTests - { - [Fact] - public void NullString() - { - var seq = new Sequence(); - var writer = new MessagePackWriter(seq); - writer.WriteNil(); - writer.Flush(); - - var reader = new MessagePackReader(seq); - string result = StandardResolver.Instance.GetFormatter().Deserialize(ref reader, MessagePackSerializerOptions.Standard); - Assert.Null(result); - } - - [Fact] - public void EmptyString() - { - var seq = new Sequence(); - var writer = new MessagePackWriter(seq); - writer.Write(string.Empty); - writer.Flush(); - - var reader = new MessagePackReader(seq); - string result = StandardResolver.Instance.GetFormatter().Deserialize(ref reader, MessagePackSerializerOptions.Standard); - Assert.Same(string.Empty, result); - } - - [Theory] - [InlineData(3)] - [InlineData(1024 * 1024)] - public void EquivalentStringsGetSharedInstance(int length) - { - string originalValue1 = new string('a', length); - string originalValue3 = new string('b', length); - var seq = new Sequence(); - var writer = new MessagePackWriter(seq); - writer.Write(originalValue1); - writer.Write(originalValue1); - writer.Write(originalValue3); - writer.Flush(); - - var reader = new MessagePackReader(seq); - var formatter = StandardResolver.Instance.GetFormatter(); - string value1 = formatter.Deserialize(ref reader, MessagePackSerializerOptions.Standard); - string value2 = formatter.Deserialize(ref reader, MessagePackSerializerOptions.Standard); - string value3 = formatter.Deserialize(ref reader, MessagePackSerializerOptions.Standard); - - Assert.Equal(originalValue1, value1); - Assert.Equal(originalValue3, value3); - - Assert.Same(value1, value2); - } - } -} diff --git a/src/MessagePack.UnityClient/Assets/Scripts/Tests/ShareTests/StringInterningTests.cs b/src/MessagePack.UnityClient/Assets/Scripts/Tests/ShareTests/StringInterningTests.cs new file mode 100644 index 00000000..d4e98f77 --- /dev/null +++ b/src/MessagePack.UnityClient/Assets/Scripts/Tests/ShareTests/StringInterningTests.cs @@ -0,0 +1,107 @@ +// Copyright (c) All contributors. All rights reserved. +// Licensed under the MIT license. See LICENSE file in the project root for full license information. + +using MessagePack.Formatters; +using MessagePack.Resolvers; +using Nerdbank.Streams; +using Xunit; + +namespace MessagePack.Tests +{ + public class StringInterningTests + { + [Fact] + public void NullString() + { + var seq = new Sequence(); + var writer = new MessagePackWriter(seq); + writer.WriteNil(); + writer.Flush(); + + var reader = new MessagePackReader(seq); + string result = StandardResolver.Instance.GetFormatter().Deserialize(ref reader, MessagePackSerializerOptions.Standard); + Assert.Null(result); + } + + [Fact] + public void EmptyString() + { + var seq = new Sequence(); + var writer = new MessagePackWriter(seq); + writer.Write(string.Empty); + writer.Flush(); + + var reader = new MessagePackReader(seq); + string result = StandardResolver.Instance.GetFormatter().Deserialize(ref reader, MessagePackSerializerOptions.Standard); + Assert.Same(string.Empty, result); + } + + [Theory] + [InlineData(3)] + [InlineData(1024 * 1024)] + public void EquivalentStringsGetSharedInstance(int length) + { + string originalValue1 = new string('a', length); + string originalValue3 = new string('b', length); + var seq = new Sequence(); + var writer = new MessagePackWriter(seq); + writer.Write(originalValue1); + writer.Write(originalValue1); + writer.Write(originalValue3); + writer.Flush(); + + var reader = new MessagePackReader(seq); + var formatter = new StringInterningFormatter(); + string value1 = formatter.Deserialize(ref reader, MessagePackSerializerOptions.Standard); + string value2 = formatter.Deserialize(ref reader, MessagePackSerializerOptions.Standard); + string value3 = formatter.Deserialize(ref reader, MessagePackSerializerOptions.Standard); + + Assert.Equal(originalValue1, value1); + Assert.Equal(originalValue3, value3); + + Assert.Same(value1, value2); + } + + [Fact] + public void StringMemberInterning() + { + ClassOfStrings before = new ClassOfStrings { InternedString = "abc", OrdinaryString = "def" }; + ClassOfStrings after1 = MessagePackSerializer.Deserialize(MessagePackSerializer.Serialize(before, MessagePackSerializerOptions.Standard), MessagePackSerializerOptions.Standard); + ClassOfStrings after2 = MessagePackSerializer.Deserialize(MessagePackSerializer.Serialize(before, MessagePackSerializerOptions.Standard), MessagePackSerializerOptions.Standard); + Assert.Equal(after1.InternedString, after2.InternedString); + Assert.Equal(after1.OrdinaryString, after2.OrdinaryString); + + Assert.Same(after1.InternedString, after2.InternedString); + Assert.NotSame(after1.OrdinaryString, after2.OrdinaryString); + } + + [Fact] + public void StringMemberInterning_CustomResolver() + { + var options = MessagePackSerializerOptions.Standard.WithResolver( + CompositeResolver.Create( + new IMessagePackFormatter[] { new StringInterningFormatter() }, + new IFormatterResolver[] { StandardResolver.Instance })); + + ClassOfStrings before = new ClassOfStrings { InternedString = "abc", OrdinaryString = "def" }; + ClassOfStrings after1 = MessagePackSerializer.Deserialize(MessagePackSerializer.Serialize(before, options), options); + ClassOfStrings after2 = MessagePackSerializer.Deserialize(MessagePackSerializer.Serialize(before, options), options); + Assert.Equal(after1.InternedString, after2.InternedString); + Assert.Equal(after1.OrdinaryString, after2.OrdinaryString); + + Assert.Same(after1.InternedString, after2.InternedString); + Assert.Same(after1.OrdinaryString, after2.OrdinaryString); + } + + [MessagePackObject] + public class ClassOfStrings + { + [Key(0)] + [MessagePackFormatter(typeof(StringInterningFormatter))] + public string InternedString { get; set; } + + [Key(1)] + public string OrdinaryString { get; set; } + } + } +} diff --git a/src/MessagePack/net5.0/PublicAPI.Unshipped.txt b/src/MessagePack/net5.0/PublicAPI.Unshipped.txt index e314ad87..e04348f7 100644 --- a/src/MessagePack/net5.0/PublicAPI.Unshipped.txt +++ b/src/MessagePack/net5.0/PublicAPI.Unshipped.txt @@ -9,6 +9,7 @@ MessagePack.Formatters.InterfaceReadOnlySetFormatter.InterfaceReadOnlySetForm MessagePack.Formatters.StringInterningFormatter MessagePack.Formatters.StringInterningFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> string MessagePack.Formatters.StringInterningFormatter.Serialize(ref MessagePack.MessagePackWriter writer, string value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.StringInterningFormatter.StringInterningFormatter() -> void MessagePack.MessagePackReader.MessagePackReader() -> void MessagePack.MessagePackSerializerOptions.SequencePool.get -> MessagePack.SequencePool MessagePack.MessagePackSerializerOptions.WithPool(MessagePack.SequencePool pool) -> MessagePack.MessagePackSerializerOptions @@ -24,7 +25,6 @@ MessagePack.TinyJsonException.TinyJsonException(System.Runtime.Serialization.Ser static MessagePack.Nil.operator !=(MessagePack.Nil left, MessagePack.Nil right) -> bool static MessagePack.Nil.operator ==(MessagePack.Nil left, MessagePack.Nil right) -> bool static readonly MessagePack.Formatters.HalfFormatter.Instance -> MessagePack.Formatters.IMessagePackFormatter -static readonly MessagePack.Formatters.StringInterningFormatter.Instance -> MessagePack.Formatters.StringInterningFormatter virtual MessagePack.MessagePackStreamReader.Dispose(bool disposing) -> void MessagePack.Formatters.GenericEnumerableFormatter MessagePack.Formatters.GenericEnumerableFormatter.GenericEnumerableFormatter() -> void diff --git a/src/MessagePack/netcoreapp2.1/PublicAPI.Unshipped.txt b/src/MessagePack/netcoreapp2.1/PublicAPI.Unshipped.txt index 8f0dff9e..b44f24ad 100644 --- a/src/MessagePack/netcoreapp2.1/PublicAPI.Unshipped.txt +++ b/src/MessagePack/netcoreapp2.1/PublicAPI.Unshipped.txt @@ -4,6 +4,7 @@ MessagePack.FormatterNotRegisteredException.FormatterNotRegisteredException(Syst MessagePack.Formatters.StringInterningFormatter MessagePack.Formatters.StringInterningFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> string MessagePack.Formatters.StringInterningFormatter.Serialize(ref MessagePack.MessagePackWriter writer, string value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.StringInterningFormatter.StringInterningFormatter() -> void MessagePack.MessagePackReader.MessagePackReader() -> void MessagePack.MessagePackSerializerOptions.SequencePool.get -> MessagePack.SequencePool MessagePack.MessagePackSerializerOptions.WithPool(MessagePack.SequencePool pool) -> MessagePack.MessagePackSerializerOptions @@ -16,7 +17,6 @@ MessagePack.SequencePool.SequencePool(int maxSize, System.Buffers.ArrayPool void static MessagePack.Nil.operator !=(MessagePack.Nil left, MessagePack.Nil right) -> bool static MessagePack.Nil.operator ==(MessagePack.Nil left, MessagePack.Nil right) -> bool -static readonly MessagePack.Formatters.StringInterningFormatter.Instance -> MessagePack.Formatters.StringInterningFormatter virtual MessagePack.MessagePackStreamReader.Dispose(bool disposing) -> void MessagePack.Formatters.GenericEnumerableFormatter MessagePack.Formatters.GenericEnumerableFormatter.GenericEnumerableFormatter() -> void diff --git a/src/MessagePack/netcoreapp3.1/PublicAPI.Unshipped.txt b/src/MessagePack/netcoreapp3.1/PublicAPI.Unshipped.txt index 85cc22a9..cfbfc2d1 100644 --- a/src/MessagePack/netcoreapp3.1/PublicAPI.Unshipped.txt +++ b/src/MessagePack/netcoreapp3.1/PublicAPI.Unshipped.txt @@ -4,6 +4,7 @@ MessagePack.FormatterNotRegisteredException.FormatterNotRegisteredException(Syst MessagePack.Formatters.StringInterningFormatter MessagePack.Formatters.StringInterningFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> string MessagePack.Formatters.StringInterningFormatter.Serialize(ref MessagePack.MessagePackWriter writer, string value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.StringInterningFormatter.StringInterningFormatter() -> void MessagePack.MessagePackReader.MessagePackReader() -> void MessagePack.MessagePackSerializerOptions.SequencePool.get -> MessagePack.SequencePool MessagePack.MessagePackSerializerOptions.WithPool(MessagePack.SequencePool pool) -> MessagePack.MessagePackSerializerOptions @@ -18,7 +19,6 @@ MessagePack.SequencePool.SequencePool(int maxSize, System.Buffers.ArrayPool void static MessagePack.Nil.operator !=(MessagePack.Nil left, MessagePack.Nil right) -> bool static MessagePack.Nil.operator ==(MessagePack.Nil left, MessagePack.Nil right) -> bool -static readonly MessagePack.Formatters.StringInterningFormatter.Instance -> MessagePack.Formatters.StringInterningFormatter virtual MessagePack.MessagePackStreamReader.Dispose(bool disposing) -> void MessagePack.Formatters.GenericEnumerableFormatter MessagePack.Formatters.GenericEnumerableFormatter.GenericEnumerableFormatter() -> void diff --git a/src/MessagePack/netstandard2.0/PublicAPI.Unshipped.txt b/src/MessagePack/netstandard2.0/PublicAPI.Unshipped.txt index 85cc22a9..cfbfc2d1 100644 --- a/src/MessagePack/netstandard2.0/PublicAPI.Unshipped.txt +++ b/src/MessagePack/netstandard2.0/PublicAPI.Unshipped.txt @@ -4,6 +4,7 @@ MessagePack.FormatterNotRegisteredException.FormatterNotRegisteredException(Syst MessagePack.Formatters.StringInterningFormatter MessagePack.Formatters.StringInterningFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> string MessagePack.Formatters.StringInterningFormatter.Serialize(ref MessagePack.MessagePackWriter writer, string value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.StringInterningFormatter.StringInterningFormatter() -> void MessagePack.MessagePackReader.MessagePackReader() -> void MessagePack.MessagePackSerializerOptions.SequencePool.get -> MessagePack.SequencePool MessagePack.MessagePackSerializerOptions.WithPool(MessagePack.SequencePool pool) -> MessagePack.MessagePackSerializerOptions @@ -18,7 +19,6 @@ MessagePack.SequencePool.SequencePool(int maxSize, System.Buffers.ArrayPool void static MessagePack.Nil.operator !=(MessagePack.Nil left, MessagePack.Nil right) -> bool static MessagePack.Nil.operator ==(MessagePack.Nil left, MessagePack.Nil right) -> bool -static readonly MessagePack.Formatters.StringInterningFormatter.Instance -> MessagePack.Formatters.StringInterningFormatter virtual MessagePack.MessagePackStreamReader.Dispose(bool disposing) -> void MessagePack.Formatters.GenericEnumerableFormatter MessagePack.Formatters.GenericEnumerableFormatter.GenericEnumerableFormatter() -> void -- cgit v1.2.3 From 6635df63af11237c296b11cd23b429f0ddf7c50d Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Sat, 21 Aug 2021 21:05:18 -0600 Subject: Document string interning --- README.md | 44 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) diff --git a/README.md b/README.md index 8a51d787..a4bccec7 100644 --- a/README.md +++ b/README.md @@ -34,6 +34,7 @@ MessagePack has a compact binary size and a full set of general purpose expressi - [Security](#security) - [Performance](#performance) - [Deserialization Performance for different options](#deserialization-performance-for-different-options) + - [String interning](#string-interning) - [LZ4 Compression](#lz4-compression) - [Attributions](#attributions) - [Comparison with protobuf, JSON, ZeroFormatter](#comparison-with-protobuf-json-zeroformatter) @@ -758,6 +759,49 @@ Extra note, this is serialization benchmark result. Of course, `IntKey` is fastest but `StringKey` also performs reasonably well. +### String interning + +The msgpack format does not provide for reusing strings in the data stream. +This naturally leads the deserializer to create a new `string` object for every string encountered, +even if it is equal to another string previously encountered. + +When deserializing data that may contain the same strings repeatedly it can be worthwhile +to have the deserializer take a little extra time to check whether it has seen a given string before +and reuse it if it has. + +To enable string interning on *all* string values, use a resolver that specifies `StringInterningFormatter` +before any of the standard ones, like this: + +```cs +var options = MessagePackSerializerOptions.Standard.WithResolver( + CompositeResolver.Create( + new IMessagePackFormatter[] { new StringInterningFormatter() }, + new IFormatterResolver[] { StandardResolver.Instance })); + +MessagePackSerializer.Deserialize(data, options); +``` + +If you know which fields of a particular type are likely to contain duplicate strings, +you can apply the string interning formatter to just those fields so the deserializer only pays +for the interned string check where it matters most. +Note that this technique requires a `[MessagePackObject]` or `[DataContract]` class. + +```cs +[MessagePackObject] +public class ClassOfStrings +{ + [Key(0)] + [MessagePackFormatter(typeof(StringInterningFormatter))] + public string InternedString { get; set; } + + [Key(1)] + public string OrdinaryString { get; set; } +} +``` + +If you are writing your own formatter for some type that contains strings, +you can call on the `StringInterningFormatter` directly from your formatter as well for the strings. + ## LZ4 Compression MessagePack is a fast and *compact* format but it is not compression. [LZ4](https://github.com/lz4/lz4) is an extremely fast compression algorithm, and using it MessagePack for C# can achieve extremely fast performance as well as extremely compact binary sizes! -- cgit v1.2.3 From 49fa946120dce638fa0683e0f99f03e1a62a0f2a Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Sat, 21 Aug 2021 18:03:06 -0600 Subject: Allows client code to avoid tripping over StandardResolver In AOT-only environments it seems it was impossible to avoid loading `StandardResolver` because the `MessagePackSerializer` had a static property with an initializer that loaded the `StandardResolver`. After this change, if the `DefaultOptions` getter is never called, or its setter is called first, then the `StandardResolver` can be avoided. Fixes #832 --- .../Assets/Scripts/MessagePack/MessagePackSerializer.cs | 16 +++++++++++++++- .../Scripts/MessagePack/MessagePackSerializerOptions.cs | 2 +- 2 files changed, 16 insertions(+), 2 deletions(-) diff --git a/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/MessagePackSerializer.cs b/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/MessagePackSerializer.cs index 0e0188cf..93acd668 100644 --- a/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/MessagePackSerializer.cs +++ b/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/MessagePackSerializer.cs @@ -20,6 +20,7 @@ namespace MessagePack { private const int LZ4NotCompressionSizeInLz4BlockType = 64; private const int MaxHintSize = 1024 * 1024; + private static MessagePackSerializerOptions defaultOptions; /// /// Gets or sets the default set of options to use when not explicitly specified for a method call. @@ -33,7 +34,20 @@ namespace MessagePack /// If you are an app author, realize that setting this property impacts the entire application so it should only be /// set once, and before any use of occurs. /// - public static MessagePackSerializerOptions DefaultOptions { get; set; } = MessagePackSerializerOptions.Standard; + public static MessagePackSerializerOptions DefaultOptions + { + get + { + if (defaultOptions is null) + { + defaultOptions = MessagePackSerializerOptions.Standard; + } + + return defaultOptions; + } + + set => defaultOptions = value; + } /// /// A thread-local, recyclable array that may be used for short bursts of code. diff --git a/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/MessagePackSerializerOptions.cs b/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/MessagePackSerializerOptions.cs index ebf1ca43..211874c4 100644 --- a/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/MessagePackSerializerOptions.cs +++ b/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/MessagePackSerializerOptions.cs @@ -38,7 +38,7 @@ namespace MessagePack /// /// Initializes a new instance of the class. /// - protected internal MessagePackSerializerOptions(IFormatterResolver resolver) + public MessagePackSerializerOptions(IFormatterResolver resolver) { this.Resolver = resolver ?? throw new ArgumentNullException(nameof(resolver)); } -- cgit v1.2.3 From 5dc5feed0abdd423d7b8fe222b9c2a3ac96a86ae Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Sat, 21 Aug 2021 21:19:56 -0600 Subject: Fix unity build --- src/MessagePack.UnityClient/Assets/Scripts/Tests/Shims/XUnit.cs | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/MessagePack.UnityClient/Assets/Scripts/Tests/Shims/XUnit.cs b/src/MessagePack.UnityClient/Assets/Scripts/Tests/Shims/XUnit.cs index 569cd3b4..ef9a80b4 100644 --- a/src/MessagePack.UnityClient/Assets/Scripts/Tests/Shims/XUnit.cs +++ b/src/MessagePack.UnityClient/Assets/Scripts/Tests/Shims/XUnit.cs @@ -122,6 +122,11 @@ namespace Xunit { NUnit.Framework.Assert.AreSame(expected, actual); } + + public static void NotSame(object expected, object actual) + { + NUnit.Framework.Assert.AreNotSame(expected, actual); + } } [Serializable] -- cgit v1.2.3 From 8563c84f68b6c0b89448f617bd269a9c401a62d4 Mon Sep 17 00:00:00 2001 From: Marek Ott <46067021+marekott@users.noreply.github.com> Date: Fri, 27 Aug 2021 11:51:46 +0200 Subject: Fixed typo in README.MD --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 8a51d787..5440487c 100644 --- a/README.md +++ b/README.md @@ -699,7 +699,7 @@ Benchmarks comparing MessagePack For C# to other serializers were run on `Window * Avoid string key decoding for lookup maps (string key and use automata based name lookup with inlined IL code generation, see: [AutomataDictionary](https://github.com/neuecc/MessagePack-CSharp/blob/bcedbce3fd98cb294210d6b4a22bdc4c75ccd916/src/MessagePack/Internal/AutomataDictionary.cs) * To encode string keys, use pre-generated member name bytes and fixed sized byte array copies in IL, see: [UnsafeMemory.cs](https://github.com/neuecc/MessagePack-CSharp/blob/f17ddc5d107d3a2f66f60398b214ef87919ff892/src/MessagePack/Internal/UnsafeMemory.cs) -Before creating this library, I implemented a fast fast serializer with [ZeroFormatter#Performance](https://github.com/neuecc/ZeroFormatter#performance). This is a further evolved implementation. MessagePack for C# is always fast and optimized for all types (primitive, small struct, large object, any collections). +Before creating this library, I implemented a fast serializer with [ZeroFormatter#Performance](https://github.com/neuecc/ZeroFormatter#performance). This is a further evolved implementation. MessagePack for C# is always fast and optimized for all types (primitive, small struct, large object, any collections). ### Deserialization Performance for different options -- cgit v1.2.3 From e4fad534b2bec20e760dc5909292e63dcf26de64 Mon Sep 17 00:00:00 2001 From: Israel Lot Date: Wed, 15 Dec 2021 12:02:21 -0300 Subject: Add CompressionMinLength parameter to MessagePackSerializerOptions Add CompressionMinLength field to unpublished api spec --- .../MessagePack/MessagePackSerializer.Json.cs | 2 +- .../Scripts/MessagePack/MessagePackSerializer.cs | 7 +++--- .../MessagePack/MessagePackSerializerOptions.cs | 27 ++++++++++++++++++++++ src/MessagePack/net5.0/PublicAPI.Unshipped.txt | 4 +++- .../netcoreapp2.1/PublicAPI.Unshipped.txt | 4 +++- .../netcoreapp3.1/PublicAPI.Unshipped.txt | 4 +++- .../netstandard2.0/PublicAPI.Unshipped.txt | 4 +++- 7 files changed, 43 insertions(+), 9 deletions(-) diff --git a/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/MessagePackSerializer.Json.cs b/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/MessagePackSerializer.Json.cs index 1d604957..38e39985 100644 --- a/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/MessagePackSerializer.Json.cs +++ b/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/MessagePackSerializer.Json.cs @@ -171,7 +171,7 @@ namespace MessagePack } scratchWriter.Flush(); - ToLZ4BinaryCore(scratchRental.Value, ref writer, options.Compression); + ToLZ4BinaryCore(scratchRental.Value, ref writer, options.Compression, options.CompressionMinLength); } } else diff --git a/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/MessagePackSerializer.cs b/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/MessagePackSerializer.cs index 0e0188cf..56f838f8 100644 --- a/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/MessagePackSerializer.cs +++ b/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/MessagePackSerializer.cs @@ -18,7 +18,6 @@ namespace MessagePack [System.Diagnostics.CodeAnalysis.SuppressMessage("ApiDesign", "RS0026:Do not add multiple public overloads with optional parameters", Justification = "Each overload has sufficiently unique required parameters.")] public static partial class MessagePackSerializer { - private const int LZ4NotCompressionSizeInLz4BlockType = 64; private const int MaxHintSize = 1024 * 1024; /// @@ -85,7 +84,7 @@ namespace MessagePack MessagePackWriter scratchWriter = writer.Clone(scratch); options.Resolver.GetFormatterWithVerify().Serialize(ref scratchWriter, value, options); scratchWriter.Flush(); - ToLZ4BinaryCore(scratch, ref writer, options.Compression); + ToLZ4BinaryCore(scratch, ref writer, options.Compression, options.CompressionMinLength); } } else @@ -555,11 +554,11 @@ namespace MessagePack return false; } - private static void ToLZ4BinaryCore(in ReadOnlySequence msgpackUncompressedData, ref MessagePackWriter writer, MessagePackCompression compression) + private static void ToLZ4BinaryCore(in ReadOnlySequence msgpackUncompressedData, ref MessagePackWriter writer, MessagePackCompression compression, int minCompressionSize) { if (compression == MessagePackCompression.Lz4Block) { - if (msgpackUncompressedData.Length < LZ4NotCompressionSizeInLz4BlockType) + if (msgpackUncompressedData.Length < minCompressionSize) { writer.WriteRaw(msgpackUncompressedData); return; diff --git a/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/MessagePackSerializerOptions.cs b/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/MessagePackSerializerOptions.cs index ebf1ca43..9087790b 100644 --- a/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/MessagePackSerializerOptions.cs +++ b/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/MessagePackSerializerOptions.cs @@ -41,6 +41,7 @@ namespace MessagePack protected internal MessagePackSerializerOptions(IFormatterResolver resolver) { this.Resolver = resolver ?? throw new ArgumentNullException(nameof(resolver)); + this.CompressionMinLength = 64; } /// @@ -57,6 +58,7 @@ namespace MessagePack this.Resolver = copyFrom.Resolver; this.Compression = copyFrom.Compression; + this.CompressionMinLength = copyFrom.CompressionMinLength; this.OldSpec = copyFrom.OldSpec; this.OmitAssemblyVersion = copyFrom.OmitAssemblyVersion; this.AllowAssemblyVersionMismatch = copyFrom.AllowAssemblyVersionMismatch; @@ -81,6 +83,14 @@ namespace MessagePack /// public MessagePackCompression Compression { get; private set; } + /// + /// Gets the min sequence length allowed for compression. + /// + /// + /// Sequences with length less then this value will skip block compression. + /// + public int CompressionMinLength { get; private set; } + /// /// Gets a value indicating whether to serialize with set to some value /// causing messagepack spec compliance to be explicitly set to the old or new format. @@ -194,6 +204,23 @@ namespace MessagePack return result; } + /// + /// Gets a copy of these options with the property set to a new value. + /// + /// The new value for the property. + /// The new instance; or the original if the value is unchanged. + public MessagePackSerializerOptions WithCompressionMinLength(int compressionMinLength) + { + if (this.CompressionMinLength == compressionMinLength) + { + return this; + } + + var result = this.Clone(); + result.CompressionMinLength = compressionMinLength; + return result; + } + /// /// Gets a copy of these options with the property set to a new value. /// diff --git a/src/MessagePack/net5.0/PublicAPI.Unshipped.txt b/src/MessagePack/net5.0/PublicAPI.Unshipped.txt index 1447ef0d..dca33bb1 100644 --- a/src/MessagePack/net5.0/PublicAPI.Unshipped.txt +++ b/src/MessagePack/net5.0/PublicAPI.Unshipped.txt @@ -9,6 +9,8 @@ MessagePack.Formatters.InterfaceReadOnlySetFormatter.InterfaceReadOnlySetForm MessagePack.MessagePackReader.MessagePackReader() -> void MessagePack.MessagePackSerializerOptions.SequencePool.get -> MessagePack.SequencePool MessagePack.MessagePackSerializerOptions.WithPool(MessagePack.SequencePool pool) -> MessagePack.MessagePackSerializerOptions +MessagePack.MessagePackSerializerOptions.WithCompressionMinLength(int compressionMinLength) -> MessagePack.MessagePackSerializerOptions +MessagePack.MessagePackSerializerOptions.CompressionMinLength.get -> int MessagePack.MessagePackStreamReader.MessagePackStreamReader(System.IO.Stream stream, bool leaveOpen, MessagePack.SequencePool sequencePool) -> void MessagePack.MessagePackStreamReader.ReadArrayHeaderAsync(System.Threading.CancellationToken cancellationToken) -> System.Threading.Tasks.ValueTask MessagePack.MessagePackStreamReader.ReadMapHeaderAsync(System.Threading.CancellationToken cancellationToken) -> System.Threading.Tasks.ValueTask @@ -25,4 +27,4 @@ virtual MessagePack.MessagePackStreamReader.Dispose(bool disposing) -> void MessagePack.Formatters.GenericEnumerableFormatter MessagePack.Formatters.GenericEnumerableFormatter.GenericEnumerableFormatter() -> void MessagePack.Formatters.GenericReadOnlyDictionaryFormatter -MessagePack.Formatters.GenericReadOnlyDictionaryFormatter.GenericReadOnlyDictionaryFormatter() -> void \ No newline at end of file +MessagePack.Formatters.GenericReadOnlyDictionaryFormatter.GenericReadOnlyDictionaryFormatter() -> void diff --git a/src/MessagePack/netcoreapp2.1/PublicAPI.Unshipped.txt b/src/MessagePack/netcoreapp2.1/PublicAPI.Unshipped.txt index f053d3cd..b2746b1b 100644 --- a/src/MessagePack/netcoreapp2.1/PublicAPI.Unshipped.txt +++ b/src/MessagePack/netcoreapp2.1/PublicAPI.Unshipped.txt @@ -4,6 +4,8 @@ MessagePack.FormatterNotRegisteredException.FormatterNotRegisteredException(Syst MessagePack.MessagePackReader.MessagePackReader() -> void MessagePack.MessagePackSerializerOptions.SequencePool.get -> MessagePack.SequencePool MessagePack.MessagePackSerializerOptions.WithPool(MessagePack.SequencePool pool) -> MessagePack.MessagePackSerializerOptions +MessagePack.MessagePackSerializerOptions.WithCompressionMinLength(int compressionMinLength) -> MessagePack.MessagePackSerializerOptions +MessagePack.MessagePackSerializerOptions.CompressionMinLength.get -> int MessagePack.MessagePackStreamReader.MessagePackStreamReader(System.IO.Stream stream, bool leaveOpen, MessagePack.SequencePool sequencePool) -> void MessagePack.MessagePackWriter.MessagePackWriter() -> void MessagePack.SequencePool @@ -17,4 +19,4 @@ virtual MessagePack.MessagePackStreamReader.Dispose(bool disposing) -> void MessagePack.Formatters.GenericEnumerableFormatter MessagePack.Formatters.GenericEnumerableFormatter.GenericEnumerableFormatter() -> void MessagePack.Formatters.GenericReadOnlyDictionaryFormatter -MessagePack.Formatters.GenericReadOnlyDictionaryFormatter.GenericReadOnlyDictionaryFormatter() -> void \ No newline at end of file +MessagePack.Formatters.GenericReadOnlyDictionaryFormatter.GenericReadOnlyDictionaryFormatter() -> void diff --git a/src/MessagePack/netcoreapp3.1/PublicAPI.Unshipped.txt b/src/MessagePack/netcoreapp3.1/PublicAPI.Unshipped.txt index 73b4e7c0..8b63c2e9 100644 --- a/src/MessagePack/netcoreapp3.1/PublicAPI.Unshipped.txt +++ b/src/MessagePack/netcoreapp3.1/PublicAPI.Unshipped.txt @@ -4,6 +4,8 @@ MessagePack.FormatterNotRegisteredException.FormatterNotRegisteredException(Syst MessagePack.MessagePackReader.MessagePackReader() -> void MessagePack.MessagePackSerializerOptions.SequencePool.get -> MessagePack.SequencePool MessagePack.MessagePackSerializerOptions.WithPool(MessagePack.SequencePool pool) -> MessagePack.MessagePackSerializerOptions +MessagePack.MessagePackSerializerOptions.WithCompressionMinLength(int compressionMinLength) -> MessagePack.MessagePackSerializerOptions +MessagePack.MessagePackSerializerOptions.CompressionMinLength.get -> int MessagePack.MessagePackStreamReader.MessagePackStreamReader(System.IO.Stream stream, bool leaveOpen, MessagePack.SequencePool sequencePool) -> void MessagePack.MessagePackStreamReader.ReadArrayHeaderAsync(System.Threading.CancellationToken cancellationToken) -> System.Threading.Tasks.ValueTask MessagePack.MessagePackStreamReader.ReadMapHeaderAsync(System.Threading.CancellationToken cancellationToken) -> System.Threading.Tasks.ValueTask @@ -19,4 +21,4 @@ virtual MessagePack.MessagePackStreamReader.Dispose(bool disposing) -> void MessagePack.Formatters.GenericEnumerableFormatter MessagePack.Formatters.GenericEnumerableFormatter.GenericEnumerableFormatter() -> void MessagePack.Formatters.GenericReadOnlyDictionaryFormatter -MessagePack.Formatters.GenericReadOnlyDictionaryFormatter.GenericReadOnlyDictionaryFormatter() -> void \ No newline at end of file +MessagePack.Formatters.GenericReadOnlyDictionaryFormatter.GenericReadOnlyDictionaryFormatter() -> void diff --git a/src/MessagePack/netstandard2.0/PublicAPI.Unshipped.txt b/src/MessagePack/netstandard2.0/PublicAPI.Unshipped.txt index 73b4e7c0..8b63c2e9 100644 --- a/src/MessagePack/netstandard2.0/PublicAPI.Unshipped.txt +++ b/src/MessagePack/netstandard2.0/PublicAPI.Unshipped.txt @@ -4,6 +4,8 @@ MessagePack.FormatterNotRegisteredException.FormatterNotRegisteredException(Syst MessagePack.MessagePackReader.MessagePackReader() -> void MessagePack.MessagePackSerializerOptions.SequencePool.get -> MessagePack.SequencePool MessagePack.MessagePackSerializerOptions.WithPool(MessagePack.SequencePool pool) -> MessagePack.MessagePackSerializerOptions +MessagePack.MessagePackSerializerOptions.WithCompressionMinLength(int compressionMinLength) -> MessagePack.MessagePackSerializerOptions +MessagePack.MessagePackSerializerOptions.CompressionMinLength.get -> int MessagePack.MessagePackStreamReader.MessagePackStreamReader(System.IO.Stream stream, bool leaveOpen, MessagePack.SequencePool sequencePool) -> void MessagePack.MessagePackStreamReader.ReadArrayHeaderAsync(System.Threading.CancellationToken cancellationToken) -> System.Threading.Tasks.ValueTask MessagePack.MessagePackStreamReader.ReadMapHeaderAsync(System.Threading.CancellationToken cancellationToken) -> System.Threading.Tasks.ValueTask @@ -19,4 +21,4 @@ virtual MessagePack.MessagePackStreamReader.Dispose(bool disposing) -> void MessagePack.Formatters.GenericEnumerableFormatter MessagePack.Formatters.GenericEnumerableFormatter.GenericEnumerableFormatter() -> void MessagePack.Formatters.GenericReadOnlyDictionaryFormatter -MessagePack.Formatters.GenericReadOnlyDictionaryFormatter.GenericReadOnlyDictionaryFormatter() -> void \ No newline at end of file +MessagePack.Formatters.GenericReadOnlyDictionaryFormatter.GenericReadOnlyDictionaryFormatter() -> void -- cgit v1.2.3 From 11bdfed53cb331e8ff948d28dab5181d1f9b24b3 Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Fri, 24 Dec 2021 17:45:28 -0700 Subject: Apply LZ4 minimum length to all compression types Before, it only applied to the `Lz4Block` scheme, but I don't see why we would want to apply `Lz4BlockArray` without regard to minimum length, so I've changed the library to always honor the new setting. --- .../Assets/Scripts/MessagePack/MessagePackSerializer.cs | 12 ++++++------ .../Scripts/MessagePack/MessagePackSerializerOptions.cs | 16 +++++++++++----- .../ShareTests/MessagePackSerializerOptionsTests.cs | 11 +++++++++++ 3 files changed, 28 insertions(+), 11 deletions(-) diff --git a/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/MessagePackSerializer.cs b/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/MessagePackSerializer.cs index 56f838f8..e5992be7 100644 --- a/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/MessagePackSerializer.cs +++ b/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/MessagePackSerializer.cs @@ -556,14 +556,14 @@ namespace MessagePack private static void ToLZ4BinaryCore(in ReadOnlySequence msgpackUncompressedData, ref MessagePackWriter writer, MessagePackCompression compression, int minCompressionSize) { - if (compression == MessagePackCompression.Lz4Block) + if (msgpackUncompressedData.Length < minCompressionSize) { - if (msgpackUncompressedData.Length < minCompressionSize) - { - writer.WriteRaw(msgpackUncompressedData); - return; - } + writer.WriteRaw(msgpackUncompressedData); + return; + } + if (compression == MessagePackCompression.Lz4Block) + { var maxCompressedLength = LZ4Codec.MaximumOutputLength((int)msgpackUncompressedData.Length); var lz4Span = ArrayPool.Shared.Rent(maxCompressedLength); try diff --git a/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/MessagePackSerializerOptions.cs b/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/MessagePackSerializerOptions.cs index 9087790b..7d41720e 100644 --- a/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/MessagePackSerializerOptions.cs +++ b/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/MessagePackSerializerOptions.cs @@ -41,7 +41,6 @@ namespace MessagePack protected internal MessagePackSerializerOptions(IFormatterResolver resolver) { this.Resolver = resolver ?? throw new ArgumentNullException(nameof(resolver)); - this.CompressionMinLength = 64; } /// @@ -84,12 +83,14 @@ namespace MessagePack public MessagePackCompression Compression { get; private set; } /// - /// Gets the min sequence length allowed for compression. + /// Gets the length a serialized msgpack result must equal or exceed before is applied. /// + /// The default value is 64. /// - /// Sequences with length less then this value will skip block compression. + /// When compression is not applied due to a short serialized result, deserialization will still succeed + /// even if is set to something other than . /// - public int CompressionMinLength { get; private set; } + public int CompressionMinLength { get; private set; } = 64; /// /// Gets a value indicating whether to serialize with set to some value @@ -207,7 +208,7 @@ namespace MessagePack /// /// Gets a copy of these options with the property set to a new value. /// - /// The new value for the property. + /// The new value for the property. Must be a positive integer. /// The new instance; or the original if the value is unchanged. public MessagePackSerializerOptions WithCompressionMinLength(int compressionMinLength) { @@ -216,6 +217,11 @@ namespace MessagePack return this; } + if (compressionMinLength <= 0) + { + throw new ArgumentOutOfRangeException(nameof(compressionMinLength)); + } + var result = this.Clone(); result.CompressionMinLength = compressionMinLength; return result; diff --git a/src/MessagePack.UnityClient/Assets/Scripts/Tests/ShareTests/MessagePackSerializerOptionsTests.cs b/src/MessagePack.UnityClient/Assets/Scripts/Tests/ShareTests/MessagePackSerializerOptionsTests.cs index 96bec149..dfe988f8 100644 --- a/src/MessagePack.UnityClient/Assets/Scripts/Tests/ShareTests/MessagePackSerializerOptionsTests.cs +++ b/src/MessagePack.UnityClient/Assets/Scripts/Tests/ShareTests/MessagePackSerializerOptionsTests.cs @@ -1,6 +1,7 @@ // Copyright (c) All contributors. All rights reserved. // Licensed under the MIT license. See LICENSE file in the project root for full license information. +using System; using MessagePack; using MessagePack.Resolvers; using Xunit; @@ -36,6 +37,16 @@ public class MessagePackSerializerOptionsTests Assert.Equal(MessagePackCompression.Lz4Block, MessagePackSerializerOptions.Standard.WithCompression(MessagePackCompression.Lz4Block).Compression); } + [Fact] + public void CompressionMinLength() + { + Assert.Equal(64, MessagePackSerializerOptions.Standard.CompressionMinLength); + Assert.Throws(() => MessagePackSerializerOptions.Standard.WithCompressionMinLength(0)); + Assert.Throws(() => MessagePackSerializerOptions.Standard.WithCompressionMinLength(-1)); + MessagePackSerializerOptions options = MessagePackSerializerOptions.Standard.WithCompressionMinLength(128); + Assert.Equal(128, options.CompressionMinLength); + } + [Fact] public void OldSpec() { -- cgit v1.2.3 From fed033dd7b75c036ff598ac608255c22ae8b708f Mon Sep 17 00:00:00 2001 From: pCYSl5EDgo <31692496+pCYSl5EDgo@users.noreply.github.com> Date: Sat, 25 Dec 2021 13:58:25 +0900 Subject: .NET 6 Update (#1355) * Update versions of MPC dependencies * Add net6.0 target Co-authored-by: Andrew Arnott --- Directory.Build.props | 8 +- azure-pipelines.yml | 10 +- azure-pipelines/build_nonWindows.yml | 8 + global.json | 2 +- sandbox/Sandbox/codegen.ps1 | 2 +- sandbox/TestData2/B.cs | 2 +- sandbox/TestData2/C.cs | 2 +- sandbox/TestData2/codegen.ps1 | 2 +- .../MessagePack.Generator.csproj | 8 +- .../Generator/EnumTemplate.cs | 8 +- .../MessagePack.GeneratorCore.csproj | 5 +- src/MessagePack/MessagePack.csproj | 14 +- src/MessagePack/net6.0/PublicAPI.Shipped.txt | 1154 ++++++++++++++++++++ src/MessagePack/net6.0/PublicAPI.Unshipped.txt | 30 + .../netcoreapp2.1/PublicAPI.Shipped.txt | 1154 -------------------- .../netcoreapp2.1/PublicAPI.Unshipped.txt | 24 - tests/MessagePack.Tests/MessagePack.Tests.csproj | 4 +- tools/Install-DotNetSdk.ps1 | 25 +- 18 files changed, 1245 insertions(+), 1217 deletions(-) create mode 100644 src/MessagePack/net6.0/PublicAPI.Shipped.txt create mode 100644 src/MessagePack/net6.0/PublicAPI.Unshipped.txt delete mode 100644 src/MessagePack/netcoreapp2.1/PublicAPI.Shipped.txt delete mode 100644 src/MessagePack/netcoreapp2.1/PublicAPI.Unshipped.txt diff --git a/Directory.Build.props b/Directory.Build.props index 99d92e03..fc7c5f0f 100644 --- a/Directory.Build.props +++ b/Directory.Build.props @@ -28,10 +28,10 @@ - - - - + + + + diff --git a/azure-pipelines.yml b/azure-pipelines.yml index 2c179114..d18997c3 100644 --- a/azure-pipelines.yml +++ b/azure-pipelines.yml @@ -19,7 +19,7 @@ stages: jobs: - job: Windows pool: - vmImage: windows-2019 + vmImage: windows-2022 steps: - checkout: self clean: true @@ -44,7 +44,7 @@ stages: - job: Linux pool: - vmImage: Ubuntu 18.04 + vmImage: ubuntu-20.04 steps: - checkout: self clean: true @@ -53,7 +53,7 @@ stages: - job: macOS pool: - vmImage: macOS-10.15 + vmImage: macOS-11 steps: - checkout: self clean: true @@ -64,7 +64,7 @@ stages: # It also helps exercise mpc so bugs don't go unnoticed. - job: codegen_diff pool: - vmImage: ubuntu-latest + vmImage: ubuntu-20.04 steps: - checkout: self clean: true @@ -84,7 +84,7 @@ stages: jobs: - job: push pool: - vmImage: ubuntu-latest + vmImage: ubuntu-20.04 steps: - download: current artifact: nuget diff --git a/azure-pipelines/build_nonWindows.yml b/azure-pipelines/build_nonWindows.yml index 6b5ac10a..9a57e2f9 100644 --- a/azure-pipelines/build_nonWindows.yml +++ b/azure-pipelines/build_nonWindows.yml @@ -21,6 +21,14 @@ steps: arguments: --no-build -c $(BuildConfiguration) -f net5.0 -v n --settings "$(Build.Repository.LocalPath)/azure-pipelines/$(Agent.OS).runsettings" testRunTitle: net5.0-$(Agent.JobName) +- task: DotNetCoreCLI@2 + displayName: Run MessagePack.Tests (net6.0) + inputs: + command: test + projects: tests/MessagePack.Tests/MessagePack.Tests.csproj + arguments: --no-build -c $(BuildConfiguration) -f net6.0 -v n --settings "$(Build.Repository.LocalPath)/azure-pipelines/$(Agent.OS).runsettings" + testRunTitle: net6.0-$(Agent.JobName) + - bash: mono ~/.nuget/packages/xunit.runner.console/2.4.1/tools/net472/xunit.console.exe bin/MessagePack.Tests/$(BuildConfiguration)/net472/MessagePack.Tests.dll -html $(BUILD.ARTIFACTSTAGINGDIRECTORY)/build_logs/mono_testrun.html displayName: Run MessagePack.Tests (mono) diff --git a/global.json b/global.json index 3057bb45..d46619b0 100644 --- a/global.json +++ b/global.json @@ -1,6 +1,6 @@ { "sdk": { - "version": "5.0.401", + "version": "6.0.101", "rollForward": "patch", "allowPrerelease": false } diff --git a/sandbox/Sandbox/codegen.ps1 b/sandbox/Sandbox/codegen.ps1 index 2a595dee..279718f6 100644 --- a/sandbox/Sandbox/codegen.ps1 +++ b/sandbox/Sandbox/codegen.ps1 @@ -1 +1 @@ -dotnet run -f "net5.0" -p "$PSScriptRoot/../../src/MessagePack.Generator/MessagePack.Generator.csproj" -- -i "$PSScriptRoot/../SharedData/SharedData.csproj" -o "$PSScriptRoot/Generated.cs" +dotnet run -f "net6.0" --project "$PSScriptRoot/../../src/MessagePack.Generator/MessagePack.Generator.csproj" -- -i "$PSScriptRoot/../SharedData/SharedData.csproj" -o "$PSScriptRoot/Generated.cs" diff --git a/sandbox/TestData2/B.cs b/sandbox/TestData2/B.cs index 769c0e1c..b44ff016 100644 --- a/sandbox/TestData2/B.cs +++ b/sandbox/TestData2/B.cs @@ -1,4 +1,4 @@ -// Copyright (c) All contributors. All rights reserved. +// Copyright (c) All contributors. All rights reserved. // Licensed under the MIT license. See LICENSE file in the project root for full license information. using System.Collections.Generic; diff --git a/sandbox/TestData2/C.cs b/sandbox/TestData2/C.cs index 079c171e..4a42584d 100644 --- a/sandbox/TestData2/C.cs +++ b/sandbox/TestData2/C.cs @@ -1,4 +1,4 @@ -// Copyright (c) All contributors. All rights reserved. +// Copyright (c) All contributors. All rights reserved. // Licensed under the MIT license. See LICENSE file in the project root for full license information. using MessagePack; diff --git a/sandbox/TestData2/codegen.ps1 b/sandbox/TestData2/codegen.ps1 index d3af9269..6781688e 100644 --- a/sandbox/TestData2/codegen.ps1 +++ b/sandbox/TestData2/codegen.ps1 @@ -1 +1 @@ -dotnet run -f "net5.0" -p "$PSScriptRoot/../../src/MessagePack.Generator/MessagePack.Generator.csproj" -- -i "$PSScriptRoot/TestData2.csproj" -o "$PSScriptRoot/Generated.cs" +dotnet run -f "net6.0" --project "$PSScriptRoot/../../src/MessagePack.Generator/MessagePack.Generator.csproj" -- -i "$PSScriptRoot/TestData2.csproj" -o "$PSScriptRoot/Generated.cs" diff --git a/src/MessagePack.Generator/MessagePack.Generator.csproj b/src/MessagePack.Generator/MessagePack.Generator.csproj index b684a5b8..be7a1027 100644 --- a/src/MessagePack.Generator/MessagePack.Generator.csproj +++ b/src/MessagePack.Generator/MessagePack.Generator.csproj @@ -3,8 +3,8 @@ mpc Exe - netcoreapp3.1;net5.0 - 9 + netcoreapp3.1;net5.0;net6.0 + 10 enable true true @@ -18,11 +18,11 @@ - + - + diff --git a/src/MessagePack.GeneratorCore/Generator/EnumTemplate.cs b/src/MessagePack.GeneratorCore/Generator/EnumTemplate.cs index b64b4912..814a3123 100644 --- a/src/MessagePack.GeneratorCore/Generator/EnumTemplate.cs +++ b/src/MessagePack.GeneratorCore/Generator/EnumTemplate.cs @@ -1,10 +1,10 @@ // ------------------------------------------------------------------------------ // -// このコードはツールによって生成されました。 -// ランタイム バージョン: 16.0.0.0 +// This code was generated by a tool. +// Runtime Version: 16.0.0.0 // -// このファイルへの変更は、正しくない動作の原因になる可能性があり、 -// コードが再生成されると失われます。 +// Changes to this file may cause incorrect behavior and will be lost if +// the code is regenerated. // // ------------------------------------------------------------------------------ namespace MessagePackCompiler.Generator diff --git a/src/MessagePack.GeneratorCore/MessagePack.GeneratorCore.csproj b/src/MessagePack.GeneratorCore/MessagePack.GeneratorCore.csproj index 526615e5..df4755e2 100644 --- a/src/MessagePack.GeneratorCore/MessagePack.GeneratorCore.csproj +++ b/src/MessagePack.GeneratorCore/MessagePack.GeneratorCore.csproj @@ -11,9 +11,8 @@ - - - + + diff --git a/src/MessagePack/MessagePack.csproj b/src/MessagePack/MessagePack.csproj index c7c5090f..cb24047a 100644 --- a/src/MessagePack/MessagePack.csproj +++ b/src/MessagePack/MessagePack.csproj @@ -1,7 +1,7 @@  - netstandard2.0;netcoreapp3.1;net5.0 + netstandard2.0;netcoreapp3.1;net5.0;net6.0 $(NoWarn);CS0649 True $(DefineConstants);SPAN_BUILTIN @@ -33,15 +33,15 @@ - + - - - - - + + + + + diff --git a/src/MessagePack/net6.0/PublicAPI.Shipped.txt b/src/MessagePack/net6.0/PublicAPI.Shipped.txt new file mode 100644 index 00000000..71c4d87b --- /dev/null +++ b/src/MessagePack/net6.0/PublicAPI.Shipped.txt @@ -0,0 +1,1154 @@ +MessagePack.ExtensionHeader +MessagePack.ExtensionHeader.ExtensionHeader(sbyte typeCode, int length) -> void +MessagePack.ExtensionHeader.ExtensionHeader(sbyte typeCode, uint length) -> void +MessagePack.ExtensionHeader.Length.get -> uint +MessagePack.ExtensionHeader.TypeCode.get -> sbyte +MessagePack.ExtensionResult +MessagePack.ExtensionResult.Data.get -> System.Buffers.ReadOnlySequence +MessagePack.ExtensionResult.ExtensionResult(sbyte typeCode, System.Buffers.ReadOnlySequence data) -> void +MessagePack.ExtensionResult.ExtensionResult(sbyte typeCode, System.Memory data) -> void +MessagePack.ExtensionResult.Header.get -> MessagePack.ExtensionHeader +MessagePack.ExtensionResult.TypeCode.get -> sbyte +MessagePack.FormatterNotRegisteredException +MessagePack.FormatterNotRegisteredException.FormatterNotRegisteredException(string message) -> void +MessagePack.FormatterResolverExtensions +MessagePack.Formatters.ArrayFormatter +MessagePack.Formatters.ArrayFormatter.ArrayFormatter() -> void +MessagePack.Formatters.ArrayFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> T[] +MessagePack.Formatters.ArrayFormatter.Serialize(ref MessagePack.MessagePackWriter writer, T[] value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.ArraySegmentFormatter +MessagePack.Formatters.ArraySegmentFormatter.ArraySegmentFormatter() -> void +MessagePack.Formatters.ArraySegmentFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> System.ArraySegment +MessagePack.Formatters.ArraySegmentFormatter.Serialize(ref MessagePack.MessagePackWriter writer, System.ArraySegment value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.BigIntegerFormatter +MessagePack.Formatters.BigIntegerFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> System.Numerics.BigInteger +MessagePack.Formatters.BigIntegerFormatter.Serialize(ref MessagePack.MessagePackWriter writer, System.Numerics.BigInteger value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.BitArrayFormatter +MessagePack.Formatters.BitArrayFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> System.Collections.BitArray +MessagePack.Formatters.BitArrayFormatter.Serialize(ref MessagePack.MessagePackWriter writer, System.Collections.BitArray value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.BooleanArrayFormatter +MessagePack.Formatters.BooleanArrayFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> bool[] +MessagePack.Formatters.BooleanArrayFormatter.Serialize(ref MessagePack.MessagePackWriter writer, bool[] value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.BooleanFormatter +MessagePack.Formatters.BooleanFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> bool +MessagePack.Formatters.BooleanFormatter.Serialize(ref MessagePack.MessagePackWriter writer, bool value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.ByteArrayFormatter +MessagePack.Formatters.ByteArrayFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> byte[] +MessagePack.Formatters.ByteArrayFormatter.Serialize(ref MessagePack.MessagePackWriter writer, byte[] value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.ByteArraySegmentFormatter +MessagePack.Formatters.ByteArraySegmentFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> System.ArraySegment +MessagePack.Formatters.ByteArraySegmentFormatter.Serialize(ref MessagePack.MessagePackWriter writer, System.ArraySegment value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.ByteFormatter +MessagePack.Formatters.ByteFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> byte +MessagePack.Formatters.ByteFormatter.Serialize(ref MessagePack.MessagePackWriter writer, byte value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.CharArrayFormatter +MessagePack.Formatters.CharArrayFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> char[] +MessagePack.Formatters.CharArrayFormatter.Serialize(ref MessagePack.MessagePackWriter writer, char[] value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.CharFormatter +MessagePack.Formatters.CharFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> char +MessagePack.Formatters.CharFormatter.Serialize(ref MessagePack.MessagePackWriter writer, char value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.CollectionFormatterBase +MessagePack.Formatters.CollectionFormatterBase.CollectionFormatterBase() -> void +MessagePack.Formatters.CollectionFormatterBase +MessagePack.Formatters.CollectionFormatterBase.CollectionFormatterBase() -> void +MessagePack.Formatters.CollectionFormatterBase +MessagePack.Formatters.CollectionFormatterBase.CollectionFormatterBase() -> void +MessagePack.Formatters.CollectionFormatterBase.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> TCollection +MessagePack.Formatters.CollectionFormatterBase.Serialize(ref MessagePack.MessagePackWriter writer, TCollection value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.ComplexFormatter +MessagePack.Formatters.ComplexFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> System.Numerics.Complex +MessagePack.Formatters.ComplexFormatter.Serialize(ref MessagePack.MessagePackWriter writer, System.Numerics.Complex value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.ConcurrentBagFormatter +MessagePack.Formatters.ConcurrentBagFormatter.ConcurrentBagFormatter() -> void +MessagePack.Formatters.ConcurrentDictionaryFormatter +MessagePack.Formatters.ConcurrentDictionaryFormatter.ConcurrentDictionaryFormatter() -> void +MessagePack.Formatters.ConcurrentQueueFormatter +MessagePack.Formatters.ConcurrentQueueFormatter.ConcurrentQueueFormatter() -> void +MessagePack.Formatters.ConcurrentStackFormatter +MessagePack.Formatters.ConcurrentStackFormatter.ConcurrentStackFormatter() -> void +MessagePack.Formatters.DateTimeArrayFormatter +MessagePack.Formatters.DateTimeArrayFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> System.DateTime[] +MessagePack.Formatters.DateTimeArrayFormatter.Serialize(ref MessagePack.MessagePackWriter writer, System.DateTime[] value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.DateTimeFormatter +MessagePack.Formatters.DateTimeFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> System.DateTime +MessagePack.Formatters.DateTimeFormatter.Serialize(ref MessagePack.MessagePackWriter writer, System.DateTime value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.DateTimeOffsetFormatter +MessagePack.Formatters.DateTimeOffsetFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> System.DateTimeOffset +MessagePack.Formatters.DateTimeOffsetFormatter.Serialize(ref MessagePack.MessagePackWriter writer, System.DateTimeOffset value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.DecimalFormatter +MessagePack.Formatters.DecimalFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> decimal +MessagePack.Formatters.DecimalFormatter.Serialize(ref MessagePack.MessagePackWriter writer, decimal value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.DictionaryFormatter +MessagePack.Formatters.DictionaryFormatter.DictionaryFormatter() -> void +MessagePack.Formatters.DictionaryFormatterBase +MessagePack.Formatters.DictionaryFormatterBase.DictionaryFormatterBase() -> void +MessagePack.Formatters.DictionaryFormatterBase +MessagePack.Formatters.DictionaryFormatterBase.DictionaryFormatterBase() -> void +MessagePack.Formatters.DictionaryFormatterBase +MessagePack.Formatters.DictionaryFormatterBase.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> TDictionary +MessagePack.Formatters.DictionaryFormatterBase.DictionaryFormatterBase() -> void +MessagePack.Formatters.DictionaryFormatterBase.Serialize(ref MessagePack.MessagePackWriter writer, TDictionary value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.DoubleArrayFormatter +MessagePack.Formatters.DoubleArrayFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> double[] +MessagePack.Formatters.DoubleArrayFormatter.Serialize(ref MessagePack.MessagePackWriter writer, double[] value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.DoubleFormatter +MessagePack.Formatters.DoubleFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> double +MessagePack.Formatters.DoubleFormatter.Serialize(ref MessagePack.MessagePackWriter writer, double value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.DynamicObjectTypeFallbackFormatter +MessagePack.Formatters.DynamicObjectTypeFallbackFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> object +MessagePack.Formatters.DynamicObjectTypeFallbackFormatter.Serialize(ref MessagePack.MessagePackWriter writer, object value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.EnumAsStringFormatter +MessagePack.Formatters.EnumAsStringFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> T +MessagePack.Formatters.EnumAsStringFormatter.EnumAsStringFormatter() -> void +MessagePack.Formatters.EnumAsStringFormatter.Serialize(ref MessagePack.MessagePackWriter writer, T value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.ForceByteBlockFormatter +MessagePack.Formatters.ForceByteBlockFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> byte +MessagePack.Formatters.ForceByteBlockFormatter.Serialize(ref MessagePack.MessagePackWriter writer, byte value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.ForceInt16BlockArrayFormatter +MessagePack.Formatters.ForceInt16BlockArrayFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> short[] +MessagePack.Formatters.ForceInt16BlockArrayFormatter.Serialize(ref MessagePack.MessagePackWriter writer, short[] value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.ForceInt16BlockFormatter +MessagePack.Formatters.ForceInt16BlockFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> short +MessagePack.Formatters.ForceInt16BlockFormatter.Serialize(ref MessagePack.MessagePackWriter writer, short value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.ForceInt32BlockArrayFormatter +MessagePack.Formatters.ForceInt32BlockArrayFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> int[] +MessagePack.Formatters.ForceInt32BlockArrayFormatter.Serialize(ref MessagePack.MessagePackWriter writer, int[] value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.ForceInt32BlockFormatter +MessagePack.Formatters.ForceInt32BlockFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> int +MessagePack.Formatters.ForceInt32BlockFormatter.Serialize(ref MessagePack.MessagePackWriter writer, int value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.ForceInt64BlockArrayFormatter +MessagePack.Formatters.ForceInt64BlockArrayFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> long[] +MessagePack.Formatters.ForceInt64BlockArrayFormatter.Serialize(ref MessagePack.MessagePackWriter writer, long[] value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.ForceInt64BlockFormatter +MessagePack.Formatters.ForceInt64BlockFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> long +MessagePack.Formatters.ForceInt64BlockFormatter.Serialize(ref MessagePack.MessagePackWriter writer, long value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.ForceSByteBlockArrayFormatter +MessagePack.Formatters.ForceSByteBlockArrayFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> sbyte[] +MessagePack.Formatters.ForceSByteBlockArrayFormatter.Serialize(ref MessagePack.MessagePackWriter writer, sbyte[] value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.ForceSByteBlockFormatter +MessagePack.Formatters.ForceSByteBlockFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> sbyte +MessagePack.Formatters.ForceSByteBlockFormatter.Serialize(ref MessagePack.MessagePackWriter writer, sbyte value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.ForceUInt16BlockArrayFormatter +MessagePack.Formatters.ForceUInt16BlockArrayFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> ushort[] +MessagePack.Formatters.ForceUInt16BlockArrayFormatter.Serialize(ref MessagePack.MessagePackWriter writer, ushort[] value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.ForceUInt16BlockFormatter +MessagePack.Formatters.ForceUInt16BlockFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> ushort +MessagePack.Formatters.ForceUInt16BlockFormatter.Serialize(ref MessagePack.MessagePackWriter writer, ushort value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.ForceUInt32BlockArrayFormatter +MessagePack.Formatters.ForceUInt32BlockArrayFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> uint[] +MessagePack.Formatters.ForceUInt32BlockArrayFormatter.Serialize(ref MessagePack.MessagePackWriter writer, uint[] value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.ForceUInt32BlockFormatter +MessagePack.Formatters.ForceUInt32BlockFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> uint +MessagePack.Formatters.ForceUInt32BlockFormatter.Serialize(ref MessagePack.MessagePackWriter writer, uint value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.ForceUInt64BlockArrayFormatter +MessagePack.Formatters.ForceUInt64BlockArrayFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> ulong[] +MessagePack.Formatters.ForceUInt64BlockArrayFormatter.Serialize(ref MessagePack.MessagePackWriter writer, ulong[] value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.ForceUInt64BlockFormatter +MessagePack.Formatters.ForceUInt64BlockFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> ulong +MessagePack.Formatters.ForceUInt64BlockFormatter.Serialize(ref MessagePack.MessagePackWriter writer, ulong value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.FourDimensionalArrayFormatter +MessagePack.Formatters.FourDimensionalArrayFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> T[,,,] +MessagePack.Formatters.FourDimensionalArrayFormatter.FourDimensionalArrayFormatter() -> void +MessagePack.Formatters.FourDimensionalArrayFormatter.Serialize(ref MessagePack.MessagePackWriter writer, T[,,,] value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.GenericCollectionFormatter +MessagePack.Formatters.GenericCollectionFormatter.GenericCollectionFormatter() -> void +MessagePack.Formatters.GenericDictionaryFormatter +MessagePack.Formatters.GenericDictionaryFormatter.GenericDictionaryFormatter() -> void +MessagePack.Formatters.GenericEnumFormatter +MessagePack.Formatters.GenericEnumFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> T +MessagePack.Formatters.GenericEnumFormatter.GenericEnumFormatter() -> void +MessagePack.Formatters.GenericEnumFormatter.Serialize(ref MessagePack.MessagePackWriter writer, T value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.GuidFormatter +MessagePack.Formatters.GuidFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> System.Guid +MessagePack.Formatters.GuidFormatter.Serialize(ref MessagePack.MessagePackWriter writer, System.Guid value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.HashSetFormatter +MessagePack.Formatters.HashSetFormatter.HashSetFormatter() -> void +MessagePack.Formatters.IMessagePackFormatter +MessagePack.Formatters.IMessagePackFormatter +MessagePack.Formatters.IMessagePackFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> T +MessagePack.Formatters.IMessagePackFormatter.Serialize(ref MessagePack.MessagePackWriter writer, T value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.IgnoreFormatter +MessagePack.Formatters.IgnoreFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> T +MessagePack.Formatters.IgnoreFormatter.IgnoreFormatter() -> void +MessagePack.Formatters.IgnoreFormatter.Serialize(ref MessagePack.MessagePackWriter writer, T value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.Int16ArrayFormatter +MessagePack.Formatters.Int16ArrayFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> short[] +MessagePack.Formatters.Int16ArrayFormatter.Serialize(ref MessagePack.MessagePackWriter writer, short[] value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.Int16Formatter +MessagePack.Formatters.Int16Formatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> short +MessagePack.Formatters.Int16Formatter.Serialize(ref MessagePack.MessagePackWriter writer, short value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.Int32ArrayFormatter +MessagePack.Formatters.Int32ArrayFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> int[] +MessagePack.Formatters.Int32ArrayFormatter.Serialize(ref MessagePack.MessagePackWriter writer, int[] value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.Int32Formatter +MessagePack.Formatters.Int32Formatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> int +MessagePack.Formatters.Int32Formatter.Serialize(ref MessagePack.MessagePackWriter writer, int value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.Int64ArrayFormatter +MessagePack.Formatters.Int64ArrayFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> long[] +MessagePack.Formatters.Int64ArrayFormatter.Serialize(ref MessagePack.MessagePackWriter writer, long[] value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.Int64Formatter +MessagePack.Formatters.Int64Formatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> long +MessagePack.Formatters.Int64Formatter.Serialize(ref MessagePack.MessagePackWriter writer, long value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.InterfaceCollectionFormatter +MessagePack.Formatters.InterfaceCollectionFormatter.InterfaceCollectionFormatter() -> void +MessagePack.Formatters.InterfaceDictionaryFormatter +MessagePack.Formatters.InterfaceDictionaryFormatter.InterfaceDictionaryFormatter() -> void +MessagePack.Formatters.InterfaceEnumerableFormatter +MessagePack.Formatters.InterfaceEnumerableFormatter.InterfaceEnumerableFormatter() -> void +MessagePack.Formatters.InterfaceGroupingFormatter +MessagePack.Formatters.InterfaceGroupingFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> System.Linq.IGrouping +MessagePack.Formatters.InterfaceGroupingFormatter.InterfaceGroupingFormatter() -> void +MessagePack.Formatters.InterfaceGroupingFormatter.Serialize(ref MessagePack.MessagePackWriter writer, System.Linq.IGrouping value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.InterfaceListFormatter +MessagePack.Formatters.InterfaceListFormatter.InterfaceListFormatter() -> void +MessagePack.Formatters.InterfaceLookupFormatter +MessagePack.Formatters.InterfaceLookupFormatter.InterfaceLookupFormatter() -> void +MessagePack.Formatters.InterfaceReadOnlyCollectionFormatter +MessagePack.Formatters.InterfaceReadOnlyCollectionFormatter.InterfaceReadOnlyCollectionFormatter() -> void +MessagePack.Formatters.InterfaceReadOnlyDictionaryFormatter +MessagePack.Formatters.InterfaceReadOnlyDictionaryFormatter.InterfaceReadOnlyDictionaryFormatter() -> void +MessagePack.Formatters.InterfaceReadOnlyListFormatter +MessagePack.Formatters.InterfaceReadOnlyListFormatter.InterfaceReadOnlyListFormatter() -> void +MessagePack.Formatters.InterfaceSetFormatter +MessagePack.Formatters.InterfaceSetFormatter.InterfaceSetFormatter() -> void +MessagePack.Formatters.KeyValuePairFormatter +MessagePack.Formatters.KeyValuePairFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> System.Collections.Generic.KeyValuePair +MessagePack.Formatters.KeyValuePairFormatter.KeyValuePairFormatter() -> void +MessagePack.Formatters.KeyValuePairFormatter.Serialize(ref MessagePack.MessagePackWriter writer, System.Collections.Generic.KeyValuePair value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.LazyFormatter +MessagePack.Formatters.LazyFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> System.Lazy +MessagePack.Formatters.LazyFormatter.LazyFormatter() -> void +MessagePack.Formatters.LazyFormatter.Serialize(ref MessagePack.MessagePackWriter writer, System.Lazy value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.LinkedListFormatter +MessagePack.Formatters.LinkedListFormatter.LinkedListFormatter() -> void +MessagePack.Formatters.ListFormatter +MessagePack.Formatters.ListFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> System.Collections.Generic.List +MessagePack.Formatters.ListFormatter.ListFormatter() -> void +MessagePack.Formatters.ListFormatter.Serialize(ref MessagePack.MessagePackWriter writer, System.Collections.Generic.List value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.NativeDateTimeArrayFormatter +MessagePack.Formatters.NativeDateTimeArrayFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> System.DateTime[] +MessagePack.Formatters.NativeDateTimeArrayFormatter.NativeDateTimeArrayFormatter() -> void +MessagePack.Formatters.NativeDateTimeArrayFormatter.Serialize(ref MessagePack.MessagePackWriter writer, System.DateTime[] value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.NativeDateTimeFormatter +MessagePack.Formatters.NativeDateTimeFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> System.DateTime +MessagePack.Formatters.NativeDateTimeFormatter.NativeDateTimeFormatter() -> void +MessagePack.Formatters.NativeDateTimeFormatter.Serialize(ref MessagePack.MessagePackWriter writer, System.DateTime value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.NativeDecimalFormatter +MessagePack.Formatters.NativeDecimalFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> decimal +MessagePack.Formatters.NativeDecimalFormatter.Serialize(ref MessagePack.MessagePackWriter writer, decimal value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.NativeGuidFormatter +MessagePack.Formatters.NativeGuidFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> System.Guid +MessagePack.Formatters.NativeGuidFormatter.Serialize(ref MessagePack.MessagePackWriter writer, System.Guid value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.NilFormatter +MessagePack.Formatters.NilFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> MessagePack.Nil +MessagePack.Formatters.NilFormatter.Serialize(ref MessagePack.MessagePackWriter writer, MessagePack.Nil value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.NonGenericDictionaryFormatter +MessagePack.Formatters.NonGenericDictionaryFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> T +MessagePack.Formatters.NonGenericDictionaryFormatter.NonGenericDictionaryFormatter() -> void +MessagePack.Formatters.NonGenericDictionaryFormatter.Serialize(ref MessagePack.MessagePackWriter writer, T value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.NonGenericInterfaceDictionaryFormatter +MessagePack.Formatters.NonGenericInterfaceDictionaryFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> System.Collections.IDictionary +MessagePack.Formatters.NonGenericInterfaceDictionaryFormatter.Serialize(ref MessagePack.MessagePackWriter writer, System.Collections.IDictionary value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.NonGenericInterfaceListFormatter +MessagePack.Formatters.NonGenericInterfaceListFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> System.Collections.IList +MessagePack.Formatters.NonGenericInterfaceListFormatter.Serialize(ref MessagePack.MessagePackWriter writer, System.Collections.IList value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.NonGenericListFormatter +MessagePack.Formatters.NonGenericListFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> T +MessagePack.Formatters.NonGenericListFormatter.NonGenericListFormatter() -> void +MessagePack.Formatters.NonGenericListFormatter.Serialize(ref MessagePack.MessagePackWriter writer, T value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.NullableBooleanFormatter +MessagePack.Formatters.NullableBooleanFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> bool? +MessagePack.Formatters.NullableBooleanFormatter.Serialize(ref MessagePack.MessagePackWriter writer, bool? value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.NullableByteFormatter +MessagePack.Formatters.NullableByteFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> byte? +MessagePack.Formatters.NullableByteFormatter.Serialize(ref MessagePack.MessagePackWriter writer, byte? value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.NullableCharFormatter +MessagePack.Formatters.NullableCharFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> char? +MessagePack.Formatters.NullableCharFormatter.Serialize(ref MessagePack.MessagePackWriter writer, char? value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.NullableDateTimeFormatter +MessagePack.Formatters.NullableDateTimeFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> System.DateTime? +MessagePack.Formatters.NullableDateTimeFormatter.Serialize(ref MessagePack.MessagePackWriter writer, System.DateTime? value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.NullableDoubleFormatter +MessagePack.Formatters.NullableDoubleFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> double? +MessagePack.Formatters.NullableDoubleFormatter.Serialize(ref MessagePack.MessagePackWriter writer, double? value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.NullableForceByteBlockFormatter +MessagePack.Formatters.NullableForceByteBlockFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> byte? +MessagePack.Formatters.NullableForceByteBlockFormatter.Serialize(ref MessagePack.MessagePackWriter writer, byte? value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.NullableForceInt16BlockFormatter +MessagePack.Formatters.NullableForceInt16BlockFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> short? +MessagePack.Formatters.NullableForceInt16BlockFormatter.Serialize(ref MessagePack.MessagePackWriter writer, short? value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.NullableForceInt32BlockFormatter +MessagePack.Formatters.NullableForceInt32BlockFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> int? +MessagePack.Formatters.NullableForceInt32BlockFormatter.Serialize(ref MessagePack.MessagePackWriter writer, int? value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.NullableForceInt64BlockFormatter +MessagePack.Formatters.NullableForceInt64BlockFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> long? +MessagePack.Formatters.NullableForceInt64BlockFormatter.Serialize(ref MessagePack.MessagePackWriter writer, long? value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.NullableForceSByteBlockFormatter +MessagePack.Formatters.NullableForceSByteBlockFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> sbyte? +MessagePack.Formatters.NullableForceSByteBlockFormatter.Serialize(ref MessagePack.MessagePackWriter writer, sbyte? value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.NullableForceUInt16BlockFormatter +MessagePack.Formatters.NullableForceUInt16BlockFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> ushort? +MessagePack.Formatters.NullableForceUInt16BlockFormatter.Serialize(ref MessagePack.MessagePackWriter writer, ushort? value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.NullableForceUInt32BlockFormatter +MessagePack.Formatters.NullableForceUInt32BlockFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> uint? +MessagePack.Formatters.NullableForceUInt32BlockFormatter.Serialize(ref MessagePack.MessagePackWriter writer, uint? value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.NullableForceUInt64BlockFormatter +MessagePack.Formatters.NullableForceUInt64BlockFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> ulong? +MessagePack.Formatters.NullableForceUInt64BlockFormatter.Serialize(ref MessagePack.MessagePackWriter writer, ulong? value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.NullableFormatter +MessagePack.Formatters.NullableFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> T? +MessagePack.Formatters.NullableFormatter.NullableFormatter() -> void +MessagePack.Formatters.NullableFormatter.Serialize(ref MessagePack.MessagePackWriter writer, T? value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.NullableInt16Formatter +MessagePack.Formatters.NullableInt16Formatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> short? +MessagePack.Formatters.NullableInt16Formatter.Serialize(ref MessagePack.MessagePackWriter writer, short? value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.NullableInt32Formatter +MessagePack.Formatters.NullableInt32Formatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> int? +MessagePack.Formatters.NullableInt32Formatter.Serialize(ref MessagePack.MessagePackWriter writer, int? value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.NullableInt64Formatter +MessagePack.Formatters.NullableInt64Formatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> long? +MessagePack.Formatters.NullableInt64Formatter.Serialize(ref MessagePack.MessagePackWriter writer, long? value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.NullableNilFormatter +MessagePack.Formatters.NullableNilFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> MessagePack.Nil? +MessagePack.Formatters.NullableNilFormatter.Serialize(ref MessagePack.MessagePackWriter writer, MessagePack.Nil? value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.NullableSByteFormatter +MessagePack.Formatters.NullableSByteFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> sbyte? +MessagePack.Formatters.NullableSByteFormatter.Serialize(ref MessagePack.MessagePackWriter writer, sbyte? value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.NullableSingleFormatter +MessagePack.Formatters.NullableSingleFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> float? +MessagePack.Formatters.NullableSingleFormatter.Serialize(ref MessagePack.MessagePackWriter writer, float? value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.NullableStringArrayFormatter +MessagePack.Formatters.NullableStringArrayFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> string[] +MessagePack.Formatters.NullableStringArrayFormatter.Serialize(ref MessagePack.MessagePackWriter writer, string[] value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.NullableStringFormatter +MessagePack.Formatters.NullableStringFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> string +MessagePack.Formatters.NullableStringFormatter.Serialize(ref MessagePack.MessagePackWriter writer, string value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.NullableUInt16Formatter +MessagePack.Formatters.NullableUInt16Formatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> ushort? +MessagePack.Formatters.NullableUInt16Formatter.Serialize(ref MessagePack.MessagePackWriter writer, ushort? value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.NullableUInt32Formatter +MessagePack.Formatters.NullableUInt32Formatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> uint? +MessagePack.Formatters.NullableUInt32Formatter.Serialize(ref MessagePack.MessagePackWriter writer, uint? value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.NullableUInt64Formatter +MessagePack.Formatters.NullableUInt64Formatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> ulong? +MessagePack.Formatters.NullableUInt64Formatter.Serialize(ref MessagePack.MessagePackWriter writer, ulong? value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.ObservableCollectionFormatter +MessagePack.Formatters.ObservableCollectionFormatter.ObservableCollectionFormatter() -> void +MessagePack.Formatters.PrimitiveObjectFormatter +MessagePack.Formatters.PrimitiveObjectFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> object +MessagePack.Formatters.PrimitiveObjectFormatter.Serialize(ref MessagePack.MessagePackWriter writer, object value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.QueueFormatter +MessagePack.Formatters.QueueFormatter.QueueFormatter() -> void +MessagePack.Formatters.ReadOnlyCollectionFormatter +MessagePack.Formatters.ReadOnlyCollectionFormatter.ReadOnlyCollectionFormatter() -> void +MessagePack.Formatters.ReadOnlyDictionaryFormatter +MessagePack.Formatters.ReadOnlyDictionaryFormatter.ReadOnlyDictionaryFormatter() -> void +MessagePack.Formatters.ReadOnlyObservableCollectionFormatter +MessagePack.Formatters.ReadOnlyObservableCollectionFormatter.ReadOnlyObservableCollectionFormatter() -> void +MessagePack.Formatters.SByteArrayFormatter +MessagePack.Formatters.SByteArrayFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> sbyte[] +MessagePack.Formatters.SByteArrayFormatter.Serialize(ref MessagePack.MessagePackWriter writer, sbyte[] value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.SByteFormatter +MessagePack.Formatters.SByteFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> sbyte +MessagePack.Formatters.SByteFormatter.Serialize(ref MessagePack.MessagePackWriter writer, sbyte value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.SingleArrayFormatter +MessagePack.Formatters.SingleArrayFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> float[] +MessagePack.Formatters.SingleArrayFormatter.Serialize(ref MessagePack.MessagePackWriter writer, float[] value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.SingleFormatter +MessagePack.Formatters.SingleFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> float +MessagePack.Formatters.SingleFormatter.Serialize(ref MessagePack.MessagePackWriter writer, float value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.SortedDictionaryFormatter +MessagePack.Formatters.SortedDictionaryFormatter.SortedDictionaryFormatter() -> void +MessagePack.Formatters.SortedListFormatter +MessagePack.Formatters.SortedListFormatter.SortedListFormatter() -> void +MessagePack.Formatters.StackFormatter +MessagePack.Formatters.StackFormatter.StackFormatter() -> void +MessagePack.Formatters.StaticNullableFormatter +MessagePack.Formatters.StaticNullableFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> T? +MessagePack.Formatters.StaticNullableFormatter.Serialize(ref MessagePack.MessagePackWriter writer, T? value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.StaticNullableFormatter.StaticNullableFormatter(MessagePack.Formatters.IMessagePackFormatter underlyingFormatter) -> void +MessagePack.Formatters.StringBuilderFormatter +MessagePack.Formatters.StringBuilderFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> System.Text.StringBuilder +MessagePack.Formatters.StringBuilderFormatter.Serialize(ref MessagePack.MessagePackWriter writer, System.Text.StringBuilder value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.ThreeDimensionalArrayFormatter +MessagePack.Formatters.ThreeDimensionalArrayFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> T[,,] +MessagePack.Formatters.ThreeDimensionalArrayFormatter.Serialize(ref MessagePack.MessagePackWriter writer, T[,,] value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.ThreeDimensionalArrayFormatter.ThreeDimensionalArrayFormatter() -> void +MessagePack.Formatters.TimeSpanFormatter +MessagePack.Formatters.TimeSpanFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> System.TimeSpan +MessagePack.Formatters.TimeSpanFormatter.Serialize(ref MessagePack.MessagePackWriter writer, System.TimeSpan value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.TupleFormatter +MessagePack.Formatters.TupleFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> System.Tuple +MessagePack.Formatters.TupleFormatter.Serialize(ref MessagePack.MessagePackWriter writer, System.Tuple value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.TupleFormatter.TupleFormatter() -> void +MessagePack.Formatters.TupleFormatter +MessagePack.Formatters.TupleFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> System.Tuple +MessagePack.Formatters.TupleFormatter.Serialize(ref MessagePack.MessagePackWriter writer, System.Tuple value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.TupleFormatter.TupleFormatter() -> void +MessagePack.Formatters.TupleFormatter +MessagePack.Formatters.TupleFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> System.Tuple +MessagePack.Formatters.TupleFormatter.Serialize(ref MessagePack.MessagePackWriter writer, System.Tuple value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.TupleFormatter.TupleFormatter() -> void +MessagePack.Formatters.TupleFormatter +MessagePack.Formatters.TupleFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> System.Tuple +MessagePack.Formatters.TupleFormatter.Serialize(ref MessagePack.MessagePackWriter writer, System.Tuple value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.TupleFormatter.TupleFormatter() -> void +MessagePack.Formatters.TupleFormatter +MessagePack.Formatters.TupleFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> System.Tuple +MessagePack.Formatters.TupleFormatter.Serialize(ref MessagePack.MessagePackWriter writer, System.Tuple value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.TupleFormatter.TupleFormatter() -> void +MessagePack.Formatters.TupleFormatter +MessagePack.Formatters.TupleFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> System.Tuple +MessagePack.Formatters.TupleFormatter.Serialize(ref MessagePack.MessagePackWriter writer, System.Tuple value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.TupleFormatter.TupleFormatter() -> void +MessagePack.Formatters.TupleFormatter +MessagePack.Formatters.TupleFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> System.Tuple +MessagePack.Formatters.TupleFormatter.Serialize(ref MessagePack.MessagePackWriter writer, System.Tuple value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.TupleFormatter.TupleFormatter() -> void +MessagePack.Formatters.TupleFormatter +MessagePack.Formatters.TupleFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> System.Tuple +MessagePack.Formatters.TupleFormatter.Serialize(ref MessagePack.MessagePackWriter writer, System.Tuple value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.TupleFormatter.TupleFormatter() -> void +MessagePack.Formatters.TwoDimensionalArrayFormatter +MessagePack.Formatters.TwoDimensionalArrayFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> T[,] +MessagePack.Formatters.TwoDimensionalArrayFormatter.Serialize(ref MessagePack.MessagePackWriter writer, T[,] value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.TwoDimensionalArrayFormatter.TwoDimensionalArrayFormatter() -> void +MessagePack.Formatters.TypelessFormatter +MessagePack.Formatters.TypelessFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> object +MessagePack.Formatters.TypelessFormatter.Serialize(ref MessagePack.MessagePackWriter writer, object value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.UInt16ArrayFormatter +MessagePack.Formatters.UInt16ArrayFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> ushort[] +MessagePack.Formatters.UInt16ArrayFormatter.Serialize(ref MessagePack.MessagePackWriter writer, ushort[] value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.UInt16Formatter +MessagePack.Formatters.UInt16Formatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> ushort +MessagePack.Formatters.UInt16Formatter.Serialize(ref MessagePack.MessagePackWriter writer, ushort value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.UInt32ArrayFormatter +MessagePack.Formatters.UInt32ArrayFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> uint[] +MessagePack.Formatters.UInt32ArrayFormatter.Serialize(ref MessagePack.MessagePackWriter writer, uint[] value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.UInt32Formatter +MessagePack.Formatters.UInt32Formatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> uint +MessagePack.Formatters.UInt32Formatter.Serialize(ref MessagePack.MessagePackWriter writer, uint value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.UInt64ArrayFormatter +MessagePack.Formatters.UInt64ArrayFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> ulong[] +MessagePack.Formatters.UInt64ArrayFormatter.Serialize(ref MessagePack.MessagePackWriter writer, ulong[] value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.UInt64Formatter +MessagePack.Formatters.UInt64Formatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> ulong +MessagePack.Formatters.UInt64Formatter.Serialize(ref MessagePack.MessagePackWriter writer, ulong value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.UriFormatter +MessagePack.Formatters.UriFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> System.Uri +MessagePack.Formatters.UriFormatter.Serialize(ref MessagePack.MessagePackWriter writer, System.Uri value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.ValueTupleFormatter +MessagePack.Formatters.ValueTupleFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> System.ValueTuple +MessagePack.Formatters.ValueTupleFormatter.Serialize(ref MessagePack.MessagePackWriter writer, System.ValueTuple value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.ValueTupleFormatter.ValueTupleFormatter() -> void +MessagePack.Formatters.ValueTupleFormatter +MessagePack.Formatters.ValueTupleFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> (T1, T2, T3, T4, T5, T6, T7) +MessagePack.Formatters.ValueTupleFormatter.Serialize(ref MessagePack.MessagePackWriter writer, (T1, T2, T3, T4, T5, T6, T7) value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.ValueTupleFormatter.ValueTupleFormatter() -> void +MessagePack.Formatters.ValueTupleFormatter +MessagePack.Formatters.ValueTupleFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> (T1, T2, T3, T4, T5, T6) +MessagePack.Formatters.ValueTupleFormatter.Serialize(ref MessagePack.MessagePackWriter writer, (T1, T2, T3, T4, T5, T6) value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.ValueTupleFormatter.ValueTupleFormatter() -> void +MessagePack.Formatters.ValueTupleFormatter +MessagePack.Formatters.ValueTupleFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> (T1, T2, T3, T4, T5) +MessagePack.Formatters.ValueTupleFormatter.Serialize(ref MessagePack.MessagePackWriter writer, (T1, T2, T3, T4, T5) value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.ValueTupleFormatter.ValueTupleFormatter() -> void +MessagePack.Formatters.ValueTupleFormatter +MessagePack.Formatters.ValueTupleFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> (T1, T2, T3, T4) +MessagePack.Formatters.ValueTupleFormatter.Serialize(ref MessagePack.MessagePackWriter writer, (T1, T2, T3, T4) value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.ValueTupleFormatter.ValueTupleFormatter() -> void +MessagePack.Formatters.ValueTupleFormatter +MessagePack.Formatters.ValueTupleFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> (T1, T2, T3) +MessagePack.Formatters.ValueTupleFormatter.Serialize(ref MessagePack.MessagePackWriter writer, (T1, T2, T3) value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.ValueTupleFormatter.ValueTupleFormatter() -> void +MessagePack.Formatters.ValueTupleFormatter +MessagePack.Formatters.ValueTupleFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> (T1, T2) +MessagePack.Formatters.ValueTupleFormatter.Serialize(ref MessagePack.MessagePackWriter writer, (T1, T2) value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.ValueTupleFormatter.ValueTupleFormatter() -> void +MessagePack.Formatters.ValueTupleFormatter +MessagePack.Formatters.ValueTupleFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> System.ValueTuple +MessagePack.Formatters.ValueTupleFormatter.Serialize(ref MessagePack.MessagePackWriter writer, System.ValueTuple value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.ValueTupleFormatter.ValueTupleFormatter() -> void +MessagePack.Formatters.VersionFormatter +MessagePack.Formatters.VersionFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> System.Version +MessagePack.Formatters.VersionFormatter.Serialize(ref MessagePack.MessagePackWriter writer, System.Version value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.IFormatterResolver +MessagePack.IFormatterResolver.GetFormatter() -> MessagePack.Formatters.IMessagePackFormatter +MessagePack.Internal.AutomataDictionary +MessagePack.Internal.AutomataDictionary.Add(string str, int value) -> void +MessagePack.Internal.AutomataDictionary.AutomataDictionary() -> void +MessagePack.Internal.AutomataDictionary.EmitMatch(System.Reflection.Emit.ILGenerator il, System.Reflection.Emit.LocalBuilder bytesSpan, System.Reflection.Emit.LocalBuilder key, System.Action> onFound, System.Action onNotFound) -> void +MessagePack.Internal.AutomataDictionary.GetEnumerator() -> System.Collections.Generic.IEnumerator> +MessagePack.Internal.AutomataDictionary.TryGetValue(System.ReadOnlySpan bytes, out int value) -> bool +MessagePack.Internal.AutomataDictionary.TryGetValue(in System.Buffers.ReadOnlySequence bytes, out int value) -> bool +MessagePack.Internal.AutomataKeyGen +MessagePack.Internal.ByteArrayStringHashTable +MessagePack.Internal.ByteArrayStringHashTable.Add(byte[] key, int value) -> void +MessagePack.Internal.ByteArrayStringHashTable.Add(string key, int value) -> void +MessagePack.Internal.ByteArrayStringHashTable.ByteArrayStringHashTable(int capacity) -> void +MessagePack.Internal.ByteArrayStringHashTable.ByteArrayStringHashTable(int capacity, float loadFactor) -> void +MessagePack.Internal.ByteArrayStringHashTable.GetEnumerator() -> System.Collections.Generic.IEnumerator> +MessagePack.Internal.ByteArrayStringHashTable.TryGetValue(System.ReadOnlySpan key, out int value) -> bool +MessagePack.Internal.ByteArrayStringHashTable.TryGetValue(in System.Buffers.ReadOnlySequence key, out int value) -> bool +MessagePack.Internal.CodeGenHelpers +MessagePack.Internal.RuntimeTypeHandleEqualityComparer +MessagePack.Internal.RuntimeTypeHandleEqualityComparer.Equals(System.RuntimeTypeHandle x, System.RuntimeTypeHandle y) -> bool +MessagePack.Internal.RuntimeTypeHandleEqualityComparer.GetHashCode(System.RuntimeTypeHandle obj) -> int +MessagePack.Internal.UnsafeMemory +MessagePack.Internal.UnsafeMemory32 +MessagePack.Internal.UnsafeMemory64 +MessagePack.MessagePackCode +MessagePack.MessagePackCompression +MessagePack.MessagePackCompression.Lz4Block = 1 -> MessagePack.MessagePackCompression +MessagePack.MessagePackCompression.Lz4BlockArray = 2 -> MessagePack.MessagePackCompression +MessagePack.MessagePackCompression.None = 0 -> MessagePack.MessagePackCompression +MessagePack.MessagePackRange +MessagePack.MessagePackReader +MessagePack.MessagePackReader.CancellationToken.get -> System.Threading.CancellationToken +MessagePack.MessagePackReader.CancellationToken.set -> void +MessagePack.MessagePackReader.Clone(in System.Buffers.ReadOnlySequence readOnlySequence) -> MessagePack.MessagePackReader +MessagePack.MessagePackReader.Consumed.get -> long +MessagePack.MessagePackReader.CreatePeekReader() -> MessagePack.MessagePackReader +MessagePack.MessagePackReader.End.get -> bool +MessagePack.MessagePackReader.IsNil.get -> bool +MessagePack.MessagePackReader.MessagePackReader(System.ReadOnlyMemory memory) -> void +MessagePack.MessagePackReader.MessagePackReader(in System.Buffers.ReadOnlySequence readOnlySequence) -> void +MessagePack.MessagePackReader.NextCode.get -> byte +MessagePack.MessagePackReader.NextMessagePackType.get -> MessagePack.MessagePackType +MessagePack.MessagePackReader.Position.get -> System.SequencePosition +MessagePack.MessagePackReader.ReadArrayHeader() -> int +MessagePack.MessagePackReader.ReadBoolean() -> bool +MessagePack.MessagePackReader.ReadByte() -> byte +MessagePack.MessagePackReader.ReadBytes() -> System.Buffers.ReadOnlySequence? +MessagePack.MessagePackReader.ReadChar() -> char +MessagePack.MessagePackReader.ReadDateTime() -> System.DateTime +MessagePack.MessagePackReader.ReadDouble() -> double +MessagePack.MessagePackReader.ReadExtensionFormat() -> MessagePack.ExtensionResult +MessagePack.MessagePackReader.ReadExtensionFormatHeader() -> MessagePack.ExtensionHeader +MessagePack.MessagePackReader.ReadInt16() -> short +MessagePack.MessagePackReader.ReadInt32() -> int +MessagePack.MessagePackReader.ReadInt64() -> long +MessagePack.MessagePackReader.ReadMapHeader() -> int +MessagePack.MessagePackReader.ReadNil() -> MessagePack.Nil +MessagePack.MessagePackReader.ReadRaw() -> System.Buffers.ReadOnlySequence +MessagePack.MessagePackReader.ReadRaw(long length) -> System.Buffers.ReadOnlySequence +MessagePack.MessagePackReader.ReadSByte() -> sbyte +MessagePack.MessagePackReader.ReadSingle() -> float +MessagePack.MessagePackReader.ReadString() -> string +MessagePack.MessagePackReader.ReadStringSequence() -> System.Buffers.ReadOnlySequence? +MessagePack.MessagePackReader.ReadUInt16() -> ushort +MessagePack.MessagePackReader.ReadUInt32() -> uint +MessagePack.MessagePackReader.ReadUInt64() -> ulong +MessagePack.MessagePackReader.Sequence.get -> System.Buffers.ReadOnlySequence +MessagePack.MessagePackReader.Skip() -> void +MessagePack.MessagePackReader.TryReadNil() -> bool +MessagePack.MessagePackReader.TryReadStringSpan(out System.ReadOnlySpan span) -> bool +MessagePack.MessagePackSerializationException +MessagePack.MessagePackSerializationException.MessagePackSerializationException() -> void +MessagePack.MessagePackSerializationException.MessagePackSerializationException(System.Runtime.Serialization.SerializationInfo info, System.Runtime.Serialization.StreamingContext context) -> void +MessagePack.MessagePackSerializationException.MessagePackSerializationException(string message) -> void +MessagePack.MessagePackSerializationException.MessagePackSerializationException(string message, System.Exception inner) -> void +MessagePack.MessagePackSerializer +MessagePack.MessagePackSerializer.Typeless +MessagePack.MessagePackSerializerOptions +MessagePack.MessagePackSerializerOptions.AllowAssemblyVersionMismatch.get -> bool +MessagePack.MessagePackSerializerOptions.Compression.get -> MessagePack.MessagePackCompression +MessagePack.MessagePackSerializerOptions.MessagePackSerializerOptions(MessagePack.IFormatterResolver resolver) -> void +MessagePack.MessagePackSerializerOptions.MessagePackSerializerOptions(MessagePack.MessagePackSerializerOptions copyFrom) -> void +MessagePack.MessagePackSerializerOptions.OldSpec.get -> bool? +MessagePack.MessagePackSerializerOptions.OmitAssemblyVersion.get -> bool +MessagePack.MessagePackSerializerOptions.Resolver.get -> MessagePack.IFormatterResolver +MessagePack.MessagePackSerializerOptions.WithAllowAssemblyVersionMismatch(bool allowAssemblyVersionMismatch) -> MessagePack.MessagePackSerializerOptions +MessagePack.MessagePackSerializerOptions.WithCompression(MessagePack.MessagePackCompression compression) -> MessagePack.MessagePackSerializerOptions +MessagePack.MessagePackSerializerOptions.WithOldSpec(bool? oldSpec = true) -> MessagePack.MessagePackSerializerOptions +MessagePack.MessagePackSerializerOptions.WithOmitAssemblyVersion(bool omitAssemblyVersion) -> MessagePack.MessagePackSerializerOptions +MessagePack.MessagePackSerializerOptions.WithResolver(MessagePack.IFormatterResolver resolver) -> MessagePack.MessagePackSerializerOptions +MessagePack.MessagePackStreamReader +MessagePack.MessagePackStreamReader.Dispose() -> void +MessagePack.MessagePackStreamReader.MessagePackStreamReader(System.IO.Stream stream) -> void +MessagePack.MessagePackStreamReader.ReadAsync(System.Threading.CancellationToken cancellationToken) -> System.Threading.Tasks.ValueTask?> +MessagePack.MessagePackStreamReader.RemainingBytes.get -> System.Buffers.ReadOnlySequence +MessagePack.MessagePackType +MessagePack.MessagePackType.Array = 7 -> MessagePack.MessagePackType +MessagePack.MessagePackType.Binary = 6 -> MessagePack.MessagePackType +MessagePack.MessagePackType.Boolean = 3 -> MessagePack.MessagePackType +MessagePack.MessagePackType.Extension = 9 -> MessagePack.MessagePackType +MessagePack.MessagePackType.Float = 4 -> MessagePack.MessagePackType +MessagePack.MessagePackType.Integer = 1 -> MessagePack.MessagePackType +MessagePack.MessagePackType.Map = 8 -> MessagePack.MessagePackType +MessagePack.MessagePackType.Nil = 2 -> MessagePack.MessagePackType +MessagePack.MessagePackType.String = 5 -> MessagePack.MessagePackType +MessagePack.MessagePackType.Unknown = 0 -> MessagePack.MessagePackType +MessagePack.MessagePackWriter +MessagePack.MessagePackWriter.Advance(int length) -> void +MessagePack.MessagePackWriter.CancellationToken.get -> System.Threading.CancellationToken +MessagePack.MessagePackWriter.CancellationToken.set -> void +MessagePack.MessagePackWriter.Clone(System.Buffers.IBufferWriter writer) -> MessagePack.MessagePackWriter +MessagePack.MessagePackWriter.Flush() -> void +MessagePack.MessagePackWriter.GetSpan(int length) -> System.Span +MessagePack.MessagePackWriter.MessagePackWriter(System.Buffers.IBufferWriter writer) -> void +MessagePack.MessagePackWriter.OldSpec.get -> bool +MessagePack.MessagePackWriter.OldSpec.set -> void +MessagePack.MessagePackWriter.Write(System.DateTime dateTime) -> void +MessagePack.MessagePackWriter.Write(System.ReadOnlySpan src) -> void +MessagePack.MessagePackWriter.Write(System.ReadOnlySpan value) -> void +MessagePack.MessagePackWriter.Write(bool value) -> void +MessagePack.MessagePackWriter.Write(byte value) -> void +MessagePack.MessagePackWriter.Write(byte[] src) -> void +MessagePack.MessagePackWriter.Write(char value) -> void +MessagePack.MessagePackWriter.Write(double value) -> void +MessagePack.MessagePackWriter.Write(float value) -> void +MessagePack.MessagePackWriter.Write(in System.Buffers.ReadOnlySequence src) -> void +MessagePack.MessagePackWriter.Write(int value) -> void +MessagePack.MessagePackWriter.Write(long value) -> void +MessagePack.MessagePackWriter.Write(sbyte value) -> void +MessagePack.MessagePackWriter.Write(short value) -> void +MessagePack.MessagePackWriter.Write(string value) -> void +MessagePack.MessagePackWriter.Write(uint value) -> void +MessagePack.MessagePackWriter.Write(ulong value) -> void +MessagePack.MessagePackWriter.Write(ushort value) -> void +MessagePack.MessagePackWriter.WriteArrayHeader(int count) -> void +MessagePack.MessagePackWriter.WriteArrayHeader(uint count) -> void +MessagePack.MessagePackWriter.WriteExtensionFormat(MessagePack.ExtensionResult extensionData) -> void +MessagePack.MessagePackWriter.WriteExtensionFormatHeader(MessagePack.ExtensionHeader extensionHeader) -> void +MessagePack.MessagePackWriter.WriteInt16(short value) -> void +MessagePack.MessagePackWriter.WriteInt32(int value) -> void +MessagePack.MessagePackWriter.WriteInt64(long value) -> void +MessagePack.MessagePackWriter.WriteInt8(sbyte value) -> void +MessagePack.MessagePackWriter.WriteMapHeader(int count) -> void +MessagePack.MessagePackWriter.WriteMapHeader(uint count) -> void +MessagePack.MessagePackWriter.WriteNil() -> void +MessagePack.MessagePackWriter.WriteRaw(System.ReadOnlySpan rawMessagePackBlock) -> void +MessagePack.MessagePackWriter.WriteRaw(in System.Buffers.ReadOnlySequence rawMessagePackBlock) -> void +MessagePack.MessagePackWriter.WriteString(System.ReadOnlySpan utf8stringBytes) -> void +MessagePack.MessagePackWriter.WriteString(in System.Buffers.ReadOnlySequence utf8stringBytes) -> void +MessagePack.MessagePackWriter.WriteUInt16(ushort value) -> void +MessagePack.MessagePackWriter.WriteUInt32(uint value) -> void +MessagePack.MessagePackWriter.WriteUInt64(ulong value) -> void +MessagePack.MessagePackWriter.WriteUInt8(byte value) -> void +MessagePack.Nil +MessagePack.Nil.Equals(MessagePack.Nil other) -> bool +MessagePack.Nil.Nil() -> void +MessagePack.ReservedMessagePackExtensionTypeCode +MessagePack.Resolvers.AttributeFormatterResolver +MessagePack.Resolvers.AttributeFormatterResolver.GetFormatter() -> MessagePack.Formatters.IMessagePackFormatter +MessagePack.Resolvers.BuiltinResolver +MessagePack.Resolvers.BuiltinResolver.GetFormatter() -> MessagePack.Formatters.IMessagePackFormatter +MessagePack.Resolvers.CompositeResolver +MessagePack.Resolvers.ContractlessStandardResolver +MessagePack.Resolvers.ContractlessStandardResolver.GetFormatter() -> MessagePack.Formatters.IMessagePackFormatter +MessagePack.Resolvers.ContractlessStandardResolverAllowPrivate +MessagePack.Resolvers.ContractlessStandardResolverAllowPrivate.GetFormatter() -> MessagePack.Formatters.IMessagePackFormatter +MessagePack.Resolvers.DynamicContractlessObjectResolver +MessagePack.Resolvers.DynamicContractlessObjectResolver.GetFormatter() -> MessagePack.Formatters.IMessagePackFormatter +MessagePack.Resolvers.DynamicContractlessObjectResolverAllowPrivate +MessagePack.Resolvers.DynamicContractlessObjectResolverAllowPrivate.DynamicContractlessObjectResolverAllowPrivate() -> void +MessagePack.Resolvers.DynamicContractlessObjectResolverAllowPrivate.GetFormatter() -> MessagePack.Formatters.IMessagePackFormatter +MessagePack.Resolvers.DynamicEnumAsStringResolver +MessagePack.Resolvers.DynamicEnumAsStringResolver.GetFormatter() -> MessagePack.Formatters.IMessagePackFormatter +MessagePack.Resolvers.DynamicEnumResolver +MessagePack.Resolvers.DynamicEnumResolver.GetFormatter() -> MessagePack.Formatters.IMessagePackFormatter +MessagePack.Resolvers.DynamicGenericResolver +MessagePack.Resolvers.DynamicGenericResolver.GetFormatter() -> MessagePack.Formatters.IMessagePackFormatter +MessagePack.Resolvers.DynamicObjectResolver +MessagePack.Resolvers.DynamicObjectResolver.GetFormatter() -> MessagePack.Formatters.IMessagePackFormatter +MessagePack.Resolvers.DynamicObjectResolverAllowPrivate +MessagePack.Resolvers.DynamicObjectResolverAllowPrivate.GetFormatter() -> MessagePack.Formatters.IMessagePackFormatter +MessagePack.Resolvers.DynamicUnionResolver +MessagePack.Resolvers.DynamicUnionResolver.GetFormatter() -> MessagePack.Formatters.IMessagePackFormatter +MessagePack.Resolvers.NativeDateTimeResolver +MessagePack.Resolvers.NativeDateTimeResolver.GetFormatter() -> MessagePack.Formatters.IMessagePackFormatter +MessagePack.Resolvers.NativeDecimalResolver +MessagePack.Resolvers.NativeDecimalResolver.GetFormatter() -> MessagePack.Formatters.IMessagePackFormatter +MessagePack.Resolvers.NativeGuidResolver +MessagePack.Resolvers.NativeGuidResolver.GetFormatter() -> MessagePack.Formatters.IMessagePackFormatter +MessagePack.Resolvers.PrimitiveObjectResolver +MessagePack.Resolvers.PrimitiveObjectResolver.GetFormatter() -> MessagePack.Formatters.IMessagePackFormatter +MessagePack.Resolvers.StandardResolver +MessagePack.Resolvers.StandardResolver.GetFormatter() -> MessagePack.Formatters.IMessagePackFormatter +MessagePack.Resolvers.StandardResolverAllowPrivate +MessagePack.Resolvers.StandardResolverAllowPrivate.GetFormatter() -> MessagePack.Formatters.IMessagePackFormatter +MessagePack.Resolvers.StaticCompositeResolver +MessagePack.Resolvers.StaticCompositeResolver.GetFormatter() -> MessagePack.Formatters.IMessagePackFormatter +MessagePack.Resolvers.StaticCompositeResolver.Register(System.Collections.Generic.IReadOnlyList formatters, System.Collections.Generic.IReadOnlyList resolvers) -> void +MessagePack.Resolvers.StaticCompositeResolver.Register(params MessagePack.Formatters.IMessagePackFormatter[] formatters) -> void +MessagePack.Resolvers.StaticCompositeResolver.Register(params MessagePack.IFormatterResolver[] resolvers) -> void +MessagePack.Resolvers.TypelessContractlessStandardResolver +MessagePack.Resolvers.TypelessContractlessStandardResolver.GetFormatter() -> MessagePack.Formatters.IMessagePackFormatter +MessagePack.Resolvers.TypelessContractlessStandardResolver.TypelessContractlessStandardResolver() -> void +MessagePack.Resolvers.TypelessObjectResolver +MessagePack.Resolvers.TypelessObjectResolver.GetFormatter() -> MessagePack.Formatters.IMessagePackFormatter +MessagePack.TinyJsonException +MessagePack.TinyJsonException.TinyJsonException(string message) -> void +abstract MessagePack.Formatters.CollectionFormatterBase.Add(TIntermediate collection, int index, TElement value, MessagePack.MessagePackSerializerOptions options) -> void +abstract MessagePack.Formatters.CollectionFormatterBase.Complete(TIntermediate intermediateCollection) -> TCollection +abstract MessagePack.Formatters.CollectionFormatterBase.Create(int count, MessagePack.MessagePackSerializerOptions options) -> TIntermediate +abstract MessagePack.Formatters.CollectionFormatterBase.GetSourceEnumerator(TCollection source) -> TEnumerator +abstract MessagePack.Formatters.DictionaryFormatterBase.Add(TIntermediate collection, int index, TKey key, TValue value, MessagePack.MessagePackSerializerOptions options) -> void +abstract MessagePack.Formatters.DictionaryFormatterBase.Complete(TIntermediate intermediateCollection) -> TDictionary +abstract MessagePack.Formatters.DictionaryFormatterBase.Create(int count, MessagePack.MessagePackSerializerOptions options) -> TIntermediate +abstract MessagePack.Formatters.DictionaryFormatterBase.GetSourceEnumerator(TDictionary source) -> TEnumerator +const MessagePack.MessagePackCode.Array16 = 220 -> byte +const MessagePack.MessagePackCode.Array32 = 221 -> byte +const MessagePack.MessagePackCode.Bin16 = 197 -> byte +const MessagePack.MessagePackCode.Bin32 = 198 -> byte +const MessagePack.MessagePackCode.Bin8 = 196 -> byte +const MessagePack.MessagePackCode.Ext16 = 200 -> byte +const MessagePack.MessagePackCode.Ext32 = 201 -> byte +const MessagePack.MessagePackCode.Ext8 = 199 -> byte +const MessagePack.MessagePackCode.False = 194 -> byte +const MessagePack.MessagePackCode.FixExt1 = 212 -> byte +const MessagePack.MessagePackCode.FixExt16 = 216 -> byte +const MessagePack.MessagePackCode.FixExt2 = 213 -> byte +const MessagePack.MessagePackCode.FixExt4 = 214 -> byte +const MessagePack.MessagePackCode.FixExt8 = 215 -> byte +const MessagePack.MessagePackCode.Float32 = 202 -> byte +const MessagePack.MessagePackCode.Float64 = 203 -> byte +const MessagePack.MessagePackCode.Int16 = 209 -> byte +const MessagePack.MessagePackCode.Int32 = 210 -> byte +const MessagePack.MessagePackCode.Int64 = 211 -> byte +const MessagePack.MessagePackCode.Int8 = 208 -> byte +const MessagePack.MessagePackCode.Map16 = 222 -> byte +const MessagePack.MessagePackCode.Map32 = 223 -> byte +const MessagePack.MessagePackCode.MaxFixArray = 159 -> byte +const MessagePack.MessagePackCode.MaxFixInt = 127 -> byte +const MessagePack.MessagePackCode.MaxFixMap = 143 -> byte +const MessagePack.MessagePackCode.MaxFixStr = 191 -> byte +const MessagePack.MessagePackCode.MaxNegativeFixInt = 255 -> byte +const MessagePack.MessagePackCode.MinFixArray = 144 -> byte +const MessagePack.MessagePackCode.MinFixInt = 0 -> byte +const MessagePack.MessagePackCode.MinFixMap = 128 -> byte +const MessagePack.MessagePackCode.MinFixStr = 160 -> byte +const MessagePack.MessagePackCode.MinNegativeFixInt = 224 -> byte +const MessagePack.MessagePackCode.NeverUsed = 193 -> byte +const MessagePack.MessagePackCode.Nil = 192 -> byte +const MessagePack.MessagePackCode.Str16 = 218 -> byte +const MessagePack.MessagePackCode.Str32 = 219 -> byte +const MessagePack.MessagePackCode.Str8 = 217 -> byte +const MessagePack.MessagePackCode.True = 195 -> byte +const MessagePack.MessagePackCode.UInt16 = 205 -> byte +const MessagePack.MessagePackCode.UInt32 = 206 -> byte +const MessagePack.MessagePackCode.UInt64 = 207 -> byte +const MessagePack.MessagePackCode.UInt8 = 204 -> byte +const MessagePack.MessagePackRange.MaxFixArrayCount = 15 -> int +const MessagePack.MessagePackRange.MaxFixMapCount = 15 -> int +const MessagePack.MessagePackRange.MaxFixNegativeInt = -1 -> int +const MessagePack.MessagePackRange.MaxFixPositiveInt = 127 -> int +const MessagePack.MessagePackRange.MaxFixStringLength = 31 -> int +const MessagePack.MessagePackRange.MinFixNegativeInt = -32 -> int +const MessagePack.MessagePackRange.MinFixStringLength = 0 -> int +const MessagePack.ReservedMessagePackExtensionTypeCode.DateTime = -1 -> sbyte +override MessagePack.Formatters.CollectionFormatterBase.GetSourceEnumerator(TCollection source) -> System.Collections.Generic.IEnumerator +override MessagePack.Formatters.DictionaryFormatterBase.Complete(TDictionary intermediateCollection) -> TDictionary +override MessagePack.Formatters.DictionaryFormatterBase.GetSourceEnumerator(TDictionary source) -> System.Collections.Generic.IEnumerator> +override MessagePack.Internal.AutomataDictionary.ToString() -> string +override MessagePack.Nil.Equals(object obj) -> bool +override MessagePack.Nil.GetHashCode() -> int +override MessagePack.Nil.ToString() -> string +override sealed MessagePack.Formatters.CollectionFormatterBase.Complete(TCollection intermediateCollection) -> TCollection +static MessagePack.FormatterResolverExtensions.GetFormatterDynamic(this MessagePack.IFormatterResolver resolver, System.Type type) -> object +static MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(this MessagePack.IFormatterResolver resolver) -> MessagePack.Formatters.IMessagePackFormatter +static MessagePack.Formatters.PrimitiveObjectFormatter.IsSupportedType(System.Type type, System.Reflection.TypeInfo typeInfo, object value) -> bool +static MessagePack.Internal.AutomataKeyGen.GetKey(ref System.ReadOnlySpan span) -> ulong +static MessagePack.Internal.CodeGenHelpers.GetArrayFromNullableSequence(in System.Buffers.ReadOnlySequence? sequence) -> byte[] +static MessagePack.Internal.CodeGenHelpers.GetEncodedStringBytes(string value) -> byte[] +static MessagePack.Internal.CodeGenHelpers.GetSpanFromSequence(in System.Buffers.ReadOnlySequence sequence) -> System.ReadOnlySpan +static MessagePack.Internal.CodeGenHelpers.ReadStringSpan(ref MessagePack.MessagePackReader reader) -> System.ReadOnlySpan +static MessagePack.Internal.UnsafeMemory32.WriteRaw1(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void +static MessagePack.Internal.UnsafeMemory32.WriteRaw10(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void +static MessagePack.Internal.UnsafeMemory32.WriteRaw11(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void +static MessagePack.Internal.UnsafeMemory32.WriteRaw12(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void +static MessagePack.Internal.UnsafeMemory32.WriteRaw13(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void +static MessagePack.Internal.UnsafeMemory32.WriteRaw14(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void +static MessagePack.Internal.UnsafeMemory32.WriteRaw15(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void +static MessagePack.Internal.UnsafeMemory32.WriteRaw16(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void +static MessagePack.Internal.UnsafeMemory32.WriteRaw17(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void +static MessagePack.Internal.UnsafeMemory32.WriteRaw18(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void +static MessagePack.Internal.UnsafeMemory32.WriteRaw19(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void +static MessagePack.Internal.UnsafeMemory32.WriteRaw2(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void +static MessagePack.Internal.UnsafeMemory32.WriteRaw20(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void +static MessagePack.Internal.UnsafeMemory32.WriteRaw21(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void +static MessagePack.Internal.UnsafeMemory32.WriteRaw22(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void +static MessagePack.Internal.UnsafeMemory32.WriteRaw23(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void +static MessagePack.Internal.UnsafeMemory32.WriteRaw24(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void +static MessagePack.Internal.UnsafeMemory32.WriteRaw25(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void +static MessagePack.Internal.UnsafeMemory32.WriteRaw26(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void +static MessagePack.Internal.UnsafeMemory32.WriteRaw27(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void +static MessagePack.Internal.UnsafeMemory32.WriteRaw28(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void +static MessagePack.Internal.UnsafeMemory32.WriteRaw29(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void +static MessagePack.Internal.UnsafeMemory32.WriteRaw3(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void +static MessagePack.Internal.UnsafeMemory32.WriteRaw30(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void +static MessagePack.Internal.UnsafeMemory32.WriteRaw31(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void +static MessagePack.Internal.UnsafeMemory32.WriteRaw4(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void +static MessagePack.Internal.UnsafeMemory32.WriteRaw5(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void +static MessagePack.Internal.UnsafeMemory32.WriteRaw6(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void +static MessagePack.Internal.UnsafeMemory32.WriteRaw7(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void +static MessagePack.Internal.UnsafeMemory32.WriteRaw8(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void +static MessagePack.Internal.UnsafeMemory32.WriteRaw9(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void +static MessagePack.Internal.UnsafeMemory64.WriteRaw1(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void +static MessagePack.Internal.UnsafeMemory64.WriteRaw10(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void +static MessagePack.Internal.UnsafeMemory64.WriteRaw11(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void +static MessagePack.Internal.UnsafeMemory64.WriteRaw12(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void +static MessagePack.Internal.UnsafeMemory64.WriteRaw13(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void +static MessagePack.Internal.UnsafeMemory64.WriteRaw14(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void +static MessagePack.Internal.UnsafeMemory64.WriteRaw15(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void +static MessagePack.Internal.UnsafeMemory64.WriteRaw16(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void +static MessagePack.Internal.UnsafeMemory64.WriteRaw17(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void +static MessagePack.Internal.UnsafeMemory64.WriteRaw18(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void +static MessagePack.Internal.UnsafeMemory64.WriteRaw19(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void +static MessagePack.Internal.UnsafeMemory64.WriteRaw2(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void +static MessagePack.Internal.UnsafeMemory64.WriteRaw20(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void +static MessagePack.Internal.UnsafeMemory64.WriteRaw21(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void +static MessagePack.Internal.UnsafeMemory64.WriteRaw22(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void +static MessagePack.Internal.UnsafeMemory64.WriteRaw23(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void +static MessagePack.Internal.UnsafeMemory64.WriteRaw24(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void +static MessagePack.Internal.UnsafeMemory64.WriteRaw25(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void +static MessagePack.Internal.UnsafeMemory64.WriteRaw26(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void +static MessagePack.Internal.UnsafeMemory64.WriteRaw27(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void +static MessagePack.Internal.UnsafeMemory64.WriteRaw28(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void +static MessagePack.Internal.UnsafeMemory64.WriteRaw29(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void +static MessagePack.Internal.UnsafeMemory64.WriteRaw3(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void +static MessagePack.Internal.UnsafeMemory64.WriteRaw30(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void +static MessagePack.Internal.UnsafeMemory64.WriteRaw31(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void +static MessagePack.Internal.UnsafeMemory64.WriteRaw4(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void +static MessagePack.Internal.UnsafeMemory64.WriteRaw5(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void +static MessagePack.Internal.UnsafeMemory64.WriteRaw6(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void +static MessagePack.Internal.UnsafeMemory64.WriteRaw7(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void +static MessagePack.Internal.UnsafeMemory64.WriteRaw8(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void +static MessagePack.Internal.UnsafeMemory64.WriteRaw9(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void +static MessagePack.MessagePackCode.ToFormatName(byte code) -> string +static MessagePack.MessagePackCode.ToMessagePackType(byte code) -> MessagePack.MessagePackType +static MessagePack.MessagePackSerializer.ConvertFromJson(System.IO.TextReader reader, ref MessagePack.MessagePackWriter writer, MessagePack.MessagePackSerializerOptions options = null) -> void +static MessagePack.MessagePackSerializer.ConvertFromJson(string str, MessagePack.MessagePackSerializerOptions options = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> byte[] +static MessagePack.MessagePackSerializer.ConvertFromJson(string str, ref MessagePack.MessagePackWriter writer, MessagePack.MessagePackSerializerOptions options = null) -> void +static MessagePack.MessagePackSerializer.ConvertToJson(System.ReadOnlyMemory bytes, MessagePack.MessagePackSerializerOptions options = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> string +static MessagePack.MessagePackSerializer.ConvertToJson(in System.Buffers.ReadOnlySequence bytes, MessagePack.MessagePackSerializerOptions options = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> string +static MessagePack.MessagePackSerializer.ConvertToJson(ref MessagePack.MessagePackReader reader, System.IO.TextWriter jsonWriter, MessagePack.MessagePackSerializerOptions options = null) -> void +static MessagePack.MessagePackSerializer.DefaultOptions.get -> MessagePack.MessagePackSerializerOptions +static MessagePack.MessagePackSerializer.DefaultOptions.set -> void +static MessagePack.MessagePackSerializer.Deserialize(System.Type type, System.Buffers.ReadOnlySequence bytes, MessagePack.MessagePackSerializerOptions options = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> object +static MessagePack.MessagePackSerializer.Deserialize(System.Type type, System.IO.Stream stream, MessagePack.MessagePackSerializerOptions options = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> object +static MessagePack.MessagePackSerializer.Deserialize(System.Type type, System.ReadOnlyMemory bytes, MessagePack.MessagePackSerializerOptions options = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> object +static MessagePack.MessagePackSerializer.Deserialize(System.Type type, ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options = null) -> object +static MessagePack.MessagePackSerializer.Deserialize(System.IO.Stream stream, MessagePack.MessagePackSerializerOptions options = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> T +static MessagePack.MessagePackSerializer.Deserialize(System.ReadOnlyMemory buffer, MessagePack.MessagePackSerializerOptions options = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> T +static MessagePack.MessagePackSerializer.Deserialize(System.ReadOnlyMemory buffer, MessagePack.MessagePackSerializerOptions options, out int bytesRead, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> T +static MessagePack.MessagePackSerializer.Deserialize(System.ReadOnlyMemory buffer, out int bytesRead, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> T +static MessagePack.MessagePackSerializer.Deserialize(in System.Buffers.ReadOnlySequence byteSequence, MessagePack.MessagePackSerializerOptions options = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> T +static MessagePack.MessagePackSerializer.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options = null) -> T +static MessagePack.MessagePackSerializer.DeserializeAsync(System.Type type, System.IO.Stream stream, MessagePack.MessagePackSerializerOptions options = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.ValueTask +static MessagePack.MessagePackSerializer.DeserializeAsync(System.IO.Stream stream, MessagePack.MessagePackSerializerOptions options = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.ValueTask +static MessagePack.MessagePackSerializer.Serialize(System.Type type, System.Buffers.IBufferWriter writer, object obj, MessagePack.MessagePackSerializerOptions options = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> void +static MessagePack.MessagePackSerializer.Serialize(System.Type type, System.IO.Stream stream, object obj, MessagePack.MessagePackSerializerOptions options = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> void +static MessagePack.MessagePackSerializer.Serialize(System.Type type, object obj, MessagePack.MessagePackSerializerOptions options = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> byte[] +static MessagePack.MessagePackSerializer.Serialize(System.Type type, ref MessagePack.MessagePackWriter writer, object obj, MessagePack.MessagePackSerializerOptions options = null) -> void +static MessagePack.MessagePackSerializer.Serialize(System.Buffers.IBufferWriter writer, T value, MessagePack.MessagePackSerializerOptions options = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> void +static MessagePack.MessagePackSerializer.Serialize(System.IO.Stream stream, T value, MessagePack.MessagePackSerializerOptions options = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> void +static MessagePack.MessagePackSerializer.Serialize(T value, MessagePack.MessagePackSerializerOptions options = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> byte[] +static MessagePack.MessagePackSerializer.Serialize(ref MessagePack.MessagePackWriter writer, T value, MessagePack.MessagePackSerializerOptions options = null) -> void +static MessagePack.MessagePackSerializer.SerializeAsync(System.Type type, System.IO.Stream stream, object obj, MessagePack.MessagePackSerializerOptions options = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task +static MessagePack.MessagePackSerializer.SerializeAsync(System.IO.Stream stream, T value, MessagePack.MessagePackSerializerOptions options = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task +static MessagePack.MessagePackSerializer.SerializeToJson(System.IO.TextWriter textWriter, T obj, MessagePack.MessagePackSerializerOptions options = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> void +static MessagePack.MessagePackSerializer.SerializeToJson(T obj, MessagePack.MessagePackSerializerOptions options = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> string +static MessagePack.MessagePackSerializer.Typeless.DefaultOptions.get -> MessagePack.MessagePackSerializerOptions +static MessagePack.MessagePackSerializer.Typeless.DefaultOptions.set -> void +static MessagePack.MessagePackSerializer.Typeless.Deserialize(System.IO.Stream stream, MessagePack.MessagePackSerializerOptions options = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> object +static MessagePack.MessagePackSerializer.Typeless.Deserialize(System.Memory bytes, MessagePack.MessagePackSerializerOptions options = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> object +static MessagePack.MessagePackSerializer.Typeless.Deserialize(in System.Buffers.ReadOnlySequence byteSequence, MessagePack.MessagePackSerializerOptions options = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> object +static MessagePack.MessagePackSerializer.Typeless.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options = null) -> object +static MessagePack.MessagePackSerializer.Typeless.DeserializeAsync(System.IO.Stream stream, MessagePack.MessagePackSerializerOptions options = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.ValueTask +static MessagePack.MessagePackSerializer.Typeless.Serialize(System.Buffers.IBufferWriter writer, object obj, MessagePack.MessagePackSerializerOptions options = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> void +static MessagePack.MessagePackSerializer.Typeless.Serialize(System.IO.Stream stream, object obj, MessagePack.MessagePackSerializerOptions options = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> void +static MessagePack.MessagePackSerializer.Typeless.Serialize(object obj, MessagePack.MessagePackSerializerOptions options = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> byte[] +static MessagePack.MessagePackSerializer.Typeless.Serialize(ref MessagePack.MessagePackWriter writer, object obj, MessagePack.MessagePackSerializerOptions options = null) -> void +static MessagePack.MessagePackSerializer.Typeless.SerializeAsync(System.IO.Stream stream, object obj, MessagePack.MessagePackSerializerOptions options = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task +static MessagePack.MessagePackSerializerOptions.Standard.get -> MessagePack.MessagePackSerializerOptions +static MessagePack.Resolvers.CompositeResolver.Create(System.Collections.Generic.IReadOnlyList formatters, System.Collections.Generic.IReadOnlyList resolvers) -> MessagePack.IFormatterResolver +static MessagePack.Resolvers.CompositeResolver.Create(params MessagePack.Formatters.IMessagePackFormatter[] formatters) -> MessagePack.IFormatterResolver +static MessagePack.Resolvers.CompositeResolver.Create(params MessagePack.IFormatterResolver[] resolvers) -> MessagePack.IFormatterResolver +static readonly MessagePack.Formatters.BigIntegerFormatter.Instance -> MessagePack.Formatters.IMessagePackFormatter +static readonly MessagePack.Formatters.BitArrayFormatter.Instance -> MessagePack.Formatters.IMessagePackFormatter +static readonly MessagePack.Formatters.BooleanArrayFormatter.Instance -> MessagePack.Formatters.BooleanArrayFormatter +static readonly MessagePack.Formatters.BooleanFormatter.Instance -> MessagePack.Formatters.BooleanFormatter +static readonly MessagePack.Formatters.ByteArrayFormatter.Instance -> MessagePack.Formatters.ByteArrayFormatter +static readonly MessagePack.Formatters.ByteArraySegmentFormatter.Instance -> MessagePack.Formatters.ByteArraySegmentFormatter +static readonly MessagePack.Formatters.ByteFormatter.Instance -> MessagePack.Formatters.ByteFormatter +static readonly MessagePack.Formatters.CharArrayFormatter.Instance -> MessagePack.Formatters.CharArrayFormatter +static readonly MessagePack.Formatters.CharFormatter.Instance -> MessagePack.Formatters.CharFormatter +static readonly MessagePack.Formatters.ComplexFormatter.Instance -> MessagePack.Formatters.IMessagePackFormatter +static readonly MessagePack.Formatters.DateTimeArrayFormatter.Instance -> MessagePack.Formatters.DateTimeArrayFormatter +static readonly MessagePack.Formatters.DateTimeFormatter.Instance -> MessagePack.Formatters.DateTimeFormatter +static readonly MessagePack.Formatters.DateTimeOffsetFormatter.Instance -> MessagePack.Formatters.IMessagePackFormatter +static readonly MessagePack.Formatters.DecimalFormatter.Instance -> MessagePack.Formatters.DecimalFormatter +static readonly MessagePack.Formatters.DoubleArrayFormatter.Instance -> MessagePack.Formatters.DoubleArrayFormatter +static readonly MessagePack.Formatters.DoubleFormatter.Instance -> MessagePack.Formatters.DoubleFormatter +static readonly MessagePack.Formatters.DynamicObjectTypeFallbackFormatter.Instance -> MessagePack.Formatters.IMessagePackFormatter +static readonly MessagePack.Formatters.ForceByteBlockFormatter.Instance -> MessagePack.Formatters.ForceByteBlockFormatter +static readonly MessagePack.Formatters.ForceInt16BlockArrayFormatter.Instance -> MessagePack.Formatters.ForceInt16BlockArrayFormatter +static readonly MessagePack.Formatters.ForceInt16BlockFormatter.Instance -> MessagePack.Formatters.ForceInt16BlockFormatter +static readonly MessagePack.Formatters.ForceInt32BlockArrayFormatter.Instance -> MessagePack.Formatters.ForceInt32BlockArrayFormatter +static readonly MessagePack.Formatters.ForceInt32BlockFormatter.Instance -> MessagePack.Formatters.ForceInt32BlockFormatter +static readonly MessagePack.Formatters.ForceInt64BlockArrayFormatter.Instance -> MessagePack.Formatters.ForceInt64BlockArrayFormatter +static readonly MessagePack.Formatters.ForceInt64BlockFormatter.Instance -> MessagePack.Formatters.ForceInt64BlockFormatter +static readonly MessagePack.Formatters.ForceSByteBlockArrayFormatter.Instance -> MessagePack.Formatters.ForceSByteBlockArrayFormatter +static readonly MessagePack.Formatters.ForceSByteBlockFormatter.Instance -> MessagePack.Formatters.ForceSByteBlockFormatter +static readonly MessagePack.Formatters.ForceUInt16BlockArrayFormatter.Instance -> MessagePack.Formatters.ForceUInt16BlockArrayFormatter +static readonly MessagePack.Formatters.ForceUInt16BlockFormatter.Instance -> MessagePack.Formatters.ForceUInt16BlockFormatter +static readonly MessagePack.Formatters.ForceUInt32BlockArrayFormatter.Instance -> MessagePack.Formatters.ForceUInt32BlockArrayFormatter +static readonly MessagePack.Formatters.ForceUInt32BlockFormatter.Instance -> MessagePack.Formatters.ForceUInt32BlockFormatter +static readonly MessagePack.Formatters.ForceUInt64BlockArrayFormatter.Instance -> MessagePack.Formatters.ForceUInt64BlockArrayFormatter +static readonly MessagePack.Formatters.ForceUInt64BlockFormatter.Instance -> MessagePack.Formatters.ForceUInt64BlockFormatter +static readonly MessagePack.Formatters.GuidFormatter.Instance -> MessagePack.Formatters.IMessagePackFormatter +static readonly MessagePack.Formatters.Int16ArrayFormatter.Instance -> MessagePack.Formatters.Int16ArrayFormatter +static readonly MessagePack.Formatters.Int16Formatter.Instance -> MessagePack.Formatters.Int16Formatter +static readonly MessagePack.Formatters.Int32ArrayFormatter.Instance -> MessagePack.Formatters.Int32ArrayFormatter +static readonly MessagePack.Formatters.Int32Formatter.Instance -> MessagePack.Formatters.Int32Formatter +static readonly MessagePack.Formatters.Int64ArrayFormatter.Instance -> MessagePack.Formatters.Int64ArrayFormatter +static readonly MessagePack.Formatters.Int64Formatter.Instance -> MessagePack.Formatters.Int64Formatter +static readonly MessagePack.Formatters.NativeDateTimeArrayFormatter.Instance -> MessagePack.Formatters.NativeDateTimeArrayFormatter +static readonly MessagePack.Formatters.NativeDateTimeFormatter.Instance -> MessagePack.Formatters.NativeDateTimeFormatter +static readonly MessagePack.Formatters.NativeDecimalFormatter.Instance -> MessagePack.Formatters.IMessagePackFormatter +static readonly MessagePack.Formatters.NativeGuidFormatter.Instance -> MessagePack.Formatters.IMessagePackFormatter +static readonly MessagePack.Formatters.NilFormatter.Instance -> MessagePack.Formatters.IMessagePackFormatter +static readonly MessagePack.Formatters.NonGenericInterfaceDictionaryFormatter.Instance -> MessagePack.Formatters.IMessagePackFormatter +static readonly MessagePack.Formatters.NonGenericInterfaceListFormatter.Instance -> MessagePack.Formatters.IMessagePackFormatter +static readonly MessagePack.Formatters.NullableBooleanFormatter.Instance -> MessagePack.Formatters.NullableBooleanFormatter +static readonly MessagePack.Formatters.NullableByteFormatter.Instance -> MessagePack.Formatters.NullableByteFormatter +static readonly MessagePack.Formatters.NullableCharFormatter.Instance -> MessagePack.Formatters.NullableCharFormatter +static readonly MessagePack.Formatters.NullableDateTimeFormatter.Instance -> MessagePack.Formatters.NullableDateTimeFormatter +static readonly MessagePack.Formatters.NullableDoubleFormatter.Instance -> MessagePack.Formatters.NullableDoubleFormatter +static readonly MessagePack.Formatters.NullableForceByteBlockFormatter.Instance -> MessagePack.Formatters.NullableForceByteBlockFormatter +static readonly MessagePack.Formatters.NullableForceInt16BlockFormatter.Instance -> MessagePack.Formatters.NullableForceInt16BlockFormatter +static readonly MessagePack.Formatters.NullableForceInt32BlockFormatter.Instance -> MessagePack.Formatters.NullableForceInt32BlockFormatter +static readonly MessagePack.Formatters.NullableForceInt64BlockFormatter.Instance -> MessagePack.Formatters.NullableForceInt64BlockFormatter +static readonly MessagePack.Formatters.NullableForceSByteBlockFormatter.Instance -> MessagePack.Formatters.NullableForceSByteBlockFormatter +static readonly MessagePack.Formatters.NullableForceUInt16BlockFormatter.Instance -> MessagePack.Formatters.NullableForceUInt16BlockFormatter +static readonly MessagePack.Formatters.NullableForceUInt32BlockFormatter.Instance -> MessagePack.Formatters.NullableForceUInt32BlockFormatter +static readonly MessagePack.Formatters.NullableForceUInt64BlockFormatter.Instance -> MessagePack.Formatters.NullableForceUInt64BlockFormatter +static readonly MessagePack.Formatters.NullableInt16Formatter.Instance -> MessagePack.Formatters.NullableInt16Formatter +static readonly MessagePack.Formatters.NullableInt32Formatter.Instance -> MessagePack.Formatters.NullableInt32Formatter +static readonly MessagePack.Formatters.NullableInt64Formatter.Instance -> MessagePack.Formatters.NullableInt64Formatter +static readonly MessagePack.Formatters.NullableNilFormatter.Instance -> MessagePack.Formatters.IMessagePackFormatter +static readonly MessagePack.Formatters.NullableSByteFormatter.Instance -> MessagePack.Formatters.NullableSByteFormatter +static readonly MessagePack.Formatters.NullableSingleFormatter.Instance -> MessagePack.Formatters.NullableSingleFormatter +static readonly MessagePack.Formatters.NullableStringArrayFormatter.Instance -> MessagePack.Formatters.NullableStringArrayFormatter +static readonly MessagePack.Formatters.NullableStringFormatter.Instance -> MessagePack.Formatters.NullableStringFormatter +static readonly MessagePack.Formatters.NullableUInt16Formatter.Instance -> MessagePack.Formatters.NullableUInt16Formatter +static readonly MessagePack.Formatters.NullableUInt32Formatter.Instance -> MessagePack.Formatters.NullableUInt32Formatter +static readonly MessagePack.Formatters.NullableUInt64Formatter.Instance -> MessagePack.Formatters.NullableUInt64Formatter +static readonly MessagePack.Formatters.PrimitiveObjectFormatter.Instance -> MessagePack.Formatters.IMessagePackFormatter +static readonly MessagePack.Formatters.SByteArrayFormatter.Instance -> MessagePack.Formatters.SByteArrayFormatter +static readonly MessagePack.Formatters.SByteFormatter.Instance -> MessagePack.Formatters.SByteFormatter +static readonly MessagePack.Formatters.SingleArrayFormatter.Instance -> MessagePack.Formatters.SingleArrayFormatter +static readonly MessagePack.Formatters.SingleFormatter.Instance -> MessagePack.Formatters.SingleFormatter +static readonly MessagePack.Formatters.StringBuilderFormatter.Instance -> MessagePack.Formatters.IMessagePackFormatter +static readonly MessagePack.Formatters.TimeSpanFormatter.Instance -> MessagePack.Formatters.IMessagePackFormatter +static readonly MessagePack.Formatters.TypelessFormatter.Instance -> MessagePack.Formatters.IMessagePackFormatter +static readonly MessagePack.Formatters.UInt16ArrayFormatter.Instance -> MessagePack.Formatters.UInt16ArrayFormatter +static readonly MessagePack.Formatters.UInt16Formatter.Instance -> MessagePack.Formatters.UInt16Formatter +static readonly MessagePack.Formatters.UInt32ArrayFormatter.Instance -> MessagePack.Formatters.UInt32ArrayFormatter +static readonly MessagePack.Formatters.UInt32Formatter.Instance -> MessagePack.Formatters.UInt32Formatter +static readonly MessagePack.Formatters.UInt64ArrayFormatter.Instance -> MessagePack.Formatters.UInt64ArrayFormatter +static readonly MessagePack.Formatters.UInt64Formatter.Instance -> MessagePack.Formatters.UInt64Formatter +static readonly MessagePack.Formatters.UriFormatter.Instance -> MessagePack.Formatters.IMessagePackFormatter +static readonly MessagePack.Formatters.VersionFormatter.Instance -> MessagePack.Formatters.IMessagePackFormatter +static readonly MessagePack.Internal.AutomataKeyGen.GetKeyMethod -> System.Reflection.MethodInfo +static readonly MessagePack.Internal.RuntimeTypeHandleEqualityComparer.Default -> System.Collections.Generic.IEqualityComparer +static readonly MessagePack.Internal.UnsafeMemory.Is32Bit -> bool +static readonly MessagePack.Nil.Default -> MessagePack.Nil +static readonly MessagePack.Resolvers.AttributeFormatterResolver.Instance -> MessagePack.Resolvers.AttributeFormatterResolver +static readonly MessagePack.Resolvers.BuiltinResolver.Instance -> MessagePack.Resolvers.BuiltinResolver +static readonly MessagePack.Resolvers.ContractlessStandardResolver.Instance -> MessagePack.Resolvers.ContractlessStandardResolver +static readonly MessagePack.Resolvers.ContractlessStandardResolver.Options -> MessagePack.MessagePackSerializerOptions +static readonly MessagePack.Resolvers.ContractlessStandardResolverAllowPrivate.Instance -> MessagePack.Resolvers.ContractlessStandardResolverAllowPrivate +static readonly MessagePack.Resolvers.ContractlessStandardResolverAllowPrivate.Options -> MessagePack.MessagePackSerializerOptions +static readonly MessagePack.Resolvers.DynamicContractlessObjectResolver.Instance -> MessagePack.Resolvers.DynamicContractlessObjectResolver +static readonly MessagePack.Resolvers.DynamicContractlessObjectResolverAllowPrivate.Instance -> MessagePack.Resolvers.DynamicContractlessObjectResolverAllowPrivate +static readonly MessagePack.Resolvers.DynamicEnumAsStringResolver.Instance -> MessagePack.Resolvers.DynamicEnumAsStringResolver +static readonly MessagePack.Resolvers.DynamicEnumAsStringResolver.Options -> MessagePack.MessagePackSerializerOptions +static readonly MessagePack.Resolvers.DynamicEnumResolver.Instance -> MessagePack.Resolvers.DynamicEnumResolver +static readonly MessagePack.Resolvers.DynamicGenericResolver.Instance -> MessagePack.Resolvers.DynamicGenericResolver +static readonly MessagePack.Resolvers.DynamicObjectResolver.Instance -> MessagePack.Resolvers.DynamicObjectResolver +static readonly MessagePack.Resolvers.DynamicObjectResolver.Options -> MessagePack.MessagePackSerializerOptions +static readonly MessagePack.Resolvers.DynamicObjectResolverAllowPrivate.Instance -> MessagePack.Resolvers.DynamicObjectResolverAllowPrivate +static readonly MessagePack.Resolvers.DynamicUnionResolver.Instance -> MessagePack.Resolvers.DynamicUnionResolver +static readonly MessagePack.Resolvers.DynamicUnionResolver.Options -> MessagePack.MessagePackSerializerOptions +static readonly MessagePack.Resolvers.NativeDateTimeResolver.Instance -> MessagePack.Resolvers.NativeDateTimeResolver +static readonly MessagePack.Resolvers.NativeDateTimeResolver.Options -> MessagePack.MessagePackSerializerOptions +static readonly MessagePack.Resolvers.NativeDecimalResolver.Instance -> MessagePack.Resolvers.NativeDecimalResolver +static readonly MessagePack.Resolvers.NativeGuidResolver.Instance -> MessagePack.Resolvers.NativeGuidResolver +static readonly MessagePack.Resolvers.PrimitiveObjectResolver.Instance -> MessagePack.Resolvers.PrimitiveObjectResolver +static readonly MessagePack.Resolvers.PrimitiveObjectResolver.Options -> MessagePack.MessagePackSerializerOptions +static readonly MessagePack.Resolvers.StandardResolver.Instance -> MessagePack.Resolvers.StandardResolver +static readonly MessagePack.Resolvers.StandardResolver.Options -> MessagePack.MessagePackSerializerOptions +static readonly MessagePack.Resolvers.StandardResolverAllowPrivate.Instance -> MessagePack.Resolvers.StandardResolverAllowPrivate +static readonly MessagePack.Resolvers.StandardResolverAllowPrivate.Options -> MessagePack.MessagePackSerializerOptions +static readonly MessagePack.Resolvers.StaticCompositeResolver.Instance -> MessagePack.Resolvers.StaticCompositeResolver +static readonly MessagePack.Resolvers.TypelessContractlessStandardResolver.Instance -> MessagePack.Resolvers.TypelessContractlessStandardResolver +static readonly MessagePack.Resolvers.TypelessContractlessStandardResolver.Options -> MessagePack.MessagePackSerializerOptions +static readonly MessagePack.Resolvers.TypelessObjectResolver.Instance -> MessagePack.IFormatterResolver +virtual MessagePack.Formatters.CollectionFormatterBase.GetCount(TCollection sequence) -> int? +virtual MessagePack.MessagePackSerializerOptions.Clone() -> MessagePack.MessagePackSerializerOptions +virtual MessagePack.MessagePackSerializerOptions.LoadType(string typeName) -> System.Type +virtual MessagePack.MessagePackSerializerOptions.ThrowIfDeserializingTypeIsDisallowed(System.Type type) -> void +MessagePack.ExtensionHeader.Equals(MessagePack.ExtensionHeader other) -> bool +MessagePack.Formatters.InterfaceCollectionFormatter2 +MessagePack.Formatters.InterfaceCollectionFormatter2.InterfaceCollectionFormatter2() -> void +MessagePack.Formatters.InterfaceListFormatter2 +MessagePack.Formatters.InterfaceListFormatter2.InterfaceListFormatter2() -> void +MessagePack.MessagePackReader.Depth.get -> int +MessagePack.MessagePackReader.Depth.set -> void +MessagePack.MessagePackReader.ReadDateTime(MessagePack.ExtensionHeader header) -> System.DateTime +MessagePack.MessagePackReader.TryReadArrayHeader(out int count) -> bool +MessagePack.MessagePackReader.TryReadExtensionFormatHeader(out MessagePack.ExtensionHeader extensionHeader) -> bool +MessagePack.MessagePackReader.TryReadMapHeader(out int count) -> bool +MessagePack.MessagePackSecurity +MessagePack.MessagePackSecurity.DepthStep(ref MessagePack.MessagePackReader reader) -> void +MessagePack.MessagePackSecurity.GetEqualityComparer() -> System.Collections.IEqualityComparer +MessagePack.MessagePackSecurity.GetEqualityComparer() -> System.Collections.Generic.IEqualityComparer +MessagePack.MessagePackSecurity.HashCollisionResistant.get -> bool +MessagePack.MessagePackSecurity.MaximumObjectGraphDepth.get -> int +MessagePack.MessagePackSecurity.MessagePackSecurity(MessagePack.MessagePackSecurity copyFrom) -> void +MessagePack.MessagePackSecurity.WithHashCollisionResistant(bool hashCollisionResistant) -> MessagePack.MessagePackSecurity +MessagePack.MessagePackSecurity.WithMaximumObjectGraphDepth(int maximumObjectGraphDepth) -> MessagePack.MessagePackSecurity +MessagePack.MessagePackSerializerOptions.Security.get -> MessagePack.MessagePackSecurity +MessagePack.MessagePackSerializerOptions.WithSecurity(MessagePack.MessagePackSecurity security) -> MessagePack.MessagePackSerializerOptions +MessagePack.MessagePackStreamReader.DiscardBufferedData() -> void +MessagePack.MessagePackStreamReader.MessagePackStreamReader(System.IO.Stream stream, bool leaveOpen) -> void +MessagePack.MessagePackStreamReader.ReadArrayHeaderAsync(System.Threading.CancellationToken cancellationToken) -> System.Threading.Tasks.ValueTask +MessagePack.MessagePackStreamReader.ReadArrayAsync(System.Threading.CancellationToken cancellationToken) -> System.Collections.Generic.IAsyncEnumerable> +MessagePack.MessagePackStreamReader.ReadMapHeaderAsync(System.Threading.CancellationToken cancellationToken) -> System.Threading.Tasks.ValueTask +MessagePack.MessagePackWriter.WriteBinHeader(int length) -> void +MessagePack.MessagePackWriter.WriteStringHeader(int byteCount) -> void +static readonly MessagePack.MessagePackSecurity.TrustedData -> MessagePack.MessagePackSecurity +static readonly MessagePack.MessagePackSecurity.UntrustedData -> MessagePack.MessagePackSecurity +virtual MessagePack.MessagePackSecurity.Clone() -> MessagePack.MessagePackSecurity +virtual MessagePack.MessagePackSecurity.GetHashCollisionResistantEqualityComparer() -> System.Collections.IEqualityComparer +virtual MessagePack.MessagePackSecurity.GetHashCollisionResistantEqualityComparer() -> System.Collections.Generic.IEqualityComparer +MessagePack.Formatters.ByteMemoryFormatter +MessagePack.Formatters.ByteMemoryFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> System.Memory +MessagePack.Formatters.ByteMemoryFormatter.Serialize(ref MessagePack.MessagePackWriter writer, System.Memory value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.ByteReadOnlyMemoryFormatter +MessagePack.Formatters.ByteReadOnlyMemoryFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> System.ReadOnlyMemory +MessagePack.Formatters.ByteReadOnlyMemoryFormatter.Serialize(ref MessagePack.MessagePackWriter writer, System.ReadOnlyMemory value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.ByteReadOnlySequenceFormatter +MessagePack.Formatters.ByteReadOnlySequenceFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> System.Buffers.ReadOnlySequence +MessagePack.Formatters.ByteReadOnlySequenceFormatter.Serialize(ref MessagePack.MessagePackWriter writer, System.Buffers.ReadOnlySequence value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.ExpandoObjectFormatter +MessagePack.Formatters.ExpandoObjectFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> System.Dynamic.ExpandoObject +MessagePack.Formatters.ExpandoObjectFormatter.Serialize(ref MessagePack.MessagePackWriter writer, System.Dynamic.ExpandoObject value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.ForceTypelessFormatter +MessagePack.Formatters.ForceTypelessFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> T +MessagePack.Formatters.ForceTypelessFormatter.ForceTypelessFormatter() -> void +MessagePack.Formatters.ForceTypelessFormatter.Serialize(ref MessagePack.MessagePackWriter writer, T value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.MemoryFormatter +MessagePack.Formatters.MemoryFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> System.Memory +MessagePack.Formatters.MemoryFormatter.MemoryFormatter() -> void +MessagePack.Formatters.MemoryFormatter.Serialize(ref MessagePack.MessagePackWriter writer, System.Memory value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.NonGenericInterfaceCollectionFormatter +MessagePack.Formatters.NonGenericInterfaceCollectionFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> System.Collections.ICollection +MessagePack.Formatters.NonGenericInterfaceCollectionFormatter.Serialize(ref MessagePack.MessagePackWriter writer, System.Collections.ICollection value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.NonGenericInterfaceEnumerableFormatter +MessagePack.Formatters.NonGenericInterfaceEnumerableFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> System.Collections.IEnumerable +MessagePack.Formatters.NonGenericInterfaceEnumerableFormatter.Serialize(ref MessagePack.MessagePackWriter writer, System.Collections.IEnumerable value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.PrimitiveObjectFormatter.PrimitiveObjectFormatter() -> void +MessagePack.Formatters.ReadOnlyMemoryFormatter +MessagePack.Formatters.ReadOnlyMemoryFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> System.ReadOnlyMemory +MessagePack.Formatters.ReadOnlyMemoryFormatter.ReadOnlyMemoryFormatter() -> void +MessagePack.Formatters.ReadOnlyMemoryFormatter.Serialize(ref MessagePack.MessagePackWriter writer, System.ReadOnlyMemory value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.ReadOnlySequenceFormatter +MessagePack.Formatters.ReadOnlySequenceFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> System.Buffers.ReadOnlySequence +MessagePack.Formatters.ReadOnlySequenceFormatter.ReadOnlySequenceFormatter() -> void +MessagePack.Formatters.ReadOnlySequenceFormatter.Serialize(ref MessagePack.MessagePackWriter writer, System.Buffers.ReadOnlySequence value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.TypeFormatter +MessagePack.Formatters.TypeFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> T +MessagePack.Formatters.TypeFormatter.Serialize(ref MessagePack.MessagePackWriter writer, T value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.TypelessFormatter.TypelessFormatter() -> void +MessagePack.ImmutableCollection.ImmutableArrayFormatter +MessagePack.ImmutableCollection.ImmutableArrayFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> System.Collections.Immutable.ImmutableArray +MessagePack.ImmutableCollection.ImmutableArrayFormatter.ImmutableArrayFormatter() -> void +MessagePack.ImmutableCollection.ImmutableArrayFormatter.Serialize(ref MessagePack.MessagePackWriter writer, System.Collections.Immutable.ImmutableArray value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.ImmutableCollection.ImmutableCollectionResolver +MessagePack.ImmutableCollection.ImmutableCollectionResolver.GetFormatter() -> MessagePack.Formatters.IMessagePackFormatter +MessagePack.ImmutableCollection.ImmutableDictionaryFormatter +MessagePack.ImmutableCollection.ImmutableDictionaryFormatter.ImmutableDictionaryFormatter() -> void +MessagePack.ImmutableCollection.ImmutableHashSetFormatter +MessagePack.ImmutableCollection.ImmutableHashSetFormatter.ImmutableHashSetFormatter() -> void +MessagePack.ImmutableCollection.ImmutableListFormatter +MessagePack.ImmutableCollection.ImmutableListFormatter.ImmutableListFormatter() -> void +MessagePack.ImmutableCollection.ImmutableQueueBuilder +MessagePack.ImmutableCollection.ImmutableQueueBuilder.Add(T value) -> void +MessagePack.ImmutableCollection.ImmutableQueueBuilder.ImmutableQueueBuilder() -> void +MessagePack.ImmutableCollection.ImmutableQueueBuilder.Q.get -> System.Collections.Immutable.ImmutableQueue +MessagePack.ImmutableCollection.ImmutableQueueBuilder.Q.set -> void +MessagePack.ImmutableCollection.ImmutableQueueFormatter +MessagePack.ImmutableCollection.ImmutableQueueFormatter.ImmutableQueueFormatter() -> void +MessagePack.ImmutableCollection.ImmutableSortedDictionaryFormatter +MessagePack.ImmutableCollection.ImmutableSortedDictionaryFormatter.ImmutableSortedDictionaryFormatter() -> void +MessagePack.ImmutableCollection.ImmutableSortedSetFormatter +MessagePack.ImmutableCollection.ImmutableSortedSetFormatter.ImmutableSortedSetFormatter() -> void +MessagePack.ImmutableCollection.ImmutableStackFormatter +MessagePack.ImmutableCollection.ImmutableStackFormatter.ImmutableStackFormatter() -> void +MessagePack.ImmutableCollection.InterfaceImmutableDictionaryFormatter +MessagePack.ImmutableCollection.InterfaceImmutableDictionaryFormatter.InterfaceImmutableDictionaryFormatter() -> void +MessagePack.ImmutableCollection.InterfaceImmutableListFormatter +MessagePack.ImmutableCollection.InterfaceImmutableListFormatter.InterfaceImmutableListFormatter() -> void +MessagePack.ImmutableCollection.InterfaceImmutableQueueFormatter +MessagePack.ImmutableCollection.InterfaceImmutableQueueFormatter.InterfaceImmutableQueueFormatter() -> void +MessagePack.ImmutableCollection.InterfaceImmutableSetFormatter +MessagePack.ImmutableCollection.InterfaceImmutableSetFormatter.InterfaceImmutableSetFormatter() -> void +MessagePack.ImmutableCollection.InterfaceImmutableStackFormatter +MessagePack.ImmutableCollection.InterfaceImmutableStackFormatter.InterfaceImmutableStackFormatter() -> void +MessagePack.Resolvers.ExpandoObjectResolver +override MessagePack.ImmutableCollection.ImmutableDictionaryFormatter.Add(System.Collections.Immutable.ImmutableDictionary.Builder collection, int index, TKey key, TValue value, MessagePack.MessagePackSerializerOptions options) -> void +override MessagePack.ImmutableCollection.ImmutableDictionaryFormatter.Complete(System.Collections.Immutable.ImmutableDictionary.Builder intermediateCollection) -> System.Collections.Immutable.ImmutableDictionary +override MessagePack.ImmutableCollection.ImmutableDictionaryFormatter.Create(int count, MessagePack.MessagePackSerializerOptions options) -> System.Collections.Immutable.ImmutableDictionary.Builder +override MessagePack.ImmutableCollection.ImmutableDictionaryFormatter.GetSourceEnumerator(System.Collections.Immutable.ImmutableDictionary source) -> System.Collections.Immutable.ImmutableDictionary.Enumerator +override MessagePack.ImmutableCollection.ImmutableHashSetFormatter.Add(System.Collections.Immutable.ImmutableHashSet.Builder collection, int index, T value, MessagePack.MessagePackSerializerOptions options) -> void +override MessagePack.ImmutableCollection.ImmutableHashSetFormatter.Complete(System.Collections.Immutable.ImmutableHashSet.Builder intermediateCollection) -> System.Collections.Immutable.ImmutableHashSet +override MessagePack.ImmutableCollection.ImmutableHashSetFormatter.Create(int count, MessagePack.MessagePackSerializerOptions options) -> System.Collections.Immutable.ImmutableHashSet.Builder +override MessagePack.ImmutableCollection.ImmutableHashSetFormatter.GetSourceEnumerator(System.Collections.Immutable.ImmutableHashSet source) -> System.Collections.Immutable.ImmutableHashSet.Enumerator +override MessagePack.ImmutableCollection.ImmutableListFormatter.Add(System.Collections.Immutable.ImmutableList.Builder collection, int index, T value, MessagePack.MessagePackSerializerOptions options) -> void +override MessagePack.ImmutableCollection.ImmutableListFormatter.Complete(System.Collections.Immutable.ImmutableList.Builder intermediateCollection) -> System.Collections.Immutable.ImmutableList +override MessagePack.ImmutableCollection.ImmutableListFormatter.Create(int count, MessagePack.MessagePackSerializerOptions options) -> System.Collections.Immutable.ImmutableList.Builder +override MessagePack.ImmutableCollection.ImmutableListFormatter.GetSourceEnumerator(System.Collections.Immutable.ImmutableList source) -> System.Collections.Immutable.ImmutableList.Enumerator +override MessagePack.ImmutableCollection.ImmutableQueueFormatter.Add(MessagePack.ImmutableCollection.ImmutableQueueBuilder collection, int index, T value, MessagePack.MessagePackSerializerOptions options) -> void +override MessagePack.ImmutableCollection.ImmutableQueueFormatter.Complete(MessagePack.ImmutableCollection.ImmutableQueueBuilder intermediateCollection) -> System.Collections.Immutable.ImmutableQueue +override MessagePack.ImmutableCollection.ImmutableQueueFormatter.Create(int count, MessagePack.MessagePackSerializerOptions options) -> MessagePack.ImmutableCollection.ImmutableQueueBuilder +override MessagePack.ImmutableCollection.ImmutableSortedDictionaryFormatter.Add(System.Collections.Immutable.ImmutableSortedDictionary.Builder collection, int index, TKey key, TValue value, MessagePack.MessagePackSerializerOptions options) -> void +override MessagePack.ImmutableCollection.ImmutableSortedDictionaryFormatter.Complete(System.Collections.Immutable.ImmutableSortedDictionary.Builder intermediateCollection) -> System.Collections.Immutable.ImmutableSortedDictionary +override MessagePack.ImmutableCollection.ImmutableSortedDictionaryFormatter.Create(int count, MessagePack.MessagePackSerializerOptions options) -> System.Collections.Immutable.ImmutableSortedDictionary.Builder +override MessagePack.ImmutableCollection.ImmutableSortedDictionaryFormatter.GetSourceEnumerator(System.Collections.Immutable.ImmutableSortedDictionary source) -> System.Collections.Immutable.ImmutableSortedDictionary.Enumerator +override MessagePack.ImmutableCollection.ImmutableSortedSetFormatter.Add(System.Collections.Immutable.ImmutableSortedSet.Builder collection, int index, T value, MessagePack.MessagePackSerializerOptions options) -> void +override MessagePack.ImmutableCollection.ImmutableSortedSetFormatter.Complete(System.Collections.Immutable.ImmutableSortedSet.Builder intermediateCollection) -> System.Collections.Immutable.ImmutableSortedSet +override MessagePack.ImmutableCollection.ImmutableSortedSetFormatter.Create(int count, MessagePack.MessagePackSerializerOptions options) -> System.Collections.Immutable.ImmutableSortedSet.Builder +override MessagePack.ImmutableCollection.ImmutableSortedSetFormatter.GetSourceEnumerator(System.Collections.Immutable.ImmutableSortedSet source) -> System.Collections.Immutable.ImmutableSortedSet.Enumerator +override MessagePack.ImmutableCollection.ImmutableStackFormatter.Add(T[] collection, int index, T value, MessagePack.MessagePackSerializerOptions options) -> void +override MessagePack.ImmutableCollection.ImmutableStackFormatter.Complete(T[] intermediateCollection) -> System.Collections.Immutable.ImmutableStack +override MessagePack.ImmutableCollection.ImmutableStackFormatter.Create(int count, MessagePack.MessagePackSerializerOptions options) -> T[] +override MessagePack.ImmutableCollection.InterfaceImmutableDictionaryFormatter.Add(System.Collections.Immutable.ImmutableDictionary.Builder collection, int index, TKey key, TValue value, MessagePack.MessagePackSerializerOptions options) -> void +override MessagePack.ImmutableCollection.InterfaceImmutableDictionaryFormatter.Complete(System.Collections.Immutable.ImmutableDictionary.Builder intermediateCollection) -> System.Collections.Immutable.IImmutableDictionary +override MessagePack.ImmutableCollection.InterfaceImmutableDictionaryFormatter.Create(int count, MessagePack.MessagePackSerializerOptions options) -> System.Collections.Immutable.ImmutableDictionary.Builder +override MessagePack.ImmutableCollection.InterfaceImmutableListFormatter.Add(System.Collections.Immutable.ImmutableList.Builder collection, int index, T value, MessagePack.MessagePackSerializerOptions options) -> void +override MessagePack.ImmutableCollection.InterfaceImmutableListFormatter.Complete(System.Collections.Immutable.ImmutableList.Builder intermediateCollection) -> System.Collections.Immutable.IImmutableList +override MessagePack.ImmutableCollection.InterfaceImmutableListFormatter.Create(int count, MessagePack.MessagePackSerializerOptions options) -> System.Collections.Immutable.ImmutableList.Builder +override MessagePack.ImmutableCollection.InterfaceImmutableQueueFormatter.Add(MessagePack.ImmutableCollection.ImmutableQueueBuilder collection, int index, T value, MessagePack.MessagePackSerializerOptions options) -> void +override MessagePack.ImmutableCollection.InterfaceImmutableQueueFormatter.Complete(MessagePack.ImmutableCollection.ImmutableQueueBuilder intermediateCollection) -> System.Collections.Immutable.IImmutableQueue +override MessagePack.ImmutableCollection.InterfaceImmutableQueueFormatter.Create(int count, MessagePack.MessagePackSerializerOptions options) -> MessagePack.ImmutableCollection.ImmutableQueueBuilder +override MessagePack.ImmutableCollection.InterfaceImmutableSetFormatter.Add(System.Collections.Immutable.ImmutableHashSet.Builder collection, int index, T value, MessagePack.MessagePackSerializerOptions options) -> void +override MessagePack.ImmutableCollection.InterfaceImmutableSetFormatter.Complete(System.Collections.Immutable.ImmutableHashSet.Builder intermediateCollection) -> System.Collections.Immutable.IImmutableSet +override MessagePack.ImmutableCollection.InterfaceImmutableSetFormatter.Create(int count, MessagePack.MessagePackSerializerOptions options) -> System.Collections.Immutable.ImmutableHashSet.Builder +override MessagePack.ImmutableCollection.InterfaceImmutableStackFormatter.Add(T[] collection, int index, T value, MessagePack.MessagePackSerializerOptions options) -> void +override MessagePack.ImmutableCollection.InterfaceImmutableStackFormatter.Complete(T[] intermediateCollection) -> System.Collections.Immutable.IImmutableStack +override MessagePack.ImmutableCollection.InterfaceImmutableStackFormatter.Create(int count, MessagePack.MessagePackSerializerOptions options) -> T[] +static readonly MessagePack.Formatters.ByteMemoryFormatter.Instance -> MessagePack.Formatters.ByteMemoryFormatter +static readonly MessagePack.Formatters.ByteReadOnlyMemoryFormatter.Instance -> MessagePack.Formatters.ByteReadOnlyMemoryFormatter +static readonly MessagePack.Formatters.ByteReadOnlySequenceFormatter.Instance -> MessagePack.Formatters.ByteReadOnlySequenceFormatter +static readonly MessagePack.Formatters.ExpandoObjectFormatter.Instance -> MessagePack.Formatters.IMessagePackFormatter +static readonly MessagePack.Formatters.NonGenericInterfaceCollectionFormatter.Instance -> MessagePack.Formatters.IMessagePackFormatter +static readonly MessagePack.Formatters.NonGenericInterfaceEnumerableFormatter.Instance -> MessagePack.Formatters.IMessagePackFormatter +static readonly MessagePack.Formatters.TypeFormatter.Instance -> MessagePack.Formatters.IMessagePackFormatter +static readonly MessagePack.ImmutableCollection.ImmutableCollectionResolver.Instance -> MessagePack.ImmutableCollection.ImmutableCollectionResolver +static readonly MessagePack.Resolvers.ExpandoObjectResolver.Instance -> MessagePack.IFormatterResolver +static readonly MessagePack.Resolvers.ExpandoObjectResolver.Options -> MessagePack.MessagePackSerializerOptions +virtual MessagePack.Formatters.PrimitiveObjectFormatter.DeserializeMap(ref MessagePack.MessagePackReader reader, int length, MessagePack.MessagePackSerializerOptions options) -> object diff --git a/src/MessagePack/net6.0/PublicAPI.Unshipped.txt b/src/MessagePack/net6.0/PublicAPI.Unshipped.txt new file mode 100644 index 00000000..4d82b979 --- /dev/null +++ b/src/MessagePack/net6.0/PublicAPI.Unshipped.txt @@ -0,0 +1,30 @@ +MessagePack.ExtensionHeader.ExtensionHeader() -> void +MessagePack.ExtensionResult.ExtensionResult() -> void +MessagePack.FormatterNotRegisteredException.FormatterNotRegisteredException(System.Runtime.Serialization.SerializationInfo info, System.Runtime.Serialization.StreamingContext context) -> void +MessagePack.Formatters.HalfFormatter +MessagePack.Formatters.HalfFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> System.Half +MessagePack.Formatters.HalfFormatter.Serialize(ref MessagePack.MessagePackWriter writer, System.Half value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.InterfaceReadOnlySetFormatter +MessagePack.Formatters.InterfaceReadOnlySetFormatter.InterfaceReadOnlySetFormatter() -> void +MessagePack.Formatters.StringInterningFormatter +MessagePack.Formatters.StringInterningFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> string +MessagePack.Formatters.StringInterningFormatter.Serialize(ref MessagePack.MessagePackWriter writer, string value, MessagePack.MessagePackSerializerOptions options) -> void +MessagePack.Formatters.StringInterningFormatter.StringInterningFormatter() -> void +MessagePack.MessagePackReader.MessagePackReader() -> void +MessagePack.MessagePackSerializerOptions.SequencePool.get -> MessagePack.SequencePool +MessagePack.MessagePackSerializerOptions.WithPool(MessagePack.SequencePool pool) -> MessagePack.MessagePackSerializerOptions +MessagePack.MessagePackStreamReader.MessagePackStreamReader(System.IO.Stream stream, bool leaveOpen, MessagePack.SequencePool sequencePool) -> void +MessagePack.MessagePackWriter.MessagePackWriter() -> void +MessagePack.SequencePool +MessagePack.SequencePool.SequencePool() -> void +MessagePack.SequencePool.SequencePool(int maxSize) -> void +MessagePack.SequencePool.SequencePool(int maxSize, System.Buffers.ArrayPool arrayPool) -> void +MessagePack.TinyJsonException.TinyJsonException(System.Runtime.Serialization.SerializationInfo info, System.Runtime.Serialization.StreamingContext context) -> void +static MessagePack.Nil.operator !=(MessagePack.Nil left, MessagePack.Nil right) -> bool +static MessagePack.Nil.operator ==(MessagePack.Nil left, MessagePack.Nil right) -> bool +static readonly MessagePack.Formatters.HalfFormatter.Instance -> MessagePack.Formatters.IMessagePackFormatter +virtual MessagePack.MessagePackStreamReader.Dispose(bool disposing) -> void +MessagePack.Formatters.GenericEnumerableFormatter +MessagePack.Formatters.GenericEnumerableFormatter.GenericEnumerableFormatter() -> void +MessagePack.Formatters.GenericReadOnlyDictionaryFormatter +MessagePack.Formatters.GenericReadOnlyDictionaryFormatter.GenericReadOnlyDictionaryFormatter() -> void diff --git a/src/MessagePack/netcoreapp2.1/PublicAPI.Shipped.txt b/src/MessagePack/netcoreapp2.1/PublicAPI.Shipped.txt deleted file mode 100644 index 8aabf5dc..00000000 --- a/src/MessagePack/netcoreapp2.1/PublicAPI.Shipped.txt +++ /dev/null @@ -1,1154 +0,0 @@ -MessagePack.ExtensionHeader -MessagePack.ExtensionHeader.ExtensionHeader(sbyte typeCode, int length) -> void -MessagePack.ExtensionHeader.ExtensionHeader(sbyte typeCode, uint length) -> void -MessagePack.ExtensionHeader.Length.get -> uint -MessagePack.ExtensionHeader.TypeCode.get -> sbyte -MessagePack.ExtensionResult -MessagePack.ExtensionResult.Data.get -> System.Buffers.ReadOnlySequence -MessagePack.ExtensionResult.ExtensionResult(sbyte typeCode, System.Buffers.ReadOnlySequence data) -> void -MessagePack.ExtensionResult.ExtensionResult(sbyte typeCode, System.Memory data) -> void -MessagePack.ExtensionResult.Header.get -> MessagePack.ExtensionHeader -MessagePack.ExtensionResult.TypeCode.get -> sbyte -MessagePack.FormatterNotRegisteredException -MessagePack.FormatterNotRegisteredException.FormatterNotRegisteredException(string message) -> void -MessagePack.FormatterResolverExtensions -MessagePack.Formatters.ArrayFormatter -MessagePack.Formatters.ArrayFormatter.ArrayFormatter() -> void -MessagePack.Formatters.ArrayFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> T[] -MessagePack.Formatters.ArrayFormatter.Serialize(ref MessagePack.MessagePackWriter writer, T[] value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.ArraySegmentFormatter -MessagePack.Formatters.ArraySegmentFormatter.ArraySegmentFormatter() -> void -MessagePack.Formatters.ArraySegmentFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> System.ArraySegment -MessagePack.Formatters.ArraySegmentFormatter.Serialize(ref MessagePack.MessagePackWriter writer, System.ArraySegment value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.BigIntegerFormatter -MessagePack.Formatters.BigIntegerFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> System.Numerics.BigInteger -MessagePack.Formatters.BigIntegerFormatter.Serialize(ref MessagePack.MessagePackWriter writer, System.Numerics.BigInteger value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.BitArrayFormatter -MessagePack.Formatters.BitArrayFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> System.Collections.BitArray -MessagePack.Formatters.BitArrayFormatter.Serialize(ref MessagePack.MessagePackWriter writer, System.Collections.BitArray value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.BooleanArrayFormatter -MessagePack.Formatters.BooleanArrayFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> bool[] -MessagePack.Formatters.BooleanArrayFormatter.Serialize(ref MessagePack.MessagePackWriter writer, bool[] value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.BooleanFormatter -MessagePack.Formatters.BooleanFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> bool -MessagePack.Formatters.BooleanFormatter.Serialize(ref MessagePack.MessagePackWriter writer, bool value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.ByteArrayFormatter -MessagePack.Formatters.ByteArrayFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> byte[] -MessagePack.Formatters.ByteArrayFormatter.Serialize(ref MessagePack.MessagePackWriter writer, byte[] value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.ByteArraySegmentFormatter -MessagePack.Formatters.ByteArraySegmentFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> System.ArraySegment -MessagePack.Formatters.ByteArraySegmentFormatter.Serialize(ref MessagePack.MessagePackWriter writer, System.ArraySegment value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.ByteFormatter -MessagePack.Formatters.ByteFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> byte -MessagePack.Formatters.ByteFormatter.Serialize(ref MessagePack.MessagePackWriter writer, byte value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.CharArrayFormatter -MessagePack.Formatters.CharArrayFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> char[] -MessagePack.Formatters.CharArrayFormatter.Serialize(ref MessagePack.MessagePackWriter writer, char[] value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.CharFormatter -MessagePack.Formatters.CharFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> char -MessagePack.Formatters.CharFormatter.Serialize(ref MessagePack.MessagePackWriter writer, char value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.CollectionFormatterBase -MessagePack.Formatters.CollectionFormatterBase.CollectionFormatterBase() -> void -MessagePack.Formatters.CollectionFormatterBase -MessagePack.Formatters.CollectionFormatterBase.CollectionFormatterBase() -> void -MessagePack.Formatters.CollectionFormatterBase -MessagePack.Formatters.CollectionFormatterBase.CollectionFormatterBase() -> void -MessagePack.Formatters.CollectionFormatterBase.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> TCollection -MessagePack.Formatters.CollectionFormatterBase.Serialize(ref MessagePack.MessagePackWriter writer, TCollection value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.ComplexFormatter -MessagePack.Formatters.ComplexFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> System.Numerics.Complex -MessagePack.Formatters.ComplexFormatter.Serialize(ref MessagePack.MessagePackWriter writer, System.Numerics.Complex value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.ConcurrentBagFormatter -MessagePack.Formatters.ConcurrentBagFormatter.ConcurrentBagFormatter() -> void -MessagePack.Formatters.ConcurrentDictionaryFormatter -MessagePack.Formatters.ConcurrentDictionaryFormatter.ConcurrentDictionaryFormatter() -> void -MessagePack.Formatters.ConcurrentQueueFormatter -MessagePack.Formatters.ConcurrentQueueFormatter.ConcurrentQueueFormatter() -> void -MessagePack.Formatters.ConcurrentStackFormatter -MessagePack.Formatters.ConcurrentStackFormatter.ConcurrentStackFormatter() -> void -MessagePack.Formatters.DateTimeArrayFormatter -MessagePack.Formatters.DateTimeArrayFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> System.DateTime[] -MessagePack.Formatters.DateTimeArrayFormatter.Serialize(ref MessagePack.MessagePackWriter writer, System.DateTime[] value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.DateTimeFormatter -MessagePack.Formatters.DateTimeFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> System.DateTime -MessagePack.Formatters.DateTimeFormatter.Serialize(ref MessagePack.MessagePackWriter writer, System.DateTime value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.DateTimeOffsetFormatter -MessagePack.Formatters.DateTimeOffsetFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> System.DateTimeOffset -MessagePack.Formatters.DateTimeOffsetFormatter.Serialize(ref MessagePack.MessagePackWriter writer, System.DateTimeOffset value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.DecimalFormatter -MessagePack.Formatters.DecimalFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> decimal -MessagePack.Formatters.DecimalFormatter.Serialize(ref MessagePack.MessagePackWriter writer, decimal value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.DictionaryFormatter -MessagePack.Formatters.DictionaryFormatter.DictionaryFormatter() -> void -MessagePack.Formatters.DictionaryFormatterBase -MessagePack.Formatters.DictionaryFormatterBase.DictionaryFormatterBase() -> void -MessagePack.Formatters.DictionaryFormatterBase -MessagePack.Formatters.DictionaryFormatterBase.DictionaryFormatterBase() -> void -MessagePack.Formatters.DictionaryFormatterBase -MessagePack.Formatters.DictionaryFormatterBase.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> TDictionary -MessagePack.Formatters.DictionaryFormatterBase.DictionaryFormatterBase() -> void -MessagePack.Formatters.DictionaryFormatterBase.Serialize(ref MessagePack.MessagePackWriter writer, TDictionary value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.DoubleArrayFormatter -MessagePack.Formatters.DoubleArrayFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> double[] -MessagePack.Formatters.DoubleArrayFormatter.Serialize(ref MessagePack.MessagePackWriter writer, double[] value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.DoubleFormatter -MessagePack.Formatters.DoubleFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> double -MessagePack.Formatters.DoubleFormatter.Serialize(ref MessagePack.MessagePackWriter writer, double value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.DynamicObjectTypeFallbackFormatter -MessagePack.Formatters.DynamicObjectTypeFallbackFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> object -MessagePack.Formatters.DynamicObjectTypeFallbackFormatter.Serialize(ref MessagePack.MessagePackWriter writer, object value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.EnumAsStringFormatter -MessagePack.Formatters.EnumAsStringFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> T -MessagePack.Formatters.EnumAsStringFormatter.EnumAsStringFormatter() -> void -MessagePack.Formatters.EnumAsStringFormatter.Serialize(ref MessagePack.MessagePackWriter writer, T value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.ForceByteBlockFormatter -MessagePack.Formatters.ForceByteBlockFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> byte -MessagePack.Formatters.ForceByteBlockFormatter.Serialize(ref MessagePack.MessagePackWriter writer, byte value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.ForceInt16BlockArrayFormatter -MessagePack.Formatters.ForceInt16BlockArrayFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> short[] -MessagePack.Formatters.ForceInt16BlockArrayFormatter.Serialize(ref MessagePack.MessagePackWriter writer, short[] value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.ForceInt16BlockFormatter -MessagePack.Formatters.ForceInt16BlockFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> short -MessagePack.Formatters.ForceInt16BlockFormatter.Serialize(ref MessagePack.MessagePackWriter writer, short value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.ForceInt32BlockArrayFormatter -MessagePack.Formatters.ForceInt32BlockArrayFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> int[] -MessagePack.Formatters.ForceInt32BlockArrayFormatter.Serialize(ref MessagePack.MessagePackWriter writer, int[] value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.ForceInt32BlockFormatter -MessagePack.Formatters.ForceInt32BlockFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> int -MessagePack.Formatters.ForceInt32BlockFormatter.Serialize(ref MessagePack.MessagePackWriter writer, int value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.ForceInt64BlockArrayFormatter -MessagePack.Formatters.ForceInt64BlockArrayFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> long[] -MessagePack.Formatters.ForceInt64BlockArrayFormatter.Serialize(ref MessagePack.MessagePackWriter writer, long[] value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.ForceInt64BlockFormatter -MessagePack.Formatters.ForceInt64BlockFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> long -MessagePack.Formatters.ForceInt64BlockFormatter.Serialize(ref MessagePack.MessagePackWriter writer, long value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.ForceSByteBlockArrayFormatter -MessagePack.Formatters.ForceSByteBlockArrayFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> sbyte[] -MessagePack.Formatters.ForceSByteBlockArrayFormatter.Serialize(ref MessagePack.MessagePackWriter writer, sbyte[] value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.ForceSByteBlockFormatter -MessagePack.Formatters.ForceSByteBlockFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> sbyte -MessagePack.Formatters.ForceSByteBlockFormatter.Serialize(ref MessagePack.MessagePackWriter writer, sbyte value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.ForceUInt16BlockArrayFormatter -MessagePack.Formatters.ForceUInt16BlockArrayFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> ushort[] -MessagePack.Formatters.ForceUInt16BlockArrayFormatter.Serialize(ref MessagePack.MessagePackWriter writer, ushort[] value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.ForceUInt16BlockFormatter -MessagePack.Formatters.ForceUInt16BlockFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> ushort -MessagePack.Formatters.ForceUInt16BlockFormatter.Serialize(ref MessagePack.MessagePackWriter writer, ushort value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.ForceUInt32BlockArrayFormatter -MessagePack.Formatters.ForceUInt32BlockArrayFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> uint[] -MessagePack.Formatters.ForceUInt32BlockArrayFormatter.Serialize(ref MessagePack.MessagePackWriter writer, uint[] value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.ForceUInt32BlockFormatter -MessagePack.Formatters.ForceUInt32BlockFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> uint -MessagePack.Formatters.ForceUInt32BlockFormatter.Serialize(ref MessagePack.MessagePackWriter writer, uint value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.ForceUInt64BlockArrayFormatter -MessagePack.Formatters.ForceUInt64BlockArrayFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> ulong[] -MessagePack.Formatters.ForceUInt64BlockArrayFormatter.Serialize(ref MessagePack.MessagePackWriter writer, ulong[] value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.ForceUInt64BlockFormatter -MessagePack.Formatters.ForceUInt64BlockFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> ulong -MessagePack.Formatters.ForceUInt64BlockFormatter.Serialize(ref MessagePack.MessagePackWriter writer, ulong value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.FourDimensionalArrayFormatter -MessagePack.Formatters.FourDimensionalArrayFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> T[,,,] -MessagePack.Formatters.FourDimensionalArrayFormatter.FourDimensionalArrayFormatter() -> void -MessagePack.Formatters.FourDimensionalArrayFormatter.Serialize(ref MessagePack.MessagePackWriter writer, T[,,,] value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.GenericCollectionFormatter -MessagePack.Formatters.GenericCollectionFormatter.GenericCollectionFormatter() -> void -MessagePack.Formatters.GenericDictionaryFormatter -MessagePack.Formatters.GenericDictionaryFormatter.GenericDictionaryFormatter() -> void -MessagePack.Formatters.GenericEnumFormatter -MessagePack.Formatters.GenericEnumFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> T -MessagePack.Formatters.GenericEnumFormatter.GenericEnumFormatter() -> void -MessagePack.Formatters.GenericEnumFormatter.Serialize(ref MessagePack.MessagePackWriter writer, T value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.GuidFormatter -MessagePack.Formatters.GuidFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> System.Guid -MessagePack.Formatters.GuidFormatter.Serialize(ref MessagePack.MessagePackWriter writer, System.Guid value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.HashSetFormatter -MessagePack.Formatters.HashSetFormatter.HashSetFormatter() -> void -MessagePack.Formatters.IMessagePackFormatter -MessagePack.Formatters.IMessagePackFormatter -MessagePack.Formatters.IMessagePackFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> T -MessagePack.Formatters.IMessagePackFormatter.Serialize(ref MessagePack.MessagePackWriter writer, T value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.IgnoreFormatter -MessagePack.Formatters.IgnoreFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> T -MessagePack.Formatters.IgnoreFormatter.IgnoreFormatter() -> void -MessagePack.Formatters.IgnoreFormatter.Serialize(ref MessagePack.MessagePackWriter writer, T value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.Int16ArrayFormatter -MessagePack.Formatters.Int16ArrayFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> short[] -MessagePack.Formatters.Int16ArrayFormatter.Serialize(ref MessagePack.MessagePackWriter writer, short[] value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.Int16Formatter -MessagePack.Formatters.Int16Formatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> short -MessagePack.Formatters.Int16Formatter.Serialize(ref MessagePack.MessagePackWriter writer, short value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.Int32ArrayFormatter -MessagePack.Formatters.Int32ArrayFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> int[] -MessagePack.Formatters.Int32ArrayFormatter.Serialize(ref MessagePack.MessagePackWriter writer, int[] value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.Int32Formatter -MessagePack.Formatters.Int32Formatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> int -MessagePack.Formatters.Int32Formatter.Serialize(ref MessagePack.MessagePackWriter writer, int value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.Int64ArrayFormatter -MessagePack.Formatters.Int64ArrayFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> long[] -MessagePack.Formatters.Int64ArrayFormatter.Serialize(ref MessagePack.MessagePackWriter writer, long[] value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.Int64Formatter -MessagePack.Formatters.Int64Formatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> long -MessagePack.Formatters.Int64Formatter.Serialize(ref MessagePack.MessagePackWriter writer, long value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.InterfaceCollectionFormatter -MessagePack.Formatters.InterfaceCollectionFormatter.InterfaceCollectionFormatter() -> void -MessagePack.Formatters.InterfaceDictionaryFormatter -MessagePack.Formatters.InterfaceDictionaryFormatter.InterfaceDictionaryFormatter() -> void -MessagePack.Formatters.InterfaceEnumerableFormatter -MessagePack.Formatters.InterfaceEnumerableFormatter.InterfaceEnumerableFormatter() -> void -MessagePack.Formatters.InterfaceGroupingFormatter -MessagePack.Formatters.InterfaceGroupingFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> System.Linq.IGrouping -MessagePack.Formatters.InterfaceGroupingFormatter.InterfaceGroupingFormatter() -> void -MessagePack.Formatters.InterfaceGroupingFormatter.Serialize(ref MessagePack.MessagePackWriter writer, System.Linq.IGrouping value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.InterfaceListFormatter -MessagePack.Formatters.InterfaceListFormatter.InterfaceListFormatter() -> void -MessagePack.Formatters.InterfaceLookupFormatter -MessagePack.Formatters.InterfaceLookupFormatter.InterfaceLookupFormatter() -> void -MessagePack.Formatters.InterfaceReadOnlyCollectionFormatter -MessagePack.Formatters.InterfaceReadOnlyCollectionFormatter.InterfaceReadOnlyCollectionFormatter() -> void -MessagePack.Formatters.InterfaceReadOnlyDictionaryFormatter -MessagePack.Formatters.InterfaceReadOnlyDictionaryFormatter.InterfaceReadOnlyDictionaryFormatter() -> void -MessagePack.Formatters.InterfaceReadOnlyListFormatter -MessagePack.Formatters.InterfaceReadOnlyListFormatter.InterfaceReadOnlyListFormatter() -> void -MessagePack.Formatters.InterfaceSetFormatter -MessagePack.Formatters.InterfaceSetFormatter.InterfaceSetFormatter() -> void -MessagePack.Formatters.KeyValuePairFormatter -MessagePack.Formatters.KeyValuePairFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> System.Collections.Generic.KeyValuePair -MessagePack.Formatters.KeyValuePairFormatter.KeyValuePairFormatter() -> void -MessagePack.Formatters.KeyValuePairFormatter.Serialize(ref MessagePack.MessagePackWriter writer, System.Collections.Generic.KeyValuePair value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.LazyFormatter -MessagePack.Formatters.LazyFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> System.Lazy -MessagePack.Formatters.LazyFormatter.LazyFormatter() -> void -MessagePack.Formatters.LazyFormatter.Serialize(ref MessagePack.MessagePackWriter writer, System.Lazy value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.LinkedListFormatter -MessagePack.Formatters.LinkedListFormatter.LinkedListFormatter() -> void -MessagePack.Formatters.ListFormatter -MessagePack.Formatters.ListFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> System.Collections.Generic.List -MessagePack.Formatters.ListFormatter.ListFormatter() -> void -MessagePack.Formatters.ListFormatter.Serialize(ref MessagePack.MessagePackWriter writer, System.Collections.Generic.List value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.NativeDateTimeArrayFormatter -MessagePack.Formatters.NativeDateTimeArrayFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> System.DateTime[] -MessagePack.Formatters.NativeDateTimeArrayFormatter.NativeDateTimeArrayFormatter() -> void -MessagePack.Formatters.NativeDateTimeArrayFormatter.Serialize(ref MessagePack.MessagePackWriter writer, System.DateTime[] value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.NativeDateTimeFormatter -MessagePack.Formatters.NativeDateTimeFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> System.DateTime -MessagePack.Formatters.NativeDateTimeFormatter.NativeDateTimeFormatter() -> void -MessagePack.Formatters.NativeDateTimeFormatter.Serialize(ref MessagePack.MessagePackWriter writer, System.DateTime value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.NativeDecimalFormatter -MessagePack.Formatters.NativeDecimalFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> decimal -MessagePack.Formatters.NativeDecimalFormatter.Serialize(ref MessagePack.MessagePackWriter writer, decimal value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.NativeGuidFormatter -MessagePack.Formatters.NativeGuidFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> System.Guid -MessagePack.Formatters.NativeGuidFormatter.Serialize(ref MessagePack.MessagePackWriter writer, System.Guid value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.NilFormatter -MessagePack.Formatters.NilFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> MessagePack.Nil -MessagePack.Formatters.NilFormatter.Serialize(ref MessagePack.MessagePackWriter writer, MessagePack.Nil value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.NonGenericDictionaryFormatter -MessagePack.Formatters.NonGenericDictionaryFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> T -MessagePack.Formatters.NonGenericDictionaryFormatter.NonGenericDictionaryFormatter() -> void -MessagePack.Formatters.NonGenericDictionaryFormatter.Serialize(ref MessagePack.MessagePackWriter writer, T value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.NonGenericInterfaceDictionaryFormatter -MessagePack.Formatters.NonGenericInterfaceDictionaryFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> System.Collections.IDictionary -MessagePack.Formatters.NonGenericInterfaceDictionaryFormatter.Serialize(ref MessagePack.MessagePackWriter writer, System.Collections.IDictionary value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.NonGenericInterfaceListFormatter -MessagePack.Formatters.NonGenericInterfaceListFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> System.Collections.IList -MessagePack.Formatters.NonGenericInterfaceListFormatter.Serialize(ref MessagePack.MessagePackWriter writer, System.Collections.IList value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.NonGenericListFormatter -MessagePack.Formatters.NonGenericListFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> T -MessagePack.Formatters.NonGenericListFormatter.NonGenericListFormatter() -> void -MessagePack.Formatters.NonGenericListFormatter.Serialize(ref MessagePack.MessagePackWriter writer, T value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.NullableBooleanFormatter -MessagePack.Formatters.NullableBooleanFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> bool? -MessagePack.Formatters.NullableBooleanFormatter.Serialize(ref MessagePack.MessagePackWriter writer, bool? value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.NullableByteFormatter -MessagePack.Formatters.NullableByteFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> byte? -MessagePack.Formatters.NullableByteFormatter.Serialize(ref MessagePack.MessagePackWriter writer, byte? value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.NullableCharFormatter -MessagePack.Formatters.NullableCharFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> char? -MessagePack.Formatters.NullableCharFormatter.Serialize(ref MessagePack.MessagePackWriter writer, char? value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.NullableDateTimeFormatter -MessagePack.Formatters.NullableDateTimeFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> System.DateTime? -MessagePack.Formatters.NullableDateTimeFormatter.Serialize(ref MessagePack.MessagePackWriter writer, System.DateTime? value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.NullableDoubleFormatter -MessagePack.Formatters.NullableDoubleFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> double? -MessagePack.Formatters.NullableDoubleFormatter.Serialize(ref MessagePack.MessagePackWriter writer, double? value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.NullableForceByteBlockFormatter -MessagePack.Formatters.NullableForceByteBlockFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> byte? -MessagePack.Formatters.NullableForceByteBlockFormatter.Serialize(ref MessagePack.MessagePackWriter writer, byte? value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.NullableForceInt16BlockFormatter -MessagePack.Formatters.NullableForceInt16BlockFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> short? -MessagePack.Formatters.NullableForceInt16BlockFormatter.Serialize(ref MessagePack.MessagePackWriter writer, short? value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.NullableForceInt32BlockFormatter -MessagePack.Formatters.NullableForceInt32BlockFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> int? -MessagePack.Formatters.NullableForceInt32BlockFormatter.Serialize(ref MessagePack.MessagePackWriter writer, int? value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.NullableForceInt64BlockFormatter -MessagePack.Formatters.NullableForceInt64BlockFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> long? -MessagePack.Formatters.NullableForceInt64BlockFormatter.Serialize(ref MessagePack.MessagePackWriter writer, long? value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.NullableForceSByteBlockFormatter -MessagePack.Formatters.NullableForceSByteBlockFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> sbyte? -MessagePack.Formatters.NullableForceSByteBlockFormatter.Serialize(ref MessagePack.MessagePackWriter writer, sbyte? value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.NullableForceUInt16BlockFormatter -MessagePack.Formatters.NullableForceUInt16BlockFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> ushort? -MessagePack.Formatters.NullableForceUInt16BlockFormatter.Serialize(ref MessagePack.MessagePackWriter writer, ushort? value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.NullableForceUInt32BlockFormatter -MessagePack.Formatters.NullableForceUInt32BlockFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> uint? -MessagePack.Formatters.NullableForceUInt32BlockFormatter.Serialize(ref MessagePack.MessagePackWriter writer, uint? value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.NullableForceUInt64BlockFormatter -MessagePack.Formatters.NullableForceUInt64BlockFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> ulong? -MessagePack.Formatters.NullableForceUInt64BlockFormatter.Serialize(ref MessagePack.MessagePackWriter writer, ulong? value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.NullableFormatter -MessagePack.Formatters.NullableFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> T? -MessagePack.Formatters.NullableFormatter.NullableFormatter() -> void -MessagePack.Formatters.NullableFormatter.Serialize(ref MessagePack.MessagePackWriter writer, T? value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.NullableInt16Formatter -MessagePack.Formatters.NullableInt16Formatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> short? -MessagePack.Formatters.NullableInt16Formatter.Serialize(ref MessagePack.MessagePackWriter writer, short? value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.NullableInt32Formatter -MessagePack.Formatters.NullableInt32Formatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> int? -MessagePack.Formatters.NullableInt32Formatter.Serialize(ref MessagePack.MessagePackWriter writer, int? value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.NullableInt64Formatter -MessagePack.Formatters.NullableInt64Formatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> long? -MessagePack.Formatters.NullableInt64Formatter.Serialize(ref MessagePack.MessagePackWriter writer, long? value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.NullableNilFormatter -MessagePack.Formatters.NullableNilFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> MessagePack.Nil? -MessagePack.Formatters.NullableNilFormatter.Serialize(ref MessagePack.MessagePackWriter writer, MessagePack.Nil? value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.NullableSByteFormatter -MessagePack.Formatters.NullableSByteFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> sbyte? -MessagePack.Formatters.NullableSByteFormatter.Serialize(ref MessagePack.MessagePackWriter writer, sbyte? value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.NullableSingleFormatter -MessagePack.Formatters.NullableSingleFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> float? -MessagePack.Formatters.NullableSingleFormatter.Serialize(ref MessagePack.MessagePackWriter writer, float? value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.NullableStringArrayFormatter -MessagePack.Formatters.NullableStringArrayFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> string[] -MessagePack.Formatters.NullableStringArrayFormatter.Serialize(ref MessagePack.MessagePackWriter writer, string[] value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.NullableStringFormatter -MessagePack.Formatters.NullableStringFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> string -MessagePack.Formatters.NullableStringFormatter.Serialize(ref MessagePack.MessagePackWriter writer, string value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.NullableUInt16Formatter -MessagePack.Formatters.NullableUInt16Formatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> ushort? -MessagePack.Formatters.NullableUInt16Formatter.Serialize(ref MessagePack.MessagePackWriter writer, ushort? value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.NullableUInt32Formatter -MessagePack.Formatters.NullableUInt32Formatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> uint? -MessagePack.Formatters.NullableUInt32Formatter.Serialize(ref MessagePack.MessagePackWriter writer, uint? value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.NullableUInt64Formatter -MessagePack.Formatters.NullableUInt64Formatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> ulong? -MessagePack.Formatters.NullableUInt64Formatter.Serialize(ref MessagePack.MessagePackWriter writer, ulong? value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.ObservableCollectionFormatter -MessagePack.Formatters.ObservableCollectionFormatter.ObservableCollectionFormatter() -> void -MessagePack.Formatters.PrimitiveObjectFormatter -MessagePack.Formatters.PrimitiveObjectFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> object -MessagePack.Formatters.PrimitiveObjectFormatter.Serialize(ref MessagePack.MessagePackWriter writer, object value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.QueueFormatter -MessagePack.Formatters.QueueFormatter.QueueFormatter() -> void -MessagePack.Formatters.ReadOnlyCollectionFormatter -MessagePack.Formatters.ReadOnlyCollectionFormatter.ReadOnlyCollectionFormatter() -> void -MessagePack.Formatters.ReadOnlyDictionaryFormatter -MessagePack.Formatters.ReadOnlyDictionaryFormatter.ReadOnlyDictionaryFormatter() -> void -MessagePack.Formatters.ReadOnlyObservableCollectionFormatter -MessagePack.Formatters.ReadOnlyObservableCollectionFormatter.ReadOnlyObservableCollectionFormatter() -> void -MessagePack.Formatters.SByteArrayFormatter -MessagePack.Formatters.SByteArrayFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> sbyte[] -MessagePack.Formatters.SByteArrayFormatter.Serialize(ref MessagePack.MessagePackWriter writer, sbyte[] value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.SByteFormatter -MessagePack.Formatters.SByteFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> sbyte -MessagePack.Formatters.SByteFormatter.Serialize(ref MessagePack.MessagePackWriter writer, sbyte value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.SingleArrayFormatter -MessagePack.Formatters.SingleArrayFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> float[] -MessagePack.Formatters.SingleArrayFormatter.Serialize(ref MessagePack.MessagePackWriter writer, float[] value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.SingleFormatter -MessagePack.Formatters.SingleFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> float -MessagePack.Formatters.SingleFormatter.Serialize(ref MessagePack.MessagePackWriter writer, float value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.SortedDictionaryFormatter -MessagePack.Formatters.SortedDictionaryFormatter.SortedDictionaryFormatter() -> void -MessagePack.Formatters.SortedListFormatter -MessagePack.Formatters.SortedListFormatter.SortedListFormatter() -> void -MessagePack.Formatters.StackFormatter -MessagePack.Formatters.StackFormatter.StackFormatter() -> void -MessagePack.Formatters.StaticNullableFormatter -MessagePack.Formatters.StaticNullableFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> T? -MessagePack.Formatters.StaticNullableFormatter.Serialize(ref MessagePack.MessagePackWriter writer, T? value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.StaticNullableFormatter.StaticNullableFormatter(MessagePack.Formatters.IMessagePackFormatter underlyingFormatter) -> void -MessagePack.Formatters.StringBuilderFormatter -MessagePack.Formatters.StringBuilderFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> System.Text.StringBuilder -MessagePack.Formatters.StringBuilderFormatter.Serialize(ref MessagePack.MessagePackWriter writer, System.Text.StringBuilder value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.ThreeDimensionalArrayFormatter -MessagePack.Formatters.ThreeDimensionalArrayFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> T[,,] -MessagePack.Formatters.ThreeDimensionalArrayFormatter.Serialize(ref MessagePack.MessagePackWriter writer, T[,,] value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.ThreeDimensionalArrayFormatter.ThreeDimensionalArrayFormatter() -> void -MessagePack.Formatters.TimeSpanFormatter -MessagePack.Formatters.TimeSpanFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> System.TimeSpan -MessagePack.Formatters.TimeSpanFormatter.Serialize(ref MessagePack.MessagePackWriter writer, System.TimeSpan value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.TupleFormatter -MessagePack.Formatters.TupleFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> System.Tuple -MessagePack.Formatters.TupleFormatter.Serialize(ref MessagePack.MessagePackWriter writer, System.Tuple value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.TupleFormatter.TupleFormatter() -> void -MessagePack.Formatters.TupleFormatter -MessagePack.Formatters.TupleFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> System.Tuple -MessagePack.Formatters.TupleFormatter.Serialize(ref MessagePack.MessagePackWriter writer, System.Tuple value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.TupleFormatter.TupleFormatter() -> void -MessagePack.Formatters.TupleFormatter -MessagePack.Formatters.TupleFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> System.Tuple -MessagePack.Formatters.TupleFormatter.Serialize(ref MessagePack.MessagePackWriter writer, System.Tuple value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.TupleFormatter.TupleFormatter() -> void -MessagePack.Formatters.TupleFormatter -MessagePack.Formatters.TupleFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> System.Tuple -MessagePack.Formatters.TupleFormatter.Serialize(ref MessagePack.MessagePackWriter writer, System.Tuple value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.TupleFormatter.TupleFormatter() -> void -MessagePack.Formatters.TupleFormatter -MessagePack.Formatters.TupleFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> System.Tuple -MessagePack.Formatters.TupleFormatter.Serialize(ref MessagePack.MessagePackWriter writer, System.Tuple value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.TupleFormatter.TupleFormatter() -> void -MessagePack.Formatters.TupleFormatter -MessagePack.Formatters.TupleFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> System.Tuple -MessagePack.Formatters.TupleFormatter.Serialize(ref MessagePack.MessagePackWriter writer, System.Tuple value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.TupleFormatter.TupleFormatter() -> void -MessagePack.Formatters.TupleFormatter -MessagePack.Formatters.TupleFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> System.Tuple -MessagePack.Formatters.TupleFormatter.Serialize(ref MessagePack.MessagePackWriter writer, System.Tuple value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.TupleFormatter.TupleFormatter() -> void -MessagePack.Formatters.TupleFormatter -MessagePack.Formatters.TupleFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> System.Tuple -MessagePack.Formatters.TupleFormatter.Serialize(ref MessagePack.MessagePackWriter writer, System.Tuple value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.TupleFormatter.TupleFormatter() -> void -MessagePack.Formatters.TwoDimensionalArrayFormatter -MessagePack.Formatters.TwoDimensionalArrayFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> T[,] -MessagePack.Formatters.TwoDimensionalArrayFormatter.Serialize(ref MessagePack.MessagePackWriter writer, T[,] value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.TwoDimensionalArrayFormatter.TwoDimensionalArrayFormatter() -> void -MessagePack.Formatters.TypelessFormatter -MessagePack.Formatters.TypelessFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> object -MessagePack.Formatters.TypelessFormatter.Serialize(ref MessagePack.MessagePackWriter writer, object value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.UInt16ArrayFormatter -MessagePack.Formatters.UInt16ArrayFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> ushort[] -MessagePack.Formatters.UInt16ArrayFormatter.Serialize(ref MessagePack.MessagePackWriter writer, ushort[] value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.UInt16Formatter -MessagePack.Formatters.UInt16Formatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> ushort -MessagePack.Formatters.UInt16Formatter.Serialize(ref MessagePack.MessagePackWriter writer, ushort value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.UInt32ArrayFormatter -MessagePack.Formatters.UInt32ArrayFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> uint[] -MessagePack.Formatters.UInt32ArrayFormatter.Serialize(ref MessagePack.MessagePackWriter writer, uint[] value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.UInt32Formatter -MessagePack.Formatters.UInt32Formatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> uint -MessagePack.Formatters.UInt32Formatter.Serialize(ref MessagePack.MessagePackWriter writer, uint value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.UInt64ArrayFormatter -MessagePack.Formatters.UInt64ArrayFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> ulong[] -MessagePack.Formatters.UInt64ArrayFormatter.Serialize(ref MessagePack.MessagePackWriter writer, ulong[] value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.UInt64Formatter -MessagePack.Formatters.UInt64Formatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> ulong -MessagePack.Formatters.UInt64Formatter.Serialize(ref MessagePack.MessagePackWriter writer, ulong value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.UriFormatter -MessagePack.Formatters.UriFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> System.Uri -MessagePack.Formatters.UriFormatter.Serialize(ref MessagePack.MessagePackWriter writer, System.Uri value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.ValueTupleFormatter -MessagePack.Formatters.ValueTupleFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> System.ValueTuple -MessagePack.Formatters.ValueTupleFormatter.Serialize(ref MessagePack.MessagePackWriter writer, System.ValueTuple value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.ValueTupleFormatter.ValueTupleFormatter() -> void -MessagePack.Formatters.ValueTupleFormatter -MessagePack.Formatters.ValueTupleFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> (T1, T2, T3, T4, T5, T6, T7) -MessagePack.Formatters.ValueTupleFormatter.Serialize(ref MessagePack.MessagePackWriter writer, (T1, T2, T3, T4, T5, T6, T7) value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.ValueTupleFormatter.ValueTupleFormatter() -> void -MessagePack.Formatters.ValueTupleFormatter -MessagePack.Formatters.ValueTupleFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> (T1, T2, T3, T4, T5, T6) -MessagePack.Formatters.ValueTupleFormatter.Serialize(ref MessagePack.MessagePackWriter writer, (T1, T2, T3, T4, T5, T6) value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.ValueTupleFormatter.ValueTupleFormatter() -> void -MessagePack.Formatters.ValueTupleFormatter -MessagePack.Formatters.ValueTupleFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> (T1, T2, T3, T4, T5) -MessagePack.Formatters.ValueTupleFormatter.Serialize(ref MessagePack.MessagePackWriter writer, (T1, T2, T3, T4, T5) value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.ValueTupleFormatter.ValueTupleFormatter() -> void -MessagePack.Formatters.ValueTupleFormatter -MessagePack.Formatters.ValueTupleFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> (T1, T2, T3, T4) -MessagePack.Formatters.ValueTupleFormatter.Serialize(ref MessagePack.MessagePackWriter writer, (T1, T2, T3, T4) value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.ValueTupleFormatter.ValueTupleFormatter() -> void -MessagePack.Formatters.ValueTupleFormatter -MessagePack.Formatters.ValueTupleFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> (T1, T2, T3) -MessagePack.Formatters.ValueTupleFormatter.Serialize(ref MessagePack.MessagePackWriter writer, (T1, T2, T3) value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.ValueTupleFormatter.ValueTupleFormatter() -> void -MessagePack.Formatters.ValueTupleFormatter -MessagePack.Formatters.ValueTupleFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> (T1, T2) -MessagePack.Formatters.ValueTupleFormatter.Serialize(ref MessagePack.MessagePackWriter writer, (T1, T2) value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.ValueTupleFormatter.ValueTupleFormatter() -> void -MessagePack.Formatters.ValueTupleFormatter -MessagePack.Formatters.ValueTupleFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> System.ValueTuple -MessagePack.Formatters.ValueTupleFormatter.Serialize(ref MessagePack.MessagePackWriter writer, System.ValueTuple value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.ValueTupleFormatter.ValueTupleFormatter() -> void -MessagePack.Formatters.VersionFormatter -MessagePack.Formatters.VersionFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> System.Version -MessagePack.Formatters.VersionFormatter.Serialize(ref MessagePack.MessagePackWriter writer, System.Version value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.IFormatterResolver -MessagePack.IFormatterResolver.GetFormatter() -> MessagePack.Formatters.IMessagePackFormatter -MessagePack.Internal.AutomataDictionary -MessagePack.Internal.AutomataDictionary.Add(string str, int value) -> void -MessagePack.Internal.AutomataDictionary.AutomataDictionary() -> void -MessagePack.Internal.AutomataDictionary.EmitMatch(System.Reflection.Emit.ILGenerator il, System.Reflection.Emit.LocalBuilder bytesSpan, System.Reflection.Emit.LocalBuilder key, System.Action> onFound, System.Action onNotFound) -> void -MessagePack.Internal.AutomataDictionary.GetEnumerator() -> System.Collections.Generic.IEnumerator> -MessagePack.Internal.AutomataDictionary.TryGetValue(System.ReadOnlySpan bytes, out int value) -> bool -MessagePack.Internal.AutomataDictionary.TryGetValue(in System.Buffers.ReadOnlySequence bytes, out int value) -> bool -MessagePack.Internal.AutomataKeyGen -MessagePack.Internal.ByteArrayStringHashTable -MessagePack.Internal.ByteArrayStringHashTable.Add(byte[] key, int value) -> void -MessagePack.Internal.ByteArrayStringHashTable.Add(string key, int value) -> void -MessagePack.Internal.ByteArrayStringHashTable.ByteArrayStringHashTable(int capacity) -> void -MessagePack.Internal.ByteArrayStringHashTable.ByteArrayStringHashTable(int capacity, float loadFactor) -> void -MessagePack.Internal.ByteArrayStringHashTable.GetEnumerator() -> System.Collections.Generic.IEnumerator> -MessagePack.Internal.ByteArrayStringHashTable.TryGetValue(System.ReadOnlySpan key, out int value) -> bool -MessagePack.Internal.ByteArrayStringHashTable.TryGetValue(in System.Buffers.ReadOnlySequence key, out int value) -> bool -MessagePack.Internal.CodeGenHelpers -MessagePack.Internal.RuntimeTypeHandleEqualityComparer -MessagePack.Internal.RuntimeTypeHandleEqualityComparer.Equals(System.RuntimeTypeHandle x, System.RuntimeTypeHandle y) -> bool -MessagePack.Internal.RuntimeTypeHandleEqualityComparer.GetHashCode(System.RuntimeTypeHandle obj) -> int -MessagePack.Internal.UnsafeMemory -MessagePack.Internal.UnsafeMemory32 -MessagePack.Internal.UnsafeMemory64 -MessagePack.MessagePackCode -MessagePack.MessagePackCompression -MessagePack.MessagePackCompression.Lz4Block = 1 -> MessagePack.MessagePackCompression -MessagePack.MessagePackCompression.Lz4BlockArray = 2 -> MessagePack.MessagePackCompression -MessagePack.MessagePackCompression.None = 0 -> MessagePack.MessagePackCompression -MessagePack.MessagePackRange -MessagePack.MessagePackReader -MessagePack.MessagePackReader.CancellationToken.get -> System.Threading.CancellationToken -MessagePack.MessagePackReader.CancellationToken.set -> void -MessagePack.MessagePackReader.Clone(in System.Buffers.ReadOnlySequence readOnlySequence) -> MessagePack.MessagePackReader -MessagePack.MessagePackReader.Consumed.get -> long -MessagePack.MessagePackReader.CreatePeekReader() -> MessagePack.MessagePackReader -MessagePack.MessagePackReader.End.get -> bool -MessagePack.MessagePackReader.IsNil.get -> bool -MessagePack.MessagePackReader.MessagePackReader(System.ReadOnlyMemory memory) -> void -MessagePack.MessagePackReader.MessagePackReader(in System.Buffers.ReadOnlySequence readOnlySequence) -> void -MessagePack.MessagePackReader.NextCode.get -> byte -MessagePack.MessagePackReader.NextMessagePackType.get -> MessagePack.MessagePackType -MessagePack.MessagePackReader.Position.get -> System.SequencePosition -MessagePack.MessagePackReader.ReadArrayHeader() -> int -MessagePack.MessagePackReader.ReadBoolean() -> bool -MessagePack.MessagePackReader.ReadByte() -> byte -MessagePack.MessagePackReader.ReadBytes() -> System.Buffers.ReadOnlySequence? -MessagePack.MessagePackReader.ReadChar() -> char -MessagePack.MessagePackReader.ReadDateTime() -> System.DateTime -MessagePack.MessagePackReader.ReadDouble() -> double -MessagePack.MessagePackReader.ReadExtensionFormat() -> MessagePack.ExtensionResult -MessagePack.MessagePackReader.ReadExtensionFormatHeader() -> MessagePack.ExtensionHeader -MessagePack.MessagePackReader.ReadInt16() -> short -MessagePack.MessagePackReader.ReadInt32() -> int -MessagePack.MessagePackReader.ReadInt64() -> long -MessagePack.MessagePackReader.ReadMapHeader() -> int -MessagePack.MessagePackReader.ReadNil() -> MessagePack.Nil -MessagePack.MessagePackReader.ReadRaw() -> System.Buffers.ReadOnlySequence -MessagePack.MessagePackReader.ReadRaw(long length) -> System.Buffers.ReadOnlySequence -MessagePack.MessagePackReader.ReadSByte() -> sbyte -MessagePack.MessagePackReader.ReadSingle() -> float -MessagePack.MessagePackReader.ReadString() -> string -MessagePack.MessagePackReader.ReadStringSequence() -> System.Buffers.ReadOnlySequence? -MessagePack.MessagePackReader.ReadUInt16() -> ushort -MessagePack.MessagePackReader.ReadUInt32() -> uint -MessagePack.MessagePackReader.ReadUInt64() -> ulong -MessagePack.MessagePackReader.Sequence.get -> System.Buffers.ReadOnlySequence -MessagePack.MessagePackReader.Skip() -> void -MessagePack.MessagePackReader.TryReadNil() -> bool -MessagePack.MessagePackReader.TryReadStringSpan(out System.ReadOnlySpan span) -> bool -MessagePack.MessagePackSerializationException -MessagePack.MessagePackSerializationException.MessagePackSerializationException() -> void -MessagePack.MessagePackSerializationException.MessagePackSerializationException(System.Runtime.Serialization.SerializationInfo info, System.Runtime.Serialization.StreamingContext context) -> void -MessagePack.MessagePackSerializationException.MessagePackSerializationException(string message) -> void -MessagePack.MessagePackSerializationException.MessagePackSerializationException(string message, System.Exception inner) -> void -MessagePack.MessagePackSerializer -MessagePack.MessagePackSerializer.Typeless -MessagePack.MessagePackSerializerOptions -MessagePack.MessagePackSerializerOptions.AllowAssemblyVersionMismatch.get -> bool -MessagePack.MessagePackSerializerOptions.Compression.get -> MessagePack.MessagePackCompression -MessagePack.MessagePackSerializerOptions.MessagePackSerializerOptions(MessagePack.IFormatterResolver resolver) -> void -MessagePack.MessagePackSerializerOptions.MessagePackSerializerOptions(MessagePack.MessagePackSerializerOptions copyFrom) -> void -MessagePack.MessagePackSerializerOptions.OldSpec.get -> bool? -MessagePack.MessagePackSerializerOptions.OmitAssemblyVersion.get -> bool -MessagePack.MessagePackSerializerOptions.Resolver.get -> MessagePack.IFormatterResolver -MessagePack.MessagePackSerializerOptions.WithAllowAssemblyVersionMismatch(bool allowAssemblyVersionMismatch) -> MessagePack.MessagePackSerializerOptions -MessagePack.MessagePackSerializerOptions.WithCompression(MessagePack.MessagePackCompression compression) -> MessagePack.MessagePackSerializerOptions -MessagePack.MessagePackSerializerOptions.WithOldSpec(bool? oldSpec = true) -> MessagePack.MessagePackSerializerOptions -MessagePack.MessagePackSerializerOptions.WithOmitAssemblyVersion(bool omitAssemblyVersion) -> MessagePack.MessagePackSerializerOptions -MessagePack.MessagePackSerializerOptions.WithResolver(MessagePack.IFormatterResolver resolver) -> MessagePack.MessagePackSerializerOptions -MessagePack.MessagePackStreamReader -MessagePack.MessagePackStreamReader.Dispose() -> void -MessagePack.MessagePackStreamReader.MessagePackStreamReader(System.IO.Stream stream) -> void -MessagePack.MessagePackStreamReader.ReadAsync(System.Threading.CancellationToken cancellationToken) -> System.Threading.Tasks.ValueTask?> -MessagePack.MessagePackStreamReader.RemainingBytes.get -> System.Buffers.ReadOnlySequence -MessagePack.MessagePackType -MessagePack.MessagePackType.Array = 7 -> MessagePack.MessagePackType -MessagePack.MessagePackType.Binary = 6 -> MessagePack.MessagePackType -MessagePack.MessagePackType.Boolean = 3 -> MessagePack.MessagePackType -MessagePack.MessagePackType.Extension = 9 -> MessagePack.MessagePackType -MessagePack.MessagePackType.Float = 4 -> MessagePack.MessagePackType -MessagePack.MessagePackType.Integer = 1 -> MessagePack.MessagePackType -MessagePack.MessagePackType.Map = 8 -> MessagePack.MessagePackType -MessagePack.MessagePackType.Nil = 2 -> MessagePack.MessagePackType -MessagePack.MessagePackType.String = 5 -> MessagePack.MessagePackType -MessagePack.MessagePackType.Unknown = 0 -> MessagePack.MessagePackType -MessagePack.MessagePackWriter -MessagePack.MessagePackWriter.Advance(int length) -> void -MessagePack.MessagePackWriter.CancellationToken.get -> System.Threading.CancellationToken -MessagePack.MessagePackWriter.CancellationToken.set -> void -MessagePack.MessagePackWriter.Clone(System.Buffers.IBufferWriter writer) -> MessagePack.MessagePackWriter -MessagePack.MessagePackWriter.Flush() -> void -MessagePack.MessagePackWriter.GetSpan(int length) -> System.Span -MessagePack.MessagePackWriter.MessagePackWriter(System.Buffers.IBufferWriter writer) -> void -MessagePack.MessagePackWriter.OldSpec.get -> bool -MessagePack.MessagePackWriter.OldSpec.set -> void -MessagePack.MessagePackWriter.Write(System.DateTime dateTime) -> void -MessagePack.MessagePackWriter.Write(System.ReadOnlySpan src) -> void -MessagePack.MessagePackWriter.Write(System.ReadOnlySpan value) -> void -MessagePack.MessagePackWriter.Write(bool value) -> void -MessagePack.MessagePackWriter.Write(byte value) -> void -MessagePack.MessagePackWriter.Write(byte[] src) -> void -MessagePack.MessagePackWriter.Write(char value) -> void -MessagePack.MessagePackWriter.Write(double value) -> void -MessagePack.MessagePackWriter.Write(float value) -> void -MessagePack.MessagePackWriter.Write(in System.Buffers.ReadOnlySequence src) -> void -MessagePack.MessagePackWriter.Write(int value) -> void -MessagePack.MessagePackWriter.Write(long value) -> void -MessagePack.MessagePackWriter.Write(sbyte value) -> void -MessagePack.MessagePackWriter.Write(short value) -> void -MessagePack.MessagePackWriter.Write(string value) -> void -MessagePack.MessagePackWriter.Write(uint value) -> void -MessagePack.MessagePackWriter.Write(ulong value) -> void -MessagePack.MessagePackWriter.Write(ushort value) -> void -MessagePack.MessagePackWriter.WriteArrayHeader(int count) -> void -MessagePack.MessagePackWriter.WriteArrayHeader(uint count) -> void -MessagePack.MessagePackWriter.WriteExtensionFormat(MessagePack.ExtensionResult extensionData) -> void -MessagePack.MessagePackWriter.WriteExtensionFormatHeader(MessagePack.ExtensionHeader extensionHeader) -> void -MessagePack.MessagePackWriter.WriteInt16(short value) -> void -MessagePack.MessagePackWriter.WriteInt32(int value) -> void -MessagePack.MessagePackWriter.WriteInt64(long value) -> void -MessagePack.MessagePackWriter.WriteInt8(sbyte value) -> void -MessagePack.MessagePackWriter.WriteMapHeader(int count) -> void -MessagePack.MessagePackWriter.WriteMapHeader(uint count) -> void -MessagePack.MessagePackWriter.WriteNil() -> void -MessagePack.MessagePackWriter.WriteRaw(System.ReadOnlySpan rawMessagePackBlock) -> void -MessagePack.MessagePackWriter.WriteRaw(in System.Buffers.ReadOnlySequence rawMessagePackBlock) -> void -MessagePack.MessagePackWriter.WriteString(System.ReadOnlySpan utf8stringBytes) -> void -MessagePack.MessagePackWriter.WriteString(in System.Buffers.ReadOnlySequence utf8stringBytes) -> void -MessagePack.MessagePackWriter.WriteUInt16(ushort value) -> void -MessagePack.MessagePackWriter.WriteUInt32(uint value) -> void -MessagePack.MessagePackWriter.WriteUInt64(ulong value) -> void -MessagePack.MessagePackWriter.WriteUInt8(byte value) -> void -MessagePack.Nil -MessagePack.Nil.Equals(MessagePack.Nil other) -> bool -MessagePack.Nil.Nil() -> void -MessagePack.ReservedMessagePackExtensionTypeCode -MessagePack.Resolvers.AttributeFormatterResolver -MessagePack.Resolvers.AttributeFormatterResolver.GetFormatter() -> MessagePack.Formatters.IMessagePackFormatter -MessagePack.Resolvers.BuiltinResolver -MessagePack.Resolvers.BuiltinResolver.GetFormatter() -> MessagePack.Formatters.IMessagePackFormatter -MessagePack.Resolvers.CompositeResolver -MessagePack.Resolvers.ContractlessStandardResolver -MessagePack.Resolvers.ContractlessStandardResolver.GetFormatter() -> MessagePack.Formatters.IMessagePackFormatter -MessagePack.Resolvers.ContractlessStandardResolverAllowPrivate -MessagePack.Resolvers.ContractlessStandardResolverAllowPrivate.GetFormatter() -> MessagePack.Formatters.IMessagePackFormatter -MessagePack.Resolvers.DynamicContractlessObjectResolver -MessagePack.Resolvers.DynamicContractlessObjectResolver.GetFormatter() -> MessagePack.Formatters.IMessagePackFormatter -MessagePack.Resolvers.DynamicContractlessObjectResolverAllowPrivate -MessagePack.Resolvers.DynamicContractlessObjectResolverAllowPrivate.DynamicContractlessObjectResolverAllowPrivate() -> void -MessagePack.Resolvers.DynamicContractlessObjectResolverAllowPrivate.GetFormatter() -> MessagePack.Formatters.IMessagePackFormatter -MessagePack.Resolvers.DynamicEnumAsStringResolver -MessagePack.Resolvers.DynamicEnumAsStringResolver.GetFormatter() -> MessagePack.Formatters.IMessagePackFormatter -MessagePack.Resolvers.DynamicEnumResolver -MessagePack.Resolvers.DynamicEnumResolver.GetFormatter() -> MessagePack.Formatters.IMessagePackFormatter -MessagePack.Resolvers.DynamicGenericResolver -MessagePack.Resolvers.DynamicGenericResolver.GetFormatter() -> MessagePack.Formatters.IMessagePackFormatter -MessagePack.Resolvers.DynamicObjectResolver -MessagePack.Resolvers.DynamicObjectResolver.GetFormatter() -> MessagePack.Formatters.IMessagePackFormatter -MessagePack.Resolvers.DynamicObjectResolverAllowPrivate -MessagePack.Resolvers.DynamicObjectResolverAllowPrivate.GetFormatter() -> MessagePack.Formatters.IMessagePackFormatter -MessagePack.Resolvers.DynamicUnionResolver -MessagePack.Resolvers.DynamicUnionResolver.GetFormatter() -> MessagePack.Formatters.IMessagePackFormatter -MessagePack.Resolvers.NativeDateTimeResolver -MessagePack.Resolvers.NativeDateTimeResolver.GetFormatter() -> MessagePack.Formatters.IMessagePackFormatter -MessagePack.Resolvers.NativeDecimalResolver -MessagePack.Resolvers.NativeDecimalResolver.GetFormatter() -> MessagePack.Formatters.IMessagePackFormatter -MessagePack.Resolvers.NativeGuidResolver -MessagePack.Resolvers.NativeGuidResolver.GetFormatter() -> MessagePack.Formatters.IMessagePackFormatter -MessagePack.Resolvers.PrimitiveObjectResolver -MessagePack.Resolvers.PrimitiveObjectResolver.GetFormatter() -> MessagePack.Formatters.IMessagePackFormatter -MessagePack.Resolvers.StandardResolver -MessagePack.Resolvers.StandardResolver.GetFormatter() -> MessagePack.Formatters.IMessagePackFormatter -MessagePack.Resolvers.StandardResolverAllowPrivate -MessagePack.Resolvers.StandardResolverAllowPrivate.GetFormatter() -> MessagePack.Formatters.IMessagePackFormatter -MessagePack.Resolvers.StaticCompositeResolver -MessagePack.Resolvers.StaticCompositeResolver.GetFormatter() -> MessagePack.Formatters.IMessagePackFormatter -MessagePack.Resolvers.StaticCompositeResolver.Register(System.Collections.Generic.IReadOnlyList formatters, System.Collections.Generic.IReadOnlyList resolvers) -> void -MessagePack.Resolvers.StaticCompositeResolver.Register(params MessagePack.Formatters.IMessagePackFormatter[] formatters) -> void -MessagePack.Resolvers.StaticCompositeResolver.Register(params MessagePack.IFormatterResolver[] resolvers) -> void -MessagePack.Resolvers.TypelessContractlessStandardResolver -MessagePack.Resolvers.TypelessContractlessStandardResolver.GetFormatter() -> MessagePack.Formatters.IMessagePackFormatter -MessagePack.Resolvers.TypelessContractlessStandardResolver.TypelessContractlessStandardResolver() -> void -MessagePack.Resolvers.TypelessObjectResolver -MessagePack.Resolvers.TypelessObjectResolver.GetFormatter() -> MessagePack.Formatters.IMessagePackFormatter -MessagePack.TinyJsonException -MessagePack.TinyJsonException.TinyJsonException(string message) -> void -abstract MessagePack.Formatters.CollectionFormatterBase.Add(TIntermediate collection, int index, TElement value, MessagePack.MessagePackSerializerOptions options) -> void -abstract MessagePack.Formatters.CollectionFormatterBase.Complete(TIntermediate intermediateCollection) -> TCollection -abstract MessagePack.Formatters.CollectionFormatterBase.Create(int count, MessagePack.MessagePackSerializerOptions options) -> TIntermediate -abstract MessagePack.Formatters.CollectionFormatterBase.GetSourceEnumerator(TCollection source) -> TEnumerator -abstract MessagePack.Formatters.DictionaryFormatterBase.Add(TIntermediate collection, int index, TKey key, TValue value, MessagePack.MessagePackSerializerOptions options) -> void -abstract MessagePack.Formatters.DictionaryFormatterBase.Complete(TIntermediate intermediateCollection) -> TDictionary -abstract MessagePack.Formatters.DictionaryFormatterBase.Create(int count, MessagePack.MessagePackSerializerOptions options) -> TIntermediate -abstract MessagePack.Formatters.DictionaryFormatterBase.GetSourceEnumerator(TDictionary source) -> TEnumerator -const MessagePack.MessagePackCode.Array16 = 220 -> byte -const MessagePack.MessagePackCode.Array32 = 221 -> byte -const MessagePack.MessagePackCode.Bin16 = 197 -> byte -const MessagePack.MessagePackCode.Bin32 = 198 -> byte -const MessagePack.MessagePackCode.Bin8 = 196 -> byte -const MessagePack.MessagePackCode.Ext16 = 200 -> byte -const MessagePack.MessagePackCode.Ext32 = 201 -> byte -const MessagePack.MessagePackCode.Ext8 = 199 -> byte -const MessagePack.MessagePackCode.False = 194 -> byte -const MessagePack.MessagePackCode.FixExt1 = 212 -> byte -const MessagePack.MessagePackCode.FixExt16 = 216 -> byte -const MessagePack.MessagePackCode.FixExt2 = 213 -> byte -const MessagePack.MessagePackCode.FixExt4 = 214 -> byte -const MessagePack.MessagePackCode.FixExt8 = 215 -> byte -const MessagePack.MessagePackCode.Float32 = 202 -> byte -const MessagePack.MessagePackCode.Float64 = 203 -> byte -const MessagePack.MessagePackCode.Int16 = 209 -> byte -const MessagePack.MessagePackCode.Int32 = 210 -> byte -const MessagePack.MessagePackCode.Int64 = 211 -> byte -const MessagePack.MessagePackCode.Int8 = 208 -> byte -const MessagePack.MessagePackCode.Map16 = 222 -> byte -const MessagePack.MessagePackCode.Map32 = 223 -> byte -const MessagePack.MessagePackCode.MaxFixArray = 159 -> byte -const MessagePack.MessagePackCode.MaxFixInt = 127 -> byte -const MessagePack.MessagePackCode.MaxFixMap = 143 -> byte -const MessagePack.MessagePackCode.MaxFixStr = 191 -> byte -const MessagePack.MessagePackCode.MaxNegativeFixInt = 255 -> byte -const MessagePack.MessagePackCode.MinFixArray = 144 -> byte -const MessagePack.MessagePackCode.MinFixInt = 0 -> byte -const MessagePack.MessagePackCode.MinFixMap = 128 -> byte -const MessagePack.MessagePackCode.MinFixStr = 160 -> byte -const MessagePack.MessagePackCode.MinNegativeFixInt = 224 -> byte -const MessagePack.MessagePackCode.NeverUsed = 193 -> byte -const MessagePack.MessagePackCode.Nil = 192 -> byte -const MessagePack.MessagePackCode.Str16 = 218 -> byte -const MessagePack.MessagePackCode.Str32 = 219 -> byte -const MessagePack.MessagePackCode.Str8 = 217 -> byte -const MessagePack.MessagePackCode.True = 195 -> byte -const MessagePack.MessagePackCode.UInt16 = 205 -> byte -const MessagePack.MessagePackCode.UInt32 = 206 -> byte -const MessagePack.MessagePackCode.UInt64 = 207 -> byte -const MessagePack.MessagePackCode.UInt8 = 204 -> byte -const MessagePack.MessagePackRange.MaxFixArrayCount = 15 -> int -const MessagePack.MessagePackRange.MaxFixMapCount = 15 -> int -const MessagePack.MessagePackRange.MaxFixNegativeInt = -1 -> int -const MessagePack.MessagePackRange.MaxFixPositiveInt = 127 -> int -const MessagePack.MessagePackRange.MaxFixStringLength = 31 -> int -const MessagePack.MessagePackRange.MinFixNegativeInt = -32 -> int -const MessagePack.MessagePackRange.MinFixStringLength = 0 -> int -const MessagePack.ReservedMessagePackExtensionTypeCode.DateTime = -1 -> sbyte -override MessagePack.Formatters.CollectionFormatterBase.GetSourceEnumerator(TCollection source) -> System.Collections.Generic.IEnumerator -override MessagePack.Formatters.DictionaryFormatterBase.Complete(TDictionary intermediateCollection) -> TDictionary -override MessagePack.Formatters.DictionaryFormatterBase.GetSourceEnumerator(TDictionary source) -> System.Collections.Generic.IEnumerator> -override MessagePack.Internal.AutomataDictionary.ToString() -> string -override MessagePack.Nil.Equals(object obj) -> bool -override MessagePack.Nil.GetHashCode() -> int -override MessagePack.Nil.ToString() -> string -override sealed MessagePack.Formatters.CollectionFormatterBase.Complete(TCollection intermediateCollection) -> TCollection -static MessagePack.FormatterResolverExtensions.GetFormatterDynamic(this MessagePack.IFormatterResolver resolver, System.Type type) -> object -static MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(this MessagePack.IFormatterResolver resolver) -> MessagePack.Formatters.IMessagePackFormatter -static MessagePack.Formatters.PrimitiveObjectFormatter.IsSupportedType(System.Type type, System.Reflection.TypeInfo typeInfo, object value) -> bool -static MessagePack.Internal.AutomataKeyGen.GetKey(ref System.ReadOnlySpan span) -> ulong -static MessagePack.Internal.CodeGenHelpers.GetArrayFromNullableSequence(in System.Buffers.ReadOnlySequence? sequence) -> byte[] -static MessagePack.Internal.CodeGenHelpers.GetEncodedStringBytes(string value) -> byte[] -static MessagePack.Internal.CodeGenHelpers.GetSpanFromSequence(in System.Buffers.ReadOnlySequence sequence) -> System.ReadOnlySpan -static MessagePack.Internal.CodeGenHelpers.ReadStringSpan(ref MessagePack.MessagePackReader reader) -> System.ReadOnlySpan -static MessagePack.Internal.UnsafeMemory32.WriteRaw1(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void -static MessagePack.Internal.UnsafeMemory32.WriteRaw10(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void -static MessagePack.Internal.UnsafeMemory32.WriteRaw11(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void -static MessagePack.Internal.UnsafeMemory32.WriteRaw12(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void -static MessagePack.Internal.UnsafeMemory32.WriteRaw13(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void -static MessagePack.Internal.UnsafeMemory32.WriteRaw14(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void -static MessagePack.Internal.UnsafeMemory32.WriteRaw15(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void -static MessagePack.Internal.UnsafeMemory32.WriteRaw16(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void -static MessagePack.Internal.UnsafeMemory32.WriteRaw17(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void -static MessagePack.Internal.UnsafeMemory32.WriteRaw18(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void -static MessagePack.Internal.UnsafeMemory32.WriteRaw19(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void -static MessagePack.Internal.UnsafeMemory32.WriteRaw2(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void -static MessagePack.Internal.UnsafeMemory32.WriteRaw20(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void -static MessagePack.Internal.UnsafeMemory32.WriteRaw21(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void -static MessagePack.Internal.UnsafeMemory32.WriteRaw22(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void -static MessagePack.Internal.UnsafeMemory32.WriteRaw23(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void -static MessagePack.Internal.UnsafeMemory32.WriteRaw24(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void -static MessagePack.Internal.UnsafeMemory32.WriteRaw25(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void -static MessagePack.Internal.UnsafeMemory32.WriteRaw26(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void -static MessagePack.Internal.UnsafeMemory32.WriteRaw27(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void -static MessagePack.Internal.UnsafeMemory32.WriteRaw28(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void -static MessagePack.Internal.UnsafeMemory32.WriteRaw29(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void -static MessagePack.Internal.UnsafeMemory32.WriteRaw3(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void -static MessagePack.Internal.UnsafeMemory32.WriteRaw30(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void -static MessagePack.Internal.UnsafeMemory32.WriteRaw31(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void -static MessagePack.Internal.UnsafeMemory32.WriteRaw4(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void -static MessagePack.Internal.UnsafeMemory32.WriteRaw5(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void -static MessagePack.Internal.UnsafeMemory32.WriteRaw6(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void -static MessagePack.Internal.UnsafeMemory32.WriteRaw7(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void -static MessagePack.Internal.UnsafeMemory32.WriteRaw8(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void -static MessagePack.Internal.UnsafeMemory32.WriteRaw9(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void -static MessagePack.Internal.UnsafeMemory64.WriteRaw1(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void -static MessagePack.Internal.UnsafeMemory64.WriteRaw10(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void -static MessagePack.Internal.UnsafeMemory64.WriteRaw11(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void -static MessagePack.Internal.UnsafeMemory64.WriteRaw12(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void -static MessagePack.Internal.UnsafeMemory64.WriteRaw13(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void -static MessagePack.Internal.UnsafeMemory64.WriteRaw14(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void -static MessagePack.Internal.UnsafeMemory64.WriteRaw15(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void -static MessagePack.Internal.UnsafeMemory64.WriteRaw16(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void -static MessagePack.Internal.UnsafeMemory64.WriteRaw17(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void -static MessagePack.Internal.UnsafeMemory64.WriteRaw18(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void -static MessagePack.Internal.UnsafeMemory64.WriteRaw19(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void -static MessagePack.Internal.UnsafeMemory64.WriteRaw2(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void -static MessagePack.Internal.UnsafeMemory64.WriteRaw20(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void -static MessagePack.Internal.UnsafeMemory64.WriteRaw21(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void -static MessagePack.Internal.UnsafeMemory64.WriteRaw22(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void -static MessagePack.Internal.UnsafeMemory64.WriteRaw23(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void -static MessagePack.Internal.UnsafeMemory64.WriteRaw24(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void -static MessagePack.Internal.UnsafeMemory64.WriteRaw25(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void -static MessagePack.Internal.UnsafeMemory64.WriteRaw26(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void -static MessagePack.Internal.UnsafeMemory64.WriteRaw27(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void -static MessagePack.Internal.UnsafeMemory64.WriteRaw28(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void -static MessagePack.Internal.UnsafeMemory64.WriteRaw29(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void -static MessagePack.Internal.UnsafeMemory64.WriteRaw3(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void -static MessagePack.Internal.UnsafeMemory64.WriteRaw30(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void -static MessagePack.Internal.UnsafeMemory64.WriteRaw31(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void -static MessagePack.Internal.UnsafeMemory64.WriteRaw4(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void -static MessagePack.Internal.UnsafeMemory64.WriteRaw5(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void -static MessagePack.Internal.UnsafeMemory64.WriteRaw6(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void -static MessagePack.Internal.UnsafeMemory64.WriteRaw7(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void -static MessagePack.Internal.UnsafeMemory64.WriteRaw8(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void -static MessagePack.Internal.UnsafeMemory64.WriteRaw9(ref MessagePack.MessagePackWriter writer, System.ReadOnlySpan src) -> void -static MessagePack.MessagePackCode.ToFormatName(byte code) -> string -static MessagePack.MessagePackCode.ToMessagePackType(byte code) -> MessagePack.MessagePackType -static MessagePack.MessagePackSerializer.ConvertFromJson(System.IO.TextReader reader, ref MessagePack.MessagePackWriter writer, MessagePack.MessagePackSerializerOptions options = null) -> void -static MessagePack.MessagePackSerializer.ConvertFromJson(string str, MessagePack.MessagePackSerializerOptions options = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> byte[] -static MessagePack.MessagePackSerializer.ConvertFromJson(string str, ref MessagePack.MessagePackWriter writer, MessagePack.MessagePackSerializerOptions options = null) -> void -static MessagePack.MessagePackSerializer.ConvertToJson(System.ReadOnlyMemory bytes, MessagePack.MessagePackSerializerOptions options = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> string -static MessagePack.MessagePackSerializer.ConvertToJson(in System.Buffers.ReadOnlySequence bytes, MessagePack.MessagePackSerializerOptions options = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> string -static MessagePack.MessagePackSerializer.ConvertToJson(ref MessagePack.MessagePackReader reader, System.IO.TextWriter jsonWriter, MessagePack.MessagePackSerializerOptions options = null) -> void -static MessagePack.MessagePackSerializer.DefaultOptions.get -> MessagePack.MessagePackSerializerOptions -static MessagePack.MessagePackSerializer.DefaultOptions.set -> void -static MessagePack.MessagePackSerializer.Deserialize(System.Type type, System.Buffers.ReadOnlySequence bytes, MessagePack.MessagePackSerializerOptions options = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> object -static MessagePack.MessagePackSerializer.Deserialize(System.Type type, System.IO.Stream stream, MessagePack.MessagePackSerializerOptions options = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> object -static MessagePack.MessagePackSerializer.Deserialize(System.Type type, System.ReadOnlyMemory bytes, MessagePack.MessagePackSerializerOptions options = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> object -static MessagePack.MessagePackSerializer.Deserialize(System.Type type, ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options = null) -> object -static MessagePack.MessagePackSerializer.Deserialize(System.IO.Stream stream, MessagePack.MessagePackSerializerOptions options = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> T -static MessagePack.MessagePackSerializer.Deserialize(System.ReadOnlyMemory buffer, MessagePack.MessagePackSerializerOptions options = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> T -static MessagePack.MessagePackSerializer.Deserialize(System.ReadOnlyMemory buffer, MessagePack.MessagePackSerializerOptions options, out int bytesRead, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> T -static MessagePack.MessagePackSerializer.Deserialize(System.ReadOnlyMemory buffer, out int bytesRead, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> T -static MessagePack.MessagePackSerializer.Deserialize(in System.Buffers.ReadOnlySequence byteSequence, MessagePack.MessagePackSerializerOptions options = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> T -static MessagePack.MessagePackSerializer.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options = null) -> T -static MessagePack.MessagePackSerializer.DeserializeAsync(System.Type type, System.IO.Stream stream, MessagePack.MessagePackSerializerOptions options = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.ValueTask -static MessagePack.MessagePackSerializer.DeserializeAsync(System.IO.Stream stream, MessagePack.MessagePackSerializerOptions options = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.ValueTask -static MessagePack.MessagePackSerializer.Serialize(System.Type type, System.Buffers.IBufferWriter writer, object obj, MessagePack.MessagePackSerializerOptions options = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> void -static MessagePack.MessagePackSerializer.Serialize(System.Type type, System.IO.Stream stream, object obj, MessagePack.MessagePackSerializerOptions options = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> void -static MessagePack.MessagePackSerializer.Serialize(System.Type type, object obj, MessagePack.MessagePackSerializerOptions options = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> byte[] -static MessagePack.MessagePackSerializer.Serialize(System.Type type, ref MessagePack.MessagePackWriter writer, object obj, MessagePack.MessagePackSerializerOptions options = null) -> void -static MessagePack.MessagePackSerializer.Serialize(System.Buffers.IBufferWriter writer, T value, MessagePack.MessagePackSerializerOptions options = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> void -static MessagePack.MessagePackSerializer.Serialize(System.IO.Stream stream, T value, MessagePack.MessagePackSerializerOptions options = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> void -static MessagePack.MessagePackSerializer.Serialize(T value, MessagePack.MessagePackSerializerOptions options = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> byte[] -static MessagePack.MessagePackSerializer.Serialize(ref MessagePack.MessagePackWriter writer, T value, MessagePack.MessagePackSerializerOptions options = null) -> void -static MessagePack.MessagePackSerializer.SerializeAsync(System.Type type, System.IO.Stream stream, object obj, MessagePack.MessagePackSerializerOptions options = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task -static MessagePack.MessagePackSerializer.SerializeAsync(System.IO.Stream stream, T value, MessagePack.MessagePackSerializerOptions options = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task -static MessagePack.MessagePackSerializer.SerializeToJson(System.IO.TextWriter textWriter, T obj, MessagePack.MessagePackSerializerOptions options = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> void -static MessagePack.MessagePackSerializer.SerializeToJson(T obj, MessagePack.MessagePackSerializerOptions options = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> string -static MessagePack.MessagePackSerializer.Typeless.DefaultOptions.get -> MessagePack.MessagePackSerializerOptions -static MessagePack.MessagePackSerializer.Typeless.DefaultOptions.set -> void -static MessagePack.MessagePackSerializer.Typeless.Deserialize(System.IO.Stream stream, MessagePack.MessagePackSerializerOptions options = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> object -static MessagePack.MessagePackSerializer.Typeless.Deserialize(System.Memory bytes, MessagePack.MessagePackSerializerOptions options = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> object -static MessagePack.MessagePackSerializer.Typeless.Deserialize(in System.Buffers.ReadOnlySequence byteSequence, MessagePack.MessagePackSerializerOptions options = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> object -static MessagePack.MessagePackSerializer.Typeless.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options = null) -> object -static MessagePack.MessagePackSerializer.Typeless.DeserializeAsync(System.IO.Stream stream, MessagePack.MessagePackSerializerOptions options = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.ValueTask -static MessagePack.MessagePackSerializer.Typeless.Serialize(System.Buffers.IBufferWriter writer, object obj, MessagePack.MessagePackSerializerOptions options = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> void -static MessagePack.MessagePackSerializer.Typeless.Serialize(System.IO.Stream stream, object obj, MessagePack.MessagePackSerializerOptions options = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> void -static MessagePack.MessagePackSerializer.Typeless.Serialize(object obj, MessagePack.MessagePackSerializerOptions options = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> byte[] -static MessagePack.MessagePackSerializer.Typeless.Serialize(ref MessagePack.MessagePackWriter writer, object obj, MessagePack.MessagePackSerializerOptions options = null) -> void -static MessagePack.MessagePackSerializer.Typeless.SerializeAsync(System.IO.Stream stream, object obj, MessagePack.MessagePackSerializerOptions options = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task -static MessagePack.MessagePackSerializerOptions.Standard.get -> MessagePack.MessagePackSerializerOptions -static MessagePack.Resolvers.CompositeResolver.Create(System.Collections.Generic.IReadOnlyList formatters, System.Collections.Generic.IReadOnlyList resolvers) -> MessagePack.IFormatterResolver -static MessagePack.Resolvers.CompositeResolver.Create(params MessagePack.Formatters.IMessagePackFormatter[] formatters) -> MessagePack.IFormatterResolver -static MessagePack.Resolvers.CompositeResolver.Create(params MessagePack.IFormatterResolver[] resolvers) -> MessagePack.IFormatterResolver -static readonly MessagePack.Formatters.BigIntegerFormatter.Instance -> MessagePack.Formatters.IMessagePackFormatter -static readonly MessagePack.Formatters.BitArrayFormatter.Instance -> MessagePack.Formatters.IMessagePackFormatter -static readonly MessagePack.Formatters.BooleanArrayFormatter.Instance -> MessagePack.Formatters.BooleanArrayFormatter -static readonly MessagePack.Formatters.BooleanFormatter.Instance -> MessagePack.Formatters.BooleanFormatter -static readonly MessagePack.Formatters.ByteArrayFormatter.Instance -> MessagePack.Formatters.ByteArrayFormatter -static readonly MessagePack.Formatters.ByteArraySegmentFormatter.Instance -> MessagePack.Formatters.ByteArraySegmentFormatter -static readonly MessagePack.Formatters.ByteFormatter.Instance -> MessagePack.Formatters.ByteFormatter -static readonly MessagePack.Formatters.CharArrayFormatter.Instance -> MessagePack.Formatters.CharArrayFormatter -static readonly MessagePack.Formatters.CharFormatter.Instance -> MessagePack.Formatters.CharFormatter -static readonly MessagePack.Formatters.ComplexFormatter.Instance -> MessagePack.Formatters.IMessagePackFormatter -static readonly MessagePack.Formatters.DateTimeArrayFormatter.Instance -> MessagePack.Formatters.DateTimeArrayFormatter -static readonly MessagePack.Formatters.DateTimeFormatter.Instance -> MessagePack.Formatters.DateTimeFormatter -static readonly MessagePack.Formatters.DateTimeOffsetFormatter.Instance -> MessagePack.Formatters.IMessagePackFormatter -static readonly MessagePack.Formatters.DecimalFormatter.Instance -> MessagePack.Formatters.DecimalFormatter -static readonly MessagePack.Formatters.DoubleArrayFormatter.Instance -> MessagePack.Formatters.DoubleArrayFormatter -static readonly MessagePack.Formatters.DoubleFormatter.Instance -> MessagePack.Formatters.DoubleFormatter -static readonly MessagePack.Formatters.DynamicObjectTypeFallbackFormatter.Instance -> MessagePack.Formatters.IMessagePackFormatter -static readonly MessagePack.Formatters.ForceByteBlockFormatter.Instance -> MessagePack.Formatters.ForceByteBlockFormatter -static readonly MessagePack.Formatters.ForceInt16BlockArrayFormatter.Instance -> MessagePack.Formatters.ForceInt16BlockArrayFormatter -static readonly MessagePack.Formatters.ForceInt16BlockFormatter.Instance -> MessagePack.Formatters.ForceInt16BlockFormatter -static readonly MessagePack.Formatters.ForceInt32BlockArrayFormatter.Instance -> MessagePack.Formatters.ForceInt32BlockArrayFormatter -static readonly MessagePack.Formatters.ForceInt32BlockFormatter.Instance -> MessagePack.Formatters.ForceInt32BlockFormatter -static readonly MessagePack.Formatters.ForceInt64BlockArrayFormatter.Instance -> MessagePack.Formatters.ForceInt64BlockArrayFormatter -static readonly MessagePack.Formatters.ForceInt64BlockFormatter.Instance -> MessagePack.Formatters.ForceInt64BlockFormatter -static readonly MessagePack.Formatters.ForceSByteBlockArrayFormatter.Instance -> MessagePack.Formatters.ForceSByteBlockArrayFormatter -static readonly MessagePack.Formatters.ForceSByteBlockFormatter.Instance -> MessagePack.Formatters.ForceSByteBlockFormatter -static readonly MessagePack.Formatters.ForceUInt16BlockArrayFormatter.Instance -> MessagePack.Formatters.ForceUInt16BlockArrayFormatter -static readonly MessagePack.Formatters.ForceUInt16BlockFormatter.Instance -> MessagePack.Formatters.ForceUInt16BlockFormatter -static readonly MessagePack.Formatters.ForceUInt32BlockArrayFormatter.Instance -> MessagePack.Formatters.ForceUInt32BlockArrayFormatter -static readonly MessagePack.Formatters.ForceUInt32BlockFormatter.Instance -> MessagePack.Formatters.ForceUInt32BlockFormatter -static readonly MessagePack.Formatters.ForceUInt64BlockArrayFormatter.Instance -> MessagePack.Formatters.ForceUInt64BlockArrayFormatter -static readonly MessagePack.Formatters.ForceUInt64BlockFormatter.Instance -> MessagePack.Formatters.ForceUInt64BlockFormatter -static readonly MessagePack.Formatters.GuidFormatter.Instance -> MessagePack.Formatters.IMessagePackFormatter -static readonly MessagePack.Formatters.Int16ArrayFormatter.Instance -> MessagePack.Formatters.Int16ArrayFormatter -static readonly MessagePack.Formatters.Int16Formatter.Instance -> MessagePack.Formatters.Int16Formatter -static readonly MessagePack.Formatters.Int32ArrayFormatter.Instance -> MessagePack.Formatters.Int32ArrayFormatter -static readonly MessagePack.Formatters.Int32Formatter.Instance -> MessagePack.Formatters.Int32Formatter -static readonly MessagePack.Formatters.Int64ArrayFormatter.Instance -> MessagePack.Formatters.Int64ArrayFormatter -static readonly MessagePack.Formatters.Int64Formatter.Instance -> MessagePack.Formatters.Int64Formatter -static readonly MessagePack.Formatters.NativeDateTimeArrayFormatter.Instance -> MessagePack.Formatters.NativeDateTimeArrayFormatter -static readonly MessagePack.Formatters.NativeDateTimeFormatter.Instance -> MessagePack.Formatters.NativeDateTimeFormatter -static readonly MessagePack.Formatters.NativeDecimalFormatter.Instance -> MessagePack.Formatters.IMessagePackFormatter -static readonly MessagePack.Formatters.NativeGuidFormatter.Instance -> MessagePack.Formatters.IMessagePackFormatter -static readonly MessagePack.Formatters.NilFormatter.Instance -> MessagePack.Formatters.IMessagePackFormatter -static readonly MessagePack.Formatters.NonGenericInterfaceDictionaryFormatter.Instance -> MessagePack.Formatters.IMessagePackFormatter -static readonly MessagePack.Formatters.NonGenericInterfaceListFormatter.Instance -> MessagePack.Formatters.IMessagePackFormatter -static readonly MessagePack.Formatters.NullableBooleanFormatter.Instance -> MessagePack.Formatters.NullableBooleanFormatter -static readonly MessagePack.Formatters.NullableByteFormatter.Instance -> MessagePack.Formatters.NullableByteFormatter -static readonly MessagePack.Formatters.NullableCharFormatter.Instance -> MessagePack.Formatters.NullableCharFormatter -static readonly MessagePack.Formatters.NullableDateTimeFormatter.Instance -> MessagePack.Formatters.NullableDateTimeFormatter -static readonly MessagePack.Formatters.NullableDoubleFormatter.Instance -> MessagePack.Formatters.NullableDoubleFormatter -static readonly MessagePack.Formatters.NullableForceByteBlockFormatter.Instance -> MessagePack.Formatters.NullableForceByteBlockFormatter -static readonly MessagePack.Formatters.NullableForceInt16BlockFormatter.Instance -> MessagePack.Formatters.NullableForceInt16BlockFormatter -static readonly MessagePack.Formatters.NullableForceInt32BlockFormatter.Instance -> MessagePack.Formatters.NullableForceInt32BlockFormatter -static readonly MessagePack.Formatters.NullableForceInt64BlockFormatter.Instance -> MessagePack.Formatters.NullableForceInt64BlockFormatter -static readonly MessagePack.Formatters.NullableForceSByteBlockFormatter.Instance -> MessagePack.Formatters.NullableForceSByteBlockFormatter -static readonly MessagePack.Formatters.NullableForceUInt16BlockFormatter.Instance -> MessagePack.Formatters.NullableForceUInt16BlockFormatter -static readonly MessagePack.Formatters.NullableForceUInt32BlockFormatter.Instance -> MessagePack.Formatters.NullableForceUInt32BlockFormatter -static readonly MessagePack.Formatters.NullableForceUInt64BlockFormatter.Instance -> MessagePack.Formatters.NullableForceUInt64BlockFormatter -static readonly MessagePack.Formatters.NullableInt16Formatter.Instance -> MessagePack.Formatters.NullableInt16Formatter -static readonly MessagePack.Formatters.NullableInt32Formatter.Instance -> MessagePack.Formatters.NullableInt32Formatter -static readonly MessagePack.Formatters.NullableInt64Formatter.Instance -> MessagePack.Formatters.NullableInt64Formatter -static readonly MessagePack.Formatters.NullableNilFormatter.Instance -> MessagePack.Formatters.IMessagePackFormatter -static readonly MessagePack.Formatters.NullableSByteFormatter.Instance -> MessagePack.Formatters.NullableSByteFormatter -static readonly MessagePack.Formatters.NullableSingleFormatter.Instance -> MessagePack.Formatters.NullableSingleFormatter -static readonly MessagePack.Formatters.NullableStringArrayFormatter.Instance -> MessagePack.Formatters.NullableStringArrayFormatter -static readonly MessagePack.Formatters.NullableStringFormatter.Instance -> MessagePack.Formatters.NullableStringFormatter -static readonly MessagePack.Formatters.NullableUInt16Formatter.Instance -> MessagePack.Formatters.NullableUInt16Formatter -static readonly MessagePack.Formatters.NullableUInt32Formatter.Instance -> MessagePack.Formatters.NullableUInt32Formatter -static readonly MessagePack.Formatters.NullableUInt64Formatter.Instance -> MessagePack.Formatters.NullableUInt64Formatter -static readonly MessagePack.Formatters.PrimitiveObjectFormatter.Instance -> MessagePack.Formatters.IMessagePackFormatter -static readonly MessagePack.Formatters.SByteArrayFormatter.Instance -> MessagePack.Formatters.SByteArrayFormatter -static readonly MessagePack.Formatters.SByteFormatter.Instance -> MessagePack.Formatters.SByteFormatter -static readonly MessagePack.Formatters.SingleArrayFormatter.Instance -> MessagePack.Formatters.SingleArrayFormatter -static readonly MessagePack.Formatters.SingleFormatter.Instance -> MessagePack.Formatters.SingleFormatter -static readonly MessagePack.Formatters.StringBuilderFormatter.Instance -> MessagePack.Formatters.IMessagePackFormatter -static readonly MessagePack.Formatters.TimeSpanFormatter.Instance -> MessagePack.Formatters.IMessagePackFormatter -static readonly MessagePack.Formatters.TypelessFormatter.Instance -> MessagePack.Formatters.IMessagePackFormatter -static readonly MessagePack.Formatters.UInt16ArrayFormatter.Instance -> MessagePack.Formatters.UInt16ArrayFormatter -static readonly MessagePack.Formatters.UInt16Formatter.Instance -> MessagePack.Formatters.UInt16Formatter -static readonly MessagePack.Formatters.UInt32ArrayFormatter.Instance -> MessagePack.Formatters.UInt32ArrayFormatter -static readonly MessagePack.Formatters.UInt32Formatter.Instance -> MessagePack.Formatters.UInt32Formatter -static readonly MessagePack.Formatters.UInt64ArrayFormatter.Instance -> MessagePack.Formatters.UInt64ArrayFormatter -static readonly MessagePack.Formatters.UInt64Formatter.Instance -> MessagePack.Formatters.UInt64Formatter -static readonly MessagePack.Formatters.UriFormatter.Instance -> MessagePack.Formatters.IMessagePackFormatter -static readonly MessagePack.Formatters.VersionFormatter.Instance -> MessagePack.Formatters.IMessagePackFormatter -static readonly MessagePack.Internal.AutomataKeyGen.GetKeyMethod -> System.Reflection.MethodInfo -static readonly MessagePack.Internal.RuntimeTypeHandleEqualityComparer.Default -> System.Collections.Generic.IEqualityComparer -static readonly MessagePack.Internal.UnsafeMemory.Is32Bit -> bool -static readonly MessagePack.Nil.Default -> MessagePack.Nil -static readonly MessagePack.Resolvers.AttributeFormatterResolver.Instance -> MessagePack.Resolvers.AttributeFormatterResolver -static readonly MessagePack.Resolvers.BuiltinResolver.Instance -> MessagePack.Resolvers.BuiltinResolver -static readonly MessagePack.Resolvers.ContractlessStandardResolver.Instance -> MessagePack.Resolvers.ContractlessStandardResolver -static readonly MessagePack.Resolvers.ContractlessStandardResolver.Options -> MessagePack.MessagePackSerializerOptions -static readonly MessagePack.Resolvers.ContractlessStandardResolverAllowPrivate.Instance -> MessagePack.Resolvers.ContractlessStandardResolverAllowPrivate -static readonly MessagePack.Resolvers.ContractlessStandardResolverAllowPrivate.Options -> MessagePack.MessagePackSerializerOptions -static readonly MessagePack.Resolvers.DynamicContractlessObjectResolver.Instance -> MessagePack.Resolvers.DynamicContractlessObjectResolver -static readonly MessagePack.Resolvers.DynamicContractlessObjectResolverAllowPrivate.Instance -> MessagePack.Resolvers.DynamicContractlessObjectResolverAllowPrivate -static readonly MessagePack.Resolvers.DynamicEnumAsStringResolver.Instance -> MessagePack.Resolvers.DynamicEnumAsStringResolver -static readonly MessagePack.Resolvers.DynamicEnumAsStringResolver.Options -> MessagePack.MessagePackSerializerOptions -static readonly MessagePack.Resolvers.DynamicEnumResolver.Instance -> MessagePack.Resolvers.DynamicEnumResolver -static readonly MessagePack.Resolvers.DynamicGenericResolver.Instance -> MessagePack.Resolvers.DynamicGenericResolver -static readonly MessagePack.Resolvers.DynamicObjectResolver.Instance -> MessagePack.Resolvers.DynamicObjectResolver -static readonly MessagePack.Resolvers.DynamicObjectResolver.Options -> MessagePack.MessagePackSerializerOptions -static readonly MessagePack.Resolvers.DynamicObjectResolverAllowPrivate.Instance -> MessagePack.Resolvers.DynamicObjectResolverAllowPrivate -static readonly MessagePack.Resolvers.DynamicUnionResolver.Instance -> MessagePack.Resolvers.DynamicUnionResolver -static readonly MessagePack.Resolvers.DynamicUnionResolver.Options -> MessagePack.MessagePackSerializerOptions -static readonly MessagePack.Resolvers.NativeDateTimeResolver.Instance -> MessagePack.Resolvers.NativeDateTimeResolver -static readonly MessagePack.Resolvers.NativeDateTimeResolver.Options -> MessagePack.MessagePackSerializerOptions -static readonly MessagePack.Resolvers.NativeDecimalResolver.Instance -> MessagePack.Resolvers.NativeDecimalResolver -static readonly MessagePack.Resolvers.NativeGuidResolver.Instance -> MessagePack.Resolvers.NativeGuidResolver -static readonly MessagePack.Resolvers.PrimitiveObjectResolver.Instance -> MessagePack.Resolvers.PrimitiveObjectResolver -static readonly MessagePack.Resolvers.PrimitiveObjectResolver.Options -> MessagePack.MessagePackSerializerOptions -static readonly MessagePack.Resolvers.StandardResolver.Instance -> MessagePack.Resolvers.StandardResolver -static readonly MessagePack.Resolvers.StandardResolver.Options -> MessagePack.MessagePackSerializerOptions -static readonly MessagePack.Resolvers.StandardResolverAllowPrivate.Instance -> MessagePack.Resolvers.StandardResolverAllowPrivate -static readonly MessagePack.Resolvers.StandardResolverAllowPrivate.Options -> MessagePack.MessagePackSerializerOptions -static readonly MessagePack.Resolvers.StaticCompositeResolver.Instance -> MessagePack.Resolvers.StaticCompositeResolver -static readonly MessagePack.Resolvers.TypelessContractlessStandardResolver.Instance -> MessagePack.Resolvers.TypelessContractlessStandardResolver -static readonly MessagePack.Resolvers.TypelessContractlessStandardResolver.Options -> MessagePack.MessagePackSerializerOptions -static readonly MessagePack.Resolvers.TypelessObjectResolver.Instance -> MessagePack.IFormatterResolver -virtual MessagePack.Formatters.CollectionFormatterBase.GetCount(TCollection sequence) -> int? -virtual MessagePack.MessagePackSerializerOptions.Clone() -> MessagePack.MessagePackSerializerOptions -virtual MessagePack.MessagePackSerializerOptions.LoadType(string typeName) -> System.Type -virtual MessagePack.MessagePackSerializerOptions.ThrowIfDeserializingTypeIsDisallowed(System.Type type) -> void -MessagePack.ExtensionHeader.Equals(MessagePack.ExtensionHeader other) -> bool -MessagePack.Formatters.InterfaceCollectionFormatter2 -MessagePack.Formatters.InterfaceCollectionFormatter2.InterfaceCollectionFormatter2() -> void -MessagePack.Formatters.InterfaceListFormatter2 -MessagePack.Formatters.InterfaceListFormatter2.InterfaceListFormatter2() -> void -MessagePack.MessagePackReader.Depth.get -> int -MessagePack.MessagePackReader.Depth.set -> void -MessagePack.MessagePackReader.ReadDateTime(MessagePack.ExtensionHeader header) -> System.DateTime -MessagePack.MessagePackReader.TryReadArrayHeader(out int count) -> bool -MessagePack.MessagePackReader.TryReadExtensionFormatHeader(out MessagePack.ExtensionHeader extensionHeader) -> bool -MessagePack.MessagePackReader.TryReadMapHeader(out int count) -> bool -MessagePack.MessagePackSecurity -MessagePack.MessagePackSecurity.DepthStep(ref MessagePack.MessagePackReader reader) -> void -MessagePack.MessagePackSecurity.GetEqualityComparer() -> System.Collections.IEqualityComparer -MessagePack.MessagePackSecurity.GetEqualityComparer() -> System.Collections.Generic.IEqualityComparer -MessagePack.MessagePackSecurity.HashCollisionResistant.get -> bool -MessagePack.MessagePackSecurity.MaximumObjectGraphDepth.get -> int -MessagePack.MessagePackSecurity.MessagePackSecurity(MessagePack.MessagePackSecurity copyFrom) -> void -MessagePack.MessagePackSecurity.WithHashCollisionResistant(bool hashCollisionResistant) -> MessagePack.MessagePackSecurity -MessagePack.MessagePackSecurity.WithMaximumObjectGraphDepth(int maximumObjectGraphDepth) -> MessagePack.MessagePackSecurity -MessagePack.MessagePackSerializerOptions.Security.get -> MessagePack.MessagePackSecurity -MessagePack.MessagePackSerializerOptions.WithSecurity(MessagePack.MessagePackSecurity security) -> MessagePack.MessagePackSerializerOptions -MessagePack.MessagePackStreamReader.DiscardBufferedData() -> void -MessagePack.MessagePackStreamReader.MessagePackStreamReader(System.IO.Stream stream, bool leaveOpen) -> void -MessagePack.MessagePackStreamReader.ReadArrayHeaderAsync(System.Threading.CancellationToken cancellationToken) -> System.Threading.Tasks.ValueTask -MessagePack.MessagePackStreamReader.ReadArrayAsync(System.Threading.CancellationToken cancellationToken) -> System.Collections.Generic.IAsyncEnumerable> -MessagePack.MessagePackStreamReader.ReadMapHeaderAsync(System.Threading.CancellationToken cancellationToken) -> System.Threading.Tasks.ValueTask -MessagePack.MessagePackWriter.WriteBinHeader(int length) -> void -MessagePack.MessagePackWriter.WriteStringHeader(int byteCount) -> void -static readonly MessagePack.MessagePackSecurity.TrustedData -> MessagePack.MessagePackSecurity -static readonly MessagePack.MessagePackSecurity.UntrustedData -> MessagePack.MessagePackSecurity -virtual MessagePack.MessagePackSecurity.Clone() -> MessagePack.MessagePackSecurity -virtual MessagePack.MessagePackSecurity.GetHashCollisionResistantEqualityComparer() -> System.Collections.IEqualityComparer -virtual MessagePack.MessagePackSecurity.GetHashCollisionResistantEqualityComparer() -> System.Collections.Generic.IEqualityComparer -MessagePack.Formatters.ByteMemoryFormatter -MessagePack.Formatters.ByteMemoryFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> System.Memory -MessagePack.Formatters.ByteMemoryFormatter.Serialize(ref MessagePack.MessagePackWriter writer, System.Memory value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.ByteReadOnlyMemoryFormatter -MessagePack.Formatters.ByteReadOnlyMemoryFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> System.ReadOnlyMemory -MessagePack.Formatters.ByteReadOnlyMemoryFormatter.Serialize(ref MessagePack.MessagePackWriter writer, System.ReadOnlyMemory value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.ByteReadOnlySequenceFormatter -MessagePack.Formatters.ByteReadOnlySequenceFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> System.Buffers.ReadOnlySequence -MessagePack.Formatters.ByteReadOnlySequenceFormatter.Serialize(ref MessagePack.MessagePackWriter writer, System.Buffers.ReadOnlySequence value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.ExpandoObjectFormatter -MessagePack.Formatters.ExpandoObjectFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> System.Dynamic.ExpandoObject -MessagePack.Formatters.ExpandoObjectFormatter.Serialize(ref MessagePack.MessagePackWriter writer, System.Dynamic.ExpandoObject value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.ForceTypelessFormatter -MessagePack.Formatters.ForceTypelessFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> T -MessagePack.Formatters.ForceTypelessFormatter.ForceTypelessFormatter() -> void -MessagePack.Formatters.ForceTypelessFormatter.Serialize(ref MessagePack.MessagePackWriter writer, T value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.MemoryFormatter -MessagePack.Formatters.MemoryFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> System.Memory -MessagePack.Formatters.MemoryFormatter.MemoryFormatter() -> void -MessagePack.Formatters.MemoryFormatter.Serialize(ref MessagePack.MessagePackWriter writer, System.Memory value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.NonGenericInterfaceCollectionFormatter -MessagePack.Formatters.NonGenericInterfaceCollectionFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> System.Collections.ICollection -MessagePack.Formatters.NonGenericInterfaceCollectionFormatter.Serialize(ref MessagePack.MessagePackWriter writer, System.Collections.ICollection value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.NonGenericInterfaceEnumerableFormatter -MessagePack.Formatters.NonGenericInterfaceEnumerableFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> System.Collections.IEnumerable -MessagePack.Formatters.NonGenericInterfaceEnumerableFormatter.Serialize(ref MessagePack.MessagePackWriter writer, System.Collections.IEnumerable value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.PrimitiveObjectFormatter.PrimitiveObjectFormatter() -> void -MessagePack.Formatters.ReadOnlyMemoryFormatter -MessagePack.Formatters.ReadOnlyMemoryFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> System.ReadOnlyMemory -MessagePack.Formatters.ReadOnlyMemoryFormatter.ReadOnlyMemoryFormatter() -> void -MessagePack.Formatters.ReadOnlyMemoryFormatter.Serialize(ref MessagePack.MessagePackWriter writer, System.ReadOnlyMemory value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.ReadOnlySequenceFormatter -MessagePack.Formatters.ReadOnlySequenceFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> System.Buffers.ReadOnlySequence -MessagePack.Formatters.ReadOnlySequenceFormatter.ReadOnlySequenceFormatter() -> void -MessagePack.Formatters.ReadOnlySequenceFormatter.Serialize(ref MessagePack.MessagePackWriter writer, System.Buffers.ReadOnlySequence value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.TypeFormatter -MessagePack.Formatters.TypeFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> T -MessagePack.Formatters.TypeFormatter.Serialize(ref MessagePack.MessagePackWriter writer, T value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.TypelessFormatter.TypelessFormatter() -> void -MessagePack.ImmutableCollection.ImmutableArrayFormatter -MessagePack.ImmutableCollection.ImmutableArrayFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> System.Collections.Immutable.ImmutableArray -MessagePack.ImmutableCollection.ImmutableArrayFormatter.ImmutableArrayFormatter() -> void -MessagePack.ImmutableCollection.ImmutableArrayFormatter.Serialize(ref MessagePack.MessagePackWriter writer, System.Collections.Immutable.ImmutableArray value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.ImmutableCollection.ImmutableCollectionResolver -MessagePack.ImmutableCollection.ImmutableCollectionResolver.GetFormatter() -> MessagePack.Formatters.IMessagePackFormatter -MessagePack.ImmutableCollection.ImmutableDictionaryFormatter -MessagePack.ImmutableCollection.ImmutableDictionaryFormatter.ImmutableDictionaryFormatter() -> void -MessagePack.ImmutableCollection.ImmutableHashSetFormatter -MessagePack.ImmutableCollection.ImmutableHashSetFormatter.ImmutableHashSetFormatter() -> void -MessagePack.ImmutableCollection.ImmutableListFormatter -MessagePack.ImmutableCollection.ImmutableListFormatter.ImmutableListFormatter() -> void -MessagePack.ImmutableCollection.ImmutableQueueBuilder -MessagePack.ImmutableCollection.ImmutableQueueBuilder.Add(T value) -> void -MessagePack.ImmutableCollection.ImmutableQueueBuilder.ImmutableQueueBuilder() -> void -MessagePack.ImmutableCollection.ImmutableQueueBuilder.Q.get -> System.Collections.Immutable.ImmutableQueue -MessagePack.ImmutableCollection.ImmutableQueueBuilder.Q.set -> void -MessagePack.ImmutableCollection.ImmutableQueueFormatter -MessagePack.ImmutableCollection.ImmutableQueueFormatter.ImmutableQueueFormatter() -> void -MessagePack.ImmutableCollection.ImmutableSortedDictionaryFormatter -MessagePack.ImmutableCollection.ImmutableSortedDictionaryFormatter.ImmutableSortedDictionaryFormatter() -> void -MessagePack.ImmutableCollection.ImmutableSortedSetFormatter -MessagePack.ImmutableCollection.ImmutableSortedSetFormatter.ImmutableSortedSetFormatter() -> void -MessagePack.ImmutableCollection.ImmutableStackFormatter -MessagePack.ImmutableCollection.ImmutableStackFormatter.ImmutableStackFormatter() -> void -MessagePack.ImmutableCollection.InterfaceImmutableDictionaryFormatter -MessagePack.ImmutableCollection.InterfaceImmutableDictionaryFormatter.InterfaceImmutableDictionaryFormatter() -> void -MessagePack.ImmutableCollection.InterfaceImmutableListFormatter -MessagePack.ImmutableCollection.InterfaceImmutableListFormatter.InterfaceImmutableListFormatter() -> void -MessagePack.ImmutableCollection.InterfaceImmutableQueueFormatter -MessagePack.ImmutableCollection.InterfaceImmutableQueueFormatter.InterfaceImmutableQueueFormatter() -> void -MessagePack.ImmutableCollection.InterfaceImmutableSetFormatter -MessagePack.ImmutableCollection.InterfaceImmutableSetFormatter.InterfaceImmutableSetFormatter() -> void -MessagePack.ImmutableCollection.InterfaceImmutableStackFormatter -MessagePack.ImmutableCollection.InterfaceImmutableStackFormatter.InterfaceImmutableStackFormatter() -> void -MessagePack.Resolvers.ExpandoObjectResolver -override MessagePack.ImmutableCollection.ImmutableDictionaryFormatter.Add(System.Collections.Immutable.ImmutableDictionary.Builder collection, int index, TKey key, TValue value, MessagePack.MessagePackSerializerOptions options) -> void -override MessagePack.ImmutableCollection.ImmutableDictionaryFormatter.Complete(System.Collections.Immutable.ImmutableDictionary.Builder intermediateCollection) -> System.Collections.Immutable.ImmutableDictionary -override MessagePack.ImmutableCollection.ImmutableDictionaryFormatter.Create(int count, MessagePack.MessagePackSerializerOptions options) -> System.Collections.Immutable.ImmutableDictionary.Builder -override MessagePack.ImmutableCollection.ImmutableDictionaryFormatter.GetSourceEnumerator(System.Collections.Immutable.ImmutableDictionary source) -> System.Collections.Immutable.ImmutableDictionary.Enumerator -override MessagePack.ImmutableCollection.ImmutableHashSetFormatter.Add(System.Collections.Immutable.ImmutableHashSet.Builder collection, int index, T value, MessagePack.MessagePackSerializerOptions options) -> void -override MessagePack.ImmutableCollection.ImmutableHashSetFormatter.Complete(System.Collections.Immutable.ImmutableHashSet.Builder intermediateCollection) -> System.Collections.Immutable.ImmutableHashSet -override MessagePack.ImmutableCollection.ImmutableHashSetFormatter.Create(int count, MessagePack.MessagePackSerializerOptions options) -> System.Collections.Immutable.ImmutableHashSet.Builder -override MessagePack.ImmutableCollection.ImmutableHashSetFormatter.GetSourceEnumerator(System.Collections.Immutable.ImmutableHashSet source) -> System.Collections.Immutable.ImmutableHashSet.Enumerator -override MessagePack.ImmutableCollection.ImmutableListFormatter.Add(System.Collections.Immutable.ImmutableList.Builder collection, int index, T value, MessagePack.MessagePackSerializerOptions options) -> void -override MessagePack.ImmutableCollection.ImmutableListFormatter.Complete(System.Collections.Immutable.ImmutableList.Builder intermediateCollection) -> System.Collections.Immutable.ImmutableList -override MessagePack.ImmutableCollection.ImmutableListFormatter.Create(int count, MessagePack.MessagePackSerializerOptions options) -> System.Collections.Immutable.ImmutableList.Builder -override MessagePack.ImmutableCollection.ImmutableListFormatter.GetSourceEnumerator(System.Collections.Immutable.ImmutableList source) -> System.Collections.Immutable.ImmutableList.Enumerator -override MessagePack.ImmutableCollection.ImmutableQueueFormatter.Add(MessagePack.ImmutableCollection.ImmutableQueueBuilder collection, int index, T value, MessagePack.MessagePackSerializerOptions options) -> void -override MessagePack.ImmutableCollection.ImmutableQueueFormatter.Complete(MessagePack.ImmutableCollection.ImmutableQueueBuilder intermediateCollection) -> System.Collections.Immutable.ImmutableQueue -override MessagePack.ImmutableCollection.ImmutableQueueFormatter.Create(int count, MessagePack.MessagePackSerializerOptions options) -> MessagePack.ImmutableCollection.ImmutableQueueBuilder -override MessagePack.ImmutableCollection.ImmutableSortedDictionaryFormatter.Add(System.Collections.Immutable.ImmutableSortedDictionary.Builder collection, int index, TKey key, TValue value, MessagePack.MessagePackSerializerOptions options) -> void -override MessagePack.ImmutableCollection.ImmutableSortedDictionaryFormatter.Complete(System.Collections.Immutable.ImmutableSortedDictionary.Builder intermediateCollection) -> System.Collections.Immutable.ImmutableSortedDictionary -override MessagePack.ImmutableCollection.ImmutableSortedDictionaryFormatter.Create(int count, MessagePack.MessagePackSerializerOptions options) -> System.Collections.Immutable.ImmutableSortedDictionary.Builder -override MessagePack.ImmutableCollection.ImmutableSortedDictionaryFormatter.GetSourceEnumerator(System.Collections.Immutable.ImmutableSortedDictionary source) -> System.Collections.Immutable.ImmutableSortedDictionary.Enumerator -override MessagePack.ImmutableCollection.ImmutableSortedSetFormatter.Add(System.Collections.Immutable.ImmutableSortedSet.Builder collection, int index, T value, MessagePack.MessagePackSerializerOptions options) -> void -override MessagePack.ImmutableCollection.ImmutableSortedSetFormatter.Complete(System.Collections.Immutable.ImmutableSortedSet.Builder intermediateCollection) -> System.Collections.Immutable.ImmutableSortedSet -override MessagePack.ImmutableCollection.ImmutableSortedSetFormatter.Create(int count, MessagePack.MessagePackSerializerOptions options) -> System.Collections.Immutable.ImmutableSortedSet.Builder -override MessagePack.ImmutableCollection.ImmutableSortedSetFormatter.GetSourceEnumerator(System.Collections.Immutable.ImmutableSortedSet source) -> System.Collections.Immutable.ImmutableSortedSet.Enumerator -override MessagePack.ImmutableCollection.ImmutableStackFormatter.Add(T[] collection, int index, T value, MessagePack.MessagePackSerializerOptions options) -> void -override MessagePack.ImmutableCollection.ImmutableStackFormatter.Complete(T[] intermediateCollection) -> System.Collections.Immutable.ImmutableStack -override MessagePack.ImmutableCollection.ImmutableStackFormatter.Create(int count, MessagePack.MessagePackSerializerOptions options) -> T[] -override MessagePack.ImmutableCollection.InterfaceImmutableDictionaryFormatter.Add(System.Collections.Immutable.ImmutableDictionary.Builder collection, int index, TKey key, TValue value, MessagePack.MessagePackSerializerOptions options) -> void -override MessagePack.ImmutableCollection.InterfaceImmutableDictionaryFormatter.Complete(System.Collections.Immutable.ImmutableDictionary.Builder intermediateCollection) -> System.Collections.Immutable.IImmutableDictionary -override MessagePack.ImmutableCollection.InterfaceImmutableDictionaryFormatter.Create(int count, MessagePack.MessagePackSerializerOptions options) -> System.Collections.Immutable.ImmutableDictionary.Builder -override MessagePack.ImmutableCollection.InterfaceImmutableListFormatter.Add(System.Collections.Immutable.ImmutableList.Builder collection, int index, T value, MessagePack.MessagePackSerializerOptions options) -> void -override MessagePack.ImmutableCollection.InterfaceImmutableListFormatter.Complete(System.Collections.Immutable.ImmutableList.Builder intermediateCollection) -> System.Collections.Immutable.IImmutableList -override MessagePack.ImmutableCollection.InterfaceImmutableListFormatter.Create(int count, MessagePack.MessagePackSerializerOptions options) -> System.Collections.Immutable.ImmutableList.Builder -override MessagePack.ImmutableCollection.InterfaceImmutableQueueFormatter.Add(MessagePack.ImmutableCollection.ImmutableQueueBuilder collection, int index, T value, MessagePack.MessagePackSerializerOptions options) -> void -override MessagePack.ImmutableCollection.InterfaceImmutableQueueFormatter.Complete(MessagePack.ImmutableCollection.ImmutableQueueBuilder intermediateCollection) -> System.Collections.Immutable.IImmutableQueue -override MessagePack.ImmutableCollection.InterfaceImmutableQueueFormatter.Create(int count, MessagePack.MessagePackSerializerOptions options) -> MessagePack.ImmutableCollection.ImmutableQueueBuilder -override MessagePack.ImmutableCollection.InterfaceImmutableSetFormatter.Add(System.Collections.Immutable.ImmutableHashSet.Builder collection, int index, T value, MessagePack.MessagePackSerializerOptions options) -> void -override MessagePack.ImmutableCollection.InterfaceImmutableSetFormatter.Complete(System.Collections.Immutable.ImmutableHashSet.Builder intermediateCollection) -> System.Collections.Immutable.IImmutableSet -override MessagePack.ImmutableCollection.InterfaceImmutableSetFormatter.Create(int count, MessagePack.MessagePackSerializerOptions options) -> System.Collections.Immutable.ImmutableHashSet.Builder -override MessagePack.ImmutableCollection.InterfaceImmutableStackFormatter.Add(T[] collection, int index, T value, MessagePack.MessagePackSerializerOptions options) -> void -override MessagePack.ImmutableCollection.InterfaceImmutableStackFormatter.Complete(T[] intermediateCollection) -> System.Collections.Immutable.IImmutableStack -override MessagePack.ImmutableCollection.InterfaceImmutableStackFormatter.Create(int count, MessagePack.MessagePackSerializerOptions options) -> T[] -static readonly MessagePack.Formatters.ByteMemoryFormatter.Instance -> MessagePack.Formatters.ByteMemoryFormatter -static readonly MessagePack.Formatters.ByteReadOnlyMemoryFormatter.Instance -> MessagePack.Formatters.ByteReadOnlyMemoryFormatter -static readonly MessagePack.Formatters.ByteReadOnlySequenceFormatter.Instance -> MessagePack.Formatters.ByteReadOnlySequenceFormatter -static readonly MessagePack.Formatters.ExpandoObjectFormatter.Instance -> MessagePack.Formatters.IMessagePackFormatter -static readonly MessagePack.Formatters.NonGenericInterfaceCollectionFormatter.Instance -> MessagePack.Formatters.IMessagePackFormatter -static readonly MessagePack.Formatters.NonGenericInterfaceEnumerableFormatter.Instance -> MessagePack.Formatters.IMessagePackFormatter -static readonly MessagePack.Formatters.TypeFormatter.Instance -> MessagePack.Formatters.IMessagePackFormatter -static readonly MessagePack.ImmutableCollection.ImmutableCollectionResolver.Instance -> MessagePack.ImmutableCollection.ImmutableCollectionResolver -static readonly MessagePack.Resolvers.ExpandoObjectResolver.Instance -> MessagePack.IFormatterResolver -static readonly MessagePack.Resolvers.ExpandoObjectResolver.Options -> MessagePack.MessagePackSerializerOptions -virtual MessagePack.Formatters.PrimitiveObjectFormatter.DeserializeMap(ref MessagePack.MessagePackReader reader, int length, MessagePack.MessagePackSerializerOptions options) -> object diff --git a/src/MessagePack/netcoreapp2.1/PublicAPI.Unshipped.txt b/src/MessagePack/netcoreapp2.1/PublicAPI.Unshipped.txt deleted file mode 100644 index b44f24ad..00000000 --- a/src/MessagePack/netcoreapp2.1/PublicAPI.Unshipped.txt +++ /dev/null @@ -1,24 +0,0 @@ -MessagePack.ExtensionHeader.ExtensionHeader() -> void -MessagePack.ExtensionResult.ExtensionResult() -> void -MessagePack.FormatterNotRegisteredException.FormatterNotRegisteredException(System.Runtime.Serialization.SerializationInfo info, System.Runtime.Serialization.StreamingContext context) -> void -MessagePack.Formatters.StringInterningFormatter -MessagePack.Formatters.StringInterningFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> string -MessagePack.Formatters.StringInterningFormatter.Serialize(ref MessagePack.MessagePackWriter writer, string value, MessagePack.MessagePackSerializerOptions options) -> void -MessagePack.Formatters.StringInterningFormatter.StringInterningFormatter() -> void -MessagePack.MessagePackReader.MessagePackReader() -> void -MessagePack.MessagePackSerializerOptions.SequencePool.get -> MessagePack.SequencePool -MessagePack.MessagePackSerializerOptions.WithPool(MessagePack.SequencePool pool) -> MessagePack.MessagePackSerializerOptions -MessagePack.MessagePackStreamReader.MessagePackStreamReader(System.IO.Stream stream, bool leaveOpen, MessagePack.SequencePool sequencePool) -> void -MessagePack.MessagePackWriter.MessagePackWriter() -> void -MessagePack.SequencePool -MessagePack.SequencePool.SequencePool() -> void -MessagePack.SequencePool.SequencePool(int maxSize) -> void -MessagePack.SequencePool.SequencePool(int maxSize, System.Buffers.ArrayPool arrayPool) -> void -MessagePack.TinyJsonException.TinyJsonException(System.Runtime.Serialization.SerializationInfo info, System.Runtime.Serialization.StreamingContext context) -> void -static MessagePack.Nil.operator !=(MessagePack.Nil left, MessagePack.Nil right) -> bool -static MessagePack.Nil.operator ==(MessagePack.Nil left, MessagePack.Nil right) -> bool -virtual MessagePack.MessagePackStreamReader.Dispose(bool disposing) -> void -MessagePack.Formatters.GenericEnumerableFormatter -MessagePack.Formatters.GenericEnumerableFormatter.GenericEnumerableFormatter() -> void -MessagePack.Formatters.GenericReadOnlyDictionaryFormatter -MessagePack.Formatters.GenericReadOnlyDictionaryFormatter.GenericReadOnlyDictionaryFormatter() -> void diff --git a/tests/MessagePack.Tests/MessagePack.Tests.csproj b/tests/MessagePack.Tests/MessagePack.Tests.csproj index 2e5229df..9f7d9832 100644 --- a/tests/MessagePack.Tests/MessagePack.Tests.csproj +++ b/tests/MessagePack.Tests/MessagePack.Tests.csproj @@ -1,8 +1,8 @@  - net472;netcoreapp3.1;net5.0 + net472;netcoreapp3.1;net5.0;net6.0 true - 9.0 + 10 true true $(NoWarn);CS1701 diff --git a/tools/Install-DotNetSdk.ps1 b/tools/Install-DotNetSdk.ps1 index fac05df7..0606d802 100755 --- a/tools/Install-DotNetSdk.ps1 +++ b/tools/Install-DotNetSdk.ps1 @@ -29,6 +29,12 @@ $DotNetInstallScriptRoot = Resolve-Path $DotNetInstallScriptRoot # Look up actual required .NET Core SDK version from global.json $sdkVersion = & "$PSScriptRoot/../azure-pipelines/variables/DotNetSdkVersion.ps1" +$arch = [System.Runtime.InteropServices.RuntimeInformation]::ProcessArchitecture +if (!$arch) { # Windows Powershell leaves this blank + $arch = 'x64' + if ($env:PROCESSOR_ARCHITECTURE -eq 'ARM64') { $arch = 'ARM64' } +} + # Search for all .NET Core runtime versions referenced from MSBuild projects and arrange to install them. $runtimeVersions = @() $windowsDesktopRuntimeVersions = @() @@ -44,13 +50,22 @@ Get-ChildItem "$PSScriptRoot\..\src\*.*proj","$PSScriptRoot\..\tests\*.*proj","$ } } } - $targetFrameworks |? { $_ -match 'netcoreapp(\d+\.\d+)' } |% { + $targetFrameworks |? { $_ -match 'net(?:coreapp)?(\d+\.\d+)' } |% { $v = $Matches[1] $runtimeVersions += $v if ($v -ge '3.0' -and -not ($IsMacOS -or $IsLinux)) { $windowsDesktopRuntimeVersions += $v } } + + # Add target frameworks of the form: netXX + $targetFrameworks |? { $_ -match 'net(\d+\.\d+)' } |% { + $v = $Matches[1] + $runtimeVersions += $v + if (-not ($IsMacOS -or $IsLinux)) { + $windowsDesktopRuntimeVersions += $v + } + } } Function Get-FileFromWeb([Uri]$Uri, $OutDir) { @@ -77,7 +92,7 @@ Function Get-InstallerExe($Version, [switch]$Runtime) { $Version = $versionInfo[-1] } - Get-FileFromWeb -Uri "https://dotnetcli.blob.core.windows.net/dotnet/$sdkOrRuntime/$Version/dotnet-$($sdkOrRuntime.ToLowerInvariant())-$Version-win-x64.exe" -OutDir "$DotNetInstallScriptRoot" + Get-FileFromWeb -Uri "https://dotnetcli.blob.core.windows.net/dotnet/$sdkOrRuntime/$Version/dotnet-$($sdkOrRuntime.ToLowerInvariant())-$Version-win-$arch.exe" -OutDir "$DotNetInstallScriptRoot" } Function Install-DotNet($Version, [switch]$Runtime) { @@ -94,7 +109,7 @@ Function Install-DotNet($Version, [switch]$Runtime) { } $switches = @( - '-Architecture','x64' + '-Architecture',$arch ) $envVars = @{ # For locally installed dotnet, skip first time experience which takes a long time @@ -142,10 +157,10 @@ if ($DotNetInstallDir) { } if ($IsMacOS -or $IsLinux) { - $DownloadUri = "https://raw.githubusercontent.com/dotnet/install-scripts/49d5da7f7d313aa65d24fe95cc29767faef553fd/src/dotnet-install.sh" + $DownloadUri = "https://raw.githubusercontent.com/dotnet/install-scripts/781752509a890ca7520f1182e8bae71f9a53d754/src/dotnet-install.sh" $DotNetInstallScriptPath = "$DotNetInstallScriptRoot/dotnet-install.sh" } else { - $DownloadUri = "https://raw.githubusercontent.com/dotnet/install-scripts/49d5da7f7d313aa65d24fe95cc29767faef553fd/src/dotnet-install.ps1" + $DownloadUri = "https://raw.githubusercontent.com/dotnet/install-scripts/781752509a890ca7520f1182e8bae71f9a53d754/src/dotnet-install.ps1" $DotNetInstallScriptPath = "$DotNetInstallScriptRoot/dotnet-install.ps1" } -- cgit v1.2.3 From 54b155f6e505c01ccdc95e0ced90dad8dd8225c2 Mon Sep 17 00:00:00 2001 From: pCYSl5EDgo <31692496+pCYSl5EDgo@users.noreply.github.com> Date: Tue, 28 Dec 2021 00:06:20 +0900 Subject: Avoid C#10 global using name collisions (#1368) --- sandbox/Sandbox/Generated.cs | 468 ++++++++++----------- sandbox/TestData2/Generated.cs | 99 +++-- .../CodeAnalysis/Definitions.cs | 14 +- .../Generator/EnumTemplate.cs | 13 +- .../Generator/EnumTemplate.tt | 11 +- .../Generator/FormatterTemplate.cs | 8 +- .../Generator/FormatterTemplate.tt | 9 +- .../Generator/ResolverTemplate.cs | 10 +- .../Generator/ResolverTemplate.tt | 14 +- .../StringKey/StringKeyFormatterTemplate.cs | 21 +- .../StringKey/StringKeyFormatterTemplate.tt | 19 +- .../Generator/UnionTemplate.cs | 34 +- .../Generator/UnionTemplate.tt | 25 +- 13 files changed, 363 insertions(+), 382 deletions(-) diff --git a/sandbox/Sandbox/Generated.cs b/sandbox/Sandbox/Generated.cs index 64f68f84..9b5c623c 100644 --- a/sandbox/Sandbox/Generated.cs +++ b/sandbox/Sandbox/Generated.cs @@ -7,14 +7,11 @@ #pragma warning disable 414 #pragma warning disable 168 -#pragma warning disable SA1200 // Using directives should be placed correctly #pragma warning disable SA1312 // Variable names should begin with lower-case letter #pragma warning disable SA1649 // File name should match first type name namespace MessagePack.Resolvers { - using System; - public class GeneratedResolver : global::MessagePack.IFormatterResolver { public static readonly global::MessagePack.IFormatterResolver Instance = new GeneratedResolver(); @@ -45,11 +42,11 @@ namespace MessagePack.Resolvers internal static class GeneratedResolverGetFormatterHelper { - private static readonly global::System.Collections.Generic.Dictionary lookup; + private static readonly global::System.Collections.Generic.Dictionary lookup; static GeneratedResolverGetFormatterHelper() { - lookup = new global::System.Collections.Generic.Dictionary(72) + lookup = new global::System.Collections.Generic.Dictionary(72) { { typeof(global::GlobalMyEnum[,]), 0 }, { typeof(global::GlobalMyEnum[]), 1 }, @@ -126,7 +123,7 @@ namespace MessagePack.Resolvers }; } - internal static object GetFormatter(Type t) + internal static object GetFormatter(global::System.Type t) { int key; if (!lookup.TryGetValue(t, out key)) @@ -220,7 +217,6 @@ namespace MessagePack.Resolvers #pragma warning restore 612 #pragma warning restore SA1312 // Variable names should begin with lower-case letter -#pragma warning restore SA1200 // Using directives should be placed correctly #pragma warning restore SA1649 // File name should match first type name @@ -233,24 +229,20 @@ namespace MessagePack.Resolvers #pragma warning disable 414 #pragma warning disable 168 -#pragma warning disable SA1200 // Using directives should be placed correctly #pragma warning disable SA1403 // File may only contain a single namespace #pragma warning disable SA1649 // File name should match first type name namespace MessagePack.Formatters { - using System; - using System.Buffers; - using MessagePack; public sealed class GlobalMyEnumFormatter : global::MessagePack.Formatters.IMessagePackFormatter { - public void Serialize(ref MessagePackWriter writer, global::GlobalMyEnum value, global::MessagePack.MessagePackSerializerOptions options) + public void Serialize(ref global::MessagePack.MessagePackWriter writer, global::GlobalMyEnum value, global::MessagePack.MessagePackSerializerOptions options) { - writer.Write((Int32)value); + writer.Write((global::System.Int32)value); } - public global::GlobalMyEnum Deserialize(ref MessagePackReader reader, global::MessagePack.MessagePackSerializerOptions options) + public global::GlobalMyEnum Deserialize(ref global::MessagePack.MessagePackReader reader, global::MessagePack.MessagePackSerializerOptions options) { return (global::GlobalMyEnum)reader.ReadInt32(); } @@ -262,7 +254,6 @@ namespace MessagePack.Formatters #pragma warning restore 618 #pragma warning restore 612 -#pragma warning restore SA1200 // Using directives should be placed correctly #pragma warning restore SA1403 // File may only contain a single namespace #pragma warning restore SA1649 // File name should match first type name @@ -275,24 +266,20 @@ namespace MessagePack.Formatters #pragma warning disable 414 #pragma warning disable 168 -#pragma warning disable SA1200 // Using directives should be placed correctly #pragma warning disable SA1403 // File may only contain a single namespace #pragma warning disable SA1649 // File name should match first type name namespace MessagePack.Formatters.SharedData { - using System; - using System.Buffers; - using MessagePack; public sealed class ByteEnumFormatter : global::MessagePack.Formatters.IMessagePackFormatter { - public void Serialize(ref MessagePackWriter writer, global::SharedData.ByteEnum value, global::MessagePack.MessagePackSerializerOptions options) + public void Serialize(ref global::MessagePack.MessagePackWriter writer, global::SharedData.ByteEnum value, global::MessagePack.MessagePackSerializerOptions options) { - writer.Write((Byte)value); + writer.Write((global::System.Byte)value); } - public global::SharedData.ByteEnum Deserialize(ref MessagePackReader reader, global::MessagePack.MessagePackSerializerOptions options) + public global::SharedData.ByteEnum Deserialize(ref global::MessagePack.MessagePackReader reader, global::MessagePack.MessagePackSerializerOptions options) { return (global::SharedData.ByteEnum)reader.ReadByte(); } @@ -304,7 +291,6 @@ namespace MessagePack.Formatters.SharedData #pragma warning restore 618 #pragma warning restore 612 -#pragma warning restore SA1200 // Using directives should be placed correctly #pragma warning restore SA1403 // File may only contain a single namespace #pragma warning restore SA1649 // File name should match first type name @@ -318,31 +304,25 @@ namespace MessagePack.Formatters.SharedData #pragma warning disable 414 #pragma warning disable 168 -#pragma warning disable SA1200 // Using directives should be placed correctly #pragma warning disable SA1403 // File may only contain a single namespace #pragma warning disable SA1649 // File name should match first type name namespace MessagePack.Formatters { - using System; - using System.Buffers; - using System.Collections.Generic; - using MessagePack; - public sealed class IMessageBodyFormatter : global::MessagePack.Formatters.IMessagePackFormatter { - private readonly Dictionary> typeToKeyAndJumpMap; - private readonly Dictionary keyToJumpMap; + private readonly global::System.Collections.Generic.Dictionary> typeToKeyAndJumpMap; + private readonly global::System.Collections.Generic.Dictionary keyToJumpMap; public IMessageBodyFormatter() { - this.typeToKeyAndJumpMap = new Dictionary>(3, global::MessagePack.Internal.RuntimeTypeHandleEqualityComparer.Default) + this.typeToKeyAndJumpMap = new global::System.Collections.Generic.Dictionary>(3, global::MessagePack.Internal.RuntimeTypeHandleEqualityComparer.Default) { - { typeof(global::TextMessageBody).TypeHandle, new KeyValuePair(10, 0) }, - { typeof(global::StampMessageBody).TypeHandle, new KeyValuePair(14, 1) }, - { typeof(global::QuestMessageBody).TypeHandle, new KeyValuePair(25, 2) }, + { typeof(global::TextMessageBody).TypeHandle, new global::System.Collections.Generic.KeyValuePair(10, 0) }, + { typeof(global::StampMessageBody).TypeHandle, new global::System.Collections.Generic.KeyValuePair(14, 1) }, + { typeof(global::QuestMessageBody).TypeHandle, new global::System.Collections.Generic.KeyValuePair(25, 2) }, }; - this.keyToJumpMap = new Dictionary(3) + this.keyToJumpMap = new global::System.Collections.Generic.Dictionary(3) { { 10, 0 }, { 14, 1 }, @@ -350,9 +330,9 @@ namespace MessagePack.Formatters }; } - public void Serialize(ref MessagePackWriter writer, global::IMessageBody value, global::MessagePack.MessagePackSerializerOptions options) + public void Serialize(ref global::MessagePack.MessagePackWriter writer, global::IMessageBody value, global::MessagePack.MessagePackSerializerOptions options) { - KeyValuePair keyValuePair; + global::System.Collections.Generic.KeyValuePair keyValuePair; if (value != null && this.typeToKeyAndJumpMap.TryGetValue(value.GetType().TypeHandle, out keyValuePair)) { writer.WriteArrayHeader(2); @@ -378,7 +358,7 @@ namespace MessagePack.Formatters writer.WriteNil(); } - public global::IMessageBody Deserialize(ref MessagePackReader reader, global::MessagePack.MessagePackSerializerOptions options) + public global::IMessageBody Deserialize(ref global::MessagePack.MessagePackReader reader, global::MessagePack.MessagePackSerializerOptions options) { if (reader.TryReadNil()) { @@ -387,7 +367,7 @@ namespace MessagePack.Formatters if (reader.ReadArrayHeader() != 2) { - throw new InvalidOperationException("Invalid Union data was detected. Type:global::IMessageBody"); + throw new global::System.InvalidOperationException("Invalid Union data was detected. Type:global::IMessageBody"); } options.Security.DepthStep(ref reader); @@ -428,7 +408,6 @@ namespace MessagePack.Formatters #pragma warning restore 618 #pragma warning restore 612 -#pragma warning restore SA1200 // Using directives should be placed correctly #pragma warning restore SA1403 // File may only contain a single namespace #pragma warning restore SA1649 // File name should match first type name @@ -441,37 +420,31 @@ namespace MessagePack.Formatters #pragma warning disable 414 #pragma warning disable 168 -#pragma warning disable SA1200 // Using directives should be placed correctly #pragma warning disable SA1403 // File may only contain a single namespace #pragma warning disable SA1649 // File name should match first type name namespace MessagePack.Formatters.SharedData { - using System; - using System.Buffers; - using System.Collections.Generic; - using MessagePack; - public sealed class IIVersioningUnionFormatter : global::MessagePack.Formatters.IMessagePackFormatter { - private readonly Dictionary> typeToKeyAndJumpMap; - private readonly Dictionary keyToJumpMap; + private readonly global::System.Collections.Generic.Dictionary> typeToKeyAndJumpMap; + private readonly global::System.Collections.Generic.Dictionary keyToJumpMap; public IIVersioningUnionFormatter() { - this.typeToKeyAndJumpMap = new Dictionary>(1, global::MessagePack.Internal.RuntimeTypeHandleEqualityComparer.Default) + this.typeToKeyAndJumpMap = new global::System.Collections.Generic.Dictionary>(1, global::MessagePack.Internal.RuntimeTypeHandleEqualityComparer.Default) { - { typeof(global::SharedData.MySubUnion1).TypeHandle, new KeyValuePair(0, 0) }, + { typeof(global::SharedData.MySubUnion1).TypeHandle, new global::System.Collections.Generic.KeyValuePair(0, 0) }, }; - this.keyToJumpMap = new Dictionary(1) + this.keyToJumpMap = new global::System.Collections.Generic.Dictionary(1) { { 0, 0 }, }; } - public void Serialize(ref MessagePackWriter writer, global::SharedData.IIVersioningUnion value, global::MessagePack.MessagePackSerializerOptions options) + public void Serialize(ref global::MessagePack.MessagePackWriter writer, global::SharedData.IIVersioningUnion value, global::MessagePack.MessagePackSerializerOptions options) { - KeyValuePair keyValuePair; + global::System.Collections.Generic.KeyValuePair keyValuePair; if (value != null && this.typeToKeyAndJumpMap.TryGetValue(value.GetType().TypeHandle, out keyValuePair)) { writer.WriteArrayHeader(2); @@ -491,7 +464,7 @@ namespace MessagePack.Formatters.SharedData writer.WriteNil(); } - public global::SharedData.IIVersioningUnion Deserialize(ref MessagePackReader reader, global::MessagePack.MessagePackSerializerOptions options) + public global::SharedData.IIVersioningUnion Deserialize(ref global::MessagePack.MessagePackReader reader, global::MessagePack.MessagePackSerializerOptions options) { if (reader.TryReadNil()) { @@ -500,7 +473,7 @@ namespace MessagePack.Formatters.SharedData if (reader.ReadArrayHeader() != 2) { - throw new InvalidOperationException("Invalid Union data was detected. Type:global::SharedData.IIVersioningUnion"); + throw new global::System.InvalidOperationException("Invalid Union data was detected. Type:global::SharedData.IIVersioningUnion"); } options.Security.DepthStep(ref reader); @@ -529,19 +502,19 @@ namespace MessagePack.Formatters.SharedData public sealed class IUnionCheckerFormatter : global::MessagePack.Formatters.IMessagePackFormatter { - private readonly Dictionary> typeToKeyAndJumpMap; - private readonly Dictionary keyToJumpMap; + private readonly global::System.Collections.Generic.Dictionary> typeToKeyAndJumpMap; + private readonly global::System.Collections.Generic.Dictionary keyToJumpMap; public IUnionCheckerFormatter() { - this.typeToKeyAndJumpMap = new Dictionary>(4, global::MessagePack.Internal.RuntimeTypeHandleEqualityComparer.Default) + this.typeToKeyAndJumpMap = new global::System.Collections.Generic.Dictionary>(4, global::MessagePack.Internal.RuntimeTypeHandleEqualityComparer.Default) { - { typeof(global::SharedData.MySubUnion1).TypeHandle, new KeyValuePair(0, 0) }, - { typeof(global::SharedData.MySubUnion2).TypeHandle, new KeyValuePair(1, 1) }, - { typeof(global::SharedData.MySubUnion3).TypeHandle, new KeyValuePair(2, 2) }, - { typeof(global::SharedData.MySubUnion4).TypeHandle, new KeyValuePair(3, 3) }, + { typeof(global::SharedData.MySubUnion1).TypeHandle, new global::System.Collections.Generic.KeyValuePair(0, 0) }, + { typeof(global::SharedData.MySubUnion2).TypeHandle, new global::System.Collections.Generic.KeyValuePair(1, 1) }, + { typeof(global::SharedData.MySubUnion3).TypeHandle, new global::System.Collections.Generic.KeyValuePair(2, 2) }, + { typeof(global::SharedData.MySubUnion4).TypeHandle, new global::System.Collections.Generic.KeyValuePair(3, 3) }, }; - this.keyToJumpMap = new Dictionary(4) + this.keyToJumpMap = new global::System.Collections.Generic.Dictionary(4) { { 0, 0 }, { 1, 1 }, @@ -550,9 +523,9 @@ namespace MessagePack.Formatters.SharedData }; } - public void Serialize(ref MessagePackWriter writer, global::SharedData.IUnionChecker value, global::MessagePack.MessagePackSerializerOptions options) + public void Serialize(ref global::MessagePack.MessagePackWriter writer, global::SharedData.IUnionChecker value, global::MessagePack.MessagePackSerializerOptions options) { - KeyValuePair keyValuePair; + global::System.Collections.Generic.KeyValuePair keyValuePair; if (value != null && this.typeToKeyAndJumpMap.TryGetValue(value.GetType().TypeHandle, out keyValuePair)) { writer.WriteArrayHeader(2); @@ -581,7 +554,7 @@ namespace MessagePack.Formatters.SharedData writer.WriteNil(); } - public global::SharedData.IUnionChecker Deserialize(ref MessagePackReader reader, global::MessagePack.MessagePackSerializerOptions options) + public global::SharedData.IUnionChecker Deserialize(ref global::MessagePack.MessagePackReader reader, global::MessagePack.MessagePackSerializerOptions options) { if (reader.TryReadNil()) { @@ -590,7 +563,7 @@ namespace MessagePack.Formatters.SharedData if (reader.ReadArrayHeader() != 2) { - throw new InvalidOperationException("Invalid Union data was detected. Type:global::SharedData.IUnionChecker"); + throw new global::System.InvalidOperationException("Invalid Union data was detected. Type:global::SharedData.IUnionChecker"); } options.Security.DepthStep(ref reader); @@ -628,19 +601,19 @@ namespace MessagePack.Formatters.SharedData public sealed class IUnionChecker2Formatter : global::MessagePack.Formatters.IMessagePackFormatter { - private readonly Dictionary> typeToKeyAndJumpMap; - private readonly Dictionary keyToJumpMap; + private readonly global::System.Collections.Generic.Dictionary> typeToKeyAndJumpMap; + private readonly global::System.Collections.Generic.Dictionary keyToJumpMap; public IUnionChecker2Formatter() { - this.typeToKeyAndJumpMap = new Dictionary>(4, global::MessagePack.Internal.RuntimeTypeHandleEqualityComparer.Default) + this.typeToKeyAndJumpMap = new global::System.Collections.Generic.Dictionary>(4, global::MessagePack.Internal.RuntimeTypeHandleEqualityComparer.Default) { - { typeof(global::SharedData.MySubUnion2).TypeHandle, new KeyValuePair(31, 0) }, - { typeof(global::SharedData.MySubUnion3).TypeHandle, new KeyValuePair(42, 1) }, - { typeof(global::SharedData.MySubUnion4).TypeHandle, new KeyValuePair(63, 2) }, - { typeof(global::SharedData.MySubUnion1).TypeHandle, new KeyValuePair(120, 3) }, + { typeof(global::SharedData.MySubUnion2).TypeHandle, new global::System.Collections.Generic.KeyValuePair(31, 0) }, + { typeof(global::SharedData.MySubUnion3).TypeHandle, new global::System.Collections.Generic.KeyValuePair(42, 1) }, + { typeof(global::SharedData.MySubUnion4).TypeHandle, new global::System.Collections.Generic.KeyValuePair(63, 2) }, + { typeof(global::SharedData.MySubUnion1).TypeHandle, new global::System.Collections.Generic.KeyValuePair(120, 3) }, }; - this.keyToJumpMap = new Dictionary(4) + this.keyToJumpMap = new global::System.Collections.Generic.Dictionary(4) { { 31, 0 }, { 42, 1 }, @@ -649,9 +622,9 @@ namespace MessagePack.Formatters.SharedData }; } - public void Serialize(ref MessagePackWriter writer, global::SharedData.IUnionChecker2 value, global::MessagePack.MessagePackSerializerOptions options) + public void Serialize(ref global::MessagePack.MessagePackWriter writer, global::SharedData.IUnionChecker2 value, global::MessagePack.MessagePackSerializerOptions options) { - KeyValuePair keyValuePair; + global::System.Collections.Generic.KeyValuePair keyValuePair; if (value != null && this.typeToKeyAndJumpMap.TryGetValue(value.GetType().TypeHandle, out keyValuePair)) { writer.WriteArrayHeader(2); @@ -680,7 +653,7 @@ namespace MessagePack.Formatters.SharedData writer.WriteNil(); } - public global::SharedData.IUnionChecker2 Deserialize(ref MessagePackReader reader, global::MessagePack.MessagePackSerializerOptions options) + public global::SharedData.IUnionChecker2 Deserialize(ref global::MessagePack.MessagePackReader reader, global::MessagePack.MessagePackSerializerOptions options) { if (reader.TryReadNil()) { @@ -689,7 +662,7 @@ namespace MessagePack.Formatters.SharedData if (reader.ReadArrayHeader() != 2) { - throw new InvalidOperationException("Invalid Union data was detected. Type:global::SharedData.IUnionChecker2"); + throw new global::System.InvalidOperationException("Invalid Union data was detected. Type:global::SharedData.IUnionChecker2"); } options.Security.DepthStep(ref reader); @@ -727,26 +700,26 @@ namespace MessagePack.Formatters.SharedData public sealed class IUnionSampleFormatter : global::MessagePack.Formatters.IMessagePackFormatter { - private readonly Dictionary> typeToKeyAndJumpMap; - private readonly Dictionary keyToJumpMap; + private readonly global::System.Collections.Generic.Dictionary> typeToKeyAndJumpMap; + private readonly global::System.Collections.Generic.Dictionary keyToJumpMap; public IUnionSampleFormatter() { - this.typeToKeyAndJumpMap = new Dictionary>(2, global::MessagePack.Internal.RuntimeTypeHandleEqualityComparer.Default) + this.typeToKeyAndJumpMap = new global::System.Collections.Generic.Dictionary>(2, global::MessagePack.Internal.RuntimeTypeHandleEqualityComparer.Default) { - { typeof(global::SharedData.FooClass).TypeHandle, new KeyValuePair(0, 0) }, - { typeof(global::SharedData.BarClass).TypeHandle, new KeyValuePair(100, 1) }, + { typeof(global::SharedData.FooClass).TypeHandle, new global::System.Collections.Generic.KeyValuePair(0, 0) }, + { typeof(global::SharedData.BarClass).TypeHandle, new global::System.Collections.Generic.KeyValuePair(100, 1) }, }; - this.keyToJumpMap = new Dictionary(2) + this.keyToJumpMap = new global::System.Collections.Generic.Dictionary(2) { { 0, 0 }, { 100, 1 }, }; } - public void Serialize(ref MessagePackWriter writer, global::SharedData.IUnionSample value, global::MessagePack.MessagePackSerializerOptions options) + public void Serialize(ref global::MessagePack.MessagePackWriter writer, global::SharedData.IUnionSample value, global::MessagePack.MessagePackSerializerOptions options) { - KeyValuePair keyValuePair; + global::System.Collections.Generic.KeyValuePair keyValuePair; if (value != null && this.typeToKeyAndJumpMap.TryGetValue(value.GetType().TypeHandle, out keyValuePair)) { writer.WriteArrayHeader(2); @@ -769,7 +742,7 @@ namespace MessagePack.Formatters.SharedData writer.WriteNil(); } - public global::SharedData.IUnionSample Deserialize(ref MessagePackReader reader, global::MessagePack.MessagePackSerializerOptions options) + public global::SharedData.IUnionSample Deserialize(ref global::MessagePack.MessagePackReader reader, global::MessagePack.MessagePackSerializerOptions options) { if (reader.TryReadNil()) { @@ -778,7 +751,7 @@ namespace MessagePack.Formatters.SharedData if (reader.ReadArrayHeader() != 2) { - throw new InvalidOperationException("Invalid Union data was detected. Type:global::SharedData.IUnionSample"); + throw new global::System.InvalidOperationException("Invalid Union data was detected. Type:global::SharedData.IUnionSample"); } options.Security.DepthStep(ref reader); @@ -810,26 +783,26 @@ namespace MessagePack.Formatters.SharedData public sealed class RootUnionTypeFormatter : global::MessagePack.Formatters.IMessagePackFormatter { - private readonly Dictionary> typeToKeyAndJumpMap; - private readonly Dictionary keyToJumpMap; + private readonly global::System.Collections.Generic.Dictionary> typeToKeyAndJumpMap; + private readonly global::System.Collections.Generic.Dictionary keyToJumpMap; public RootUnionTypeFormatter() { - this.typeToKeyAndJumpMap = new Dictionary>(2, global::MessagePack.Internal.RuntimeTypeHandleEqualityComparer.Default) + this.typeToKeyAndJumpMap = new global::System.Collections.Generic.Dictionary>(2, global::MessagePack.Internal.RuntimeTypeHandleEqualityComparer.Default) { - { typeof(global::SharedData.SubUnionType1).TypeHandle, new KeyValuePair(0, 0) }, - { typeof(global::SharedData.SubUnionType2).TypeHandle, new KeyValuePair(1, 1) }, + { typeof(global::SharedData.SubUnionType1).TypeHandle, new global::System.Collections.Generic.KeyValuePair(0, 0) }, + { typeof(global::SharedData.SubUnionType2).TypeHandle, new global::System.Collections.Generic.KeyValuePair(1, 1) }, }; - this.keyToJumpMap = new Dictionary(2) + this.keyToJumpMap = new global::System.Collections.Generic.Dictionary(2) { { 0, 0 }, { 1, 1 }, }; } - public void Serialize(ref MessagePackWriter writer, global::SharedData.RootUnionType value, global::MessagePack.MessagePackSerializerOptions options) + public void Serialize(ref global::MessagePack.MessagePackWriter writer, global::SharedData.RootUnionType value, global::MessagePack.MessagePackSerializerOptions options) { - KeyValuePair keyValuePair; + global::System.Collections.Generic.KeyValuePair keyValuePair; if (value != null && this.typeToKeyAndJumpMap.TryGetValue(value.GetType().TypeHandle, out keyValuePair)) { writer.WriteArrayHeader(2); @@ -852,7 +825,7 @@ namespace MessagePack.Formatters.SharedData writer.WriteNil(); } - public global::SharedData.RootUnionType Deserialize(ref MessagePackReader reader, global::MessagePack.MessagePackSerializerOptions options) + public global::SharedData.RootUnionType Deserialize(ref global::MessagePack.MessagePackReader reader, global::MessagePack.MessagePackSerializerOptions options) { if (reader.TryReadNil()) { @@ -861,7 +834,7 @@ namespace MessagePack.Formatters.SharedData if (reader.ReadArrayHeader() != 2) { - throw new InvalidOperationException("Invalid Union data was detected. Type:global::SharedData.RootUnionType"); + throw new global::System.InvalidOperationException("Invalid Union data was detected. Type:global::SharedData.RootUnionType"); } options.Security.DepthStep(ref reader); @@ -899,7 +872,6 @@ namespace MessagePack.Formatters.SharedData #pragma warning restore 618 #pragma warning restore 612 -#pragma warning restore SA1200 // Using directives should be placed correctly #pragma warning restore SA1403 // File may only contain a single namespace #pragma warning restore SA1649 // File name should match first type name @@ -914,7 +886,6 @@ namespace MessagePack.Formatters.SharedData #pragma warning disable 168 #pragma warning disable SA1129 // Do not use default value type constructor -#pragma warning disable SA1200 // Using directives should be placed correctly #pragma warning disable SA1309 // Field names should not begin with underscore #pragma warning disable SA1312 // Variable names should begin with lower-case letter #pragma warning disable SA1403 // File may only contain a single namespace @@ -922,9 +893,6 @@ namespace MessagePack.Formatters.SharedData namespace MessagePack.Formatters.Abcdefg.Efcdigjl.Ateatatea.Hgfagfafgad { - using global::System.Buffers; - using global::MessagePack; - public sealed class TnonodsfarnoiuAtatqagaFormatter : global::MessagePack.Formatters.IMessagePackFormatter { @@ -968,6 +936,7 @@ namespace MessagePack.Formatters.Abcdefg.Efcdigjl.Ateatatea.Hgfagfafgad return ____result; } } + } #pragma warning restore 168 @@ -976,7 +945,6 @@ namespace MessagePack.Formatters.Abcdefg.Efcdigjl.Ateatatea.Hgfagfafgad #pragma warning restore 612 #pragma warning restore SA1129 // Do not use default value type constructor -#pragma warning restore SA1200 // Using directives should be placed correctly #pragma warning restore SA1309 // Field names should not begin with underscore #pragma warning restore SA1312 // Variable names should begin with lower-case letter #pragma warning restore SA1403 // File may only contain a single namespace @@ -992,7 +960,6 @@ namespace MessagePack.Formatters.Abcdefg.Efcdigjl.Ateatatea.Hgfagfafgad #pragma warning disable 168 #pragma warning disable SA1129 // Do not use default value type constructor -#pragma warning disable SA1200 // Using directives should be placed correctly #pragma warning disable SA1309 // Field names should not begin with underscore #pragma warning disable SA1312 // Variable names should begin with lower-case letter #pragma warning disable SA1403 // File may only contain a single namespace @@ -1000,9 +967,6 @@ namespace MessagePack.Formatters.Abcdefg.Efcdigjl.Ateatatea.Hgfagfafgad namespace MessagePack.Formatters { - using global::System.Buffers; - using global::MessagePack; - public sealed class ArrayTestTestFormatter : global::MessagePack.Formatters.IMessagePackFormatter { @@ -1016,13 +980,13 @@ namespace MessagePack.Formatters global::MessagePack.IFormatterResolver formatterResolver = options.Resolver; writer.WriteArrayHeader(7); - formatterResolver.GetFormatterWithVerify().Serialize(ref writer, value.MyProperty0, options); - formatterResolver.GetFormatterWithVerify().Serialize(ref writer, value.MyProperty1, options); - formatterResolver.GetFormatterWithVerify().Serialize(ref writer, value.MyProperty2, options); - formatterResolver.GetFormatterWithVerify().Serialize(ref writer, value.MyProperty3, options); - formatterResolver.GetFormatterWithVerify().Serialize(ref writer, value.MyProperty4, options); - formatterResolver.GetFormatterWithVerify().Serialize(ref writer, value.MyProperty5, options); - formatterResolver.GetFormatterWithVerify().Serialize(ref writer, value.MyProperty6, options); + global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Serialize(ref writer, value.MyProperty0, options); + global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Serialize(ref writer, value.MyProperty1, options); + global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Serialize(ref writer, value.MyProperty2, options); + global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Serialize(ref writer, value.MyProperty3, options); + global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Serialize(ref writer, value.MyProperty4, options); + global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Serialize(ref writer, value.MyProperty5, options); + global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Serialize(ref writer, value.MyProperty6, options); } public global::ArrayTestTest Deserialize(ref global::MessagePack.MessagePackReader reader, global::MessagePack.MessagePackSerializerOptions options) @@ -1042,25 +1006,25 @@ namespace MessagePack.Formatters switch (i) { case 0: - ____result.MyProperty0 = formatterResolver.GetFormatterWithVerify().Deserialize(ref reader, options); + ____result.MyProperty0 = global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Deserialize(ref reader, options); break; case 1: - ____result.MyProperty1 = formatterResolver.GetFormatterWithVerify().Deserialize(ref reader, options); + ____result.MyProperty1 = global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Deserialize(ref reader, options); break; case 2: - ____result.MyProperty2 = formatterResolver.GetFormatterWithVerify().Deserialize(ref reader, options); + ____result.MyProperty2 = global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Deserialize(ref reader, options); break; case 3: - ____result.MyProperty3 = formatterResolver.GetFormatterWithVerify().Deserialize(ref reader, options); + ____result.MyProperty3 = global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Deserialize(ref reader, options); break; case 4: - ____result.MyProperty4 = formatterResolver.GetFormatterWithVerify().Deserialize(ref reader, options); + ____result.MyProperty4 = global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Deserialize(ref reader, options); break; case 5: - ____result.MyProperty5 = formatterResolver.GetFormatterWithVerify().Deserialize(ref reader, options); + ____result.MyProperty5 = global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Deserialize(ref reader, options); break; case 6: - ____result.MyProperty6 = formatterResolver.GetFormatterWithVerify().Deserialize(ref reader, options); + ____result.MyProperty6 = global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Deserialize(ref reader, options); break; default: reader.Skip(); @@ -1132,8 +1096,8 @@ namespace MessagePack.Formatters writer.WriteArrayHeader(4); writer.Write(value.UserId); writer.Write(value.RoomId); - formatterResolver.GetFormatterWithVerify().Serialize(ref writer, value.PostTime, options); - formatterResolver.GetFormatterWithVerify().Serialize(ref writer, value.Body, options); + global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Serialize(ref writer, value.PostTime, options); + global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Serialize(ref writer, value.Body, options); } public global::Message Deserialize(ref global::MessagePack.MessagePackReader reader, global::MessagePack.MessagePackSerializerOptions options) @@ -1159,10 +1123,10 @@ namespace MessagePack.Formatters ____result.RoomId = reader.ReadInt32(); break; case 2: - ____result.PostTime = formatterResolver.GetFormatterWithVerify().Deserialize(ref reader, options); + ____result.PostTime = global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Deserialize(ref reader, options); break; case 3: - ____result.Body = formatterResolver.GetFormatterWithVerify().Deserialize(ref reader, options); + ____result.Body = global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Deserialize(ref reader, options); break; default: reader.Skip(); @@ -1234,7 +1198,7 @@ namespace MessagePack.Formatters global::MessagePack.IFormatterResolver formatterResolver = options.Resolver; writer.WriteArrayHeader(2); writer.Write(value.QuestId); - formatterResolver.GetFormatterWithVerify().Serialize(ref writer, value.Text, options); + global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Serialize(ref writer, value.Text, options); } public global::QuestMessageBody Deserialize(ref global::MessagePack.MessagePackReader reader, global::MessagePack.MessagePackSerializerOptions options) @@ -1257,7 +1221,7 @@ namespace MessagePack.Formatters ____result.QuestId = reader.ReadInt32(); break; case 1: - ____result.Text = formatterResolver.GetFormatterWithVerify().Deserialize(ref reader, options); + ____result.Text = global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Deserialize(ref reader, options); break; default: reader.Skip(); @@ -1327,7 +1291,7 @@ namespace MessagePack.Formatters global::MessagePack.IFormatterResolver formatterResolver = options.Resolver; writer.WriteArrayHeader(1); - formatterResolver.GetFormatterWithVerify().Serialize(ref writer, value.Text, options); + global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Serialize(ref writer, value.Text, options); } public global::TextMessageBody Deserialize(ref global::MessagePack.MessagePackReader reader, global::MessagePack.MessagePackSerializerOptions options) @@ -1347,7 +1311,7 @@ namespace MessagePack.Formatters switch (i) { case 0: - ____result.Text = formatterResolver.GetFormatterWithVerify().Deserialize(ref reader, options); + ____result.Text = global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Deserialize(ref reader, options); break; default: reader.Skip(); @@ -1359,6 +1323,7 @@ namespace MessagePack.Formatters return ____result; } } + } #pragma warning restore 168 @@ -1367,7 +1332,6 @@ namespace MessagePack.Formatters #pragma warning restore 612 #pragma warning restore SA1129 // Do not use default value type constructor -#pragma warning restore SA1200 // Using directives should be placed correctly #pragma warning restore SA1309 // Field names should not begin with underscore #pragma warning restore SA1312 // Variable names should begin with lower-case letter #pragma warning restore SA1403 // File may only contain a single namespace @@ -1383,7 +1347,6 @@ namespace MessagePack.Formatters #pragma warning disable 168 #pragma warning disable SA1129 // Do not use default value type constructor -#pragma warning disable SA1200 // Using directives should be placed correctly #pragma warning disable SA1309 // Field names should not begin with underscore #pragma warning disable SA1312 // Variable names should begin with lower-case letter #pragma warning disable SA1403 // File may only contain a single namespace @@ -1391,9 +1354,6 @@ namespace MessagePack.Formatters namespace MessagePack.Formatters { - using global::System.Buffers; - using global::MessagePack; - public sealed class ComplexModelFormatter : global::MessagePack.Formatters.IMessagePackFormatter { // AdditionalProperty @@ -1420,17 +1380,17 @@ namespace MessagePack.Formatters var formatterResolver = options.Resolver; writer.WriteMapHeader(6); writer.WriteRaw(GetSpan_AdditionalProperty()); - formatterResolver.GetFormatterWithVerify>().Serialize(ref writer, value.AdditionalProperty, options); + global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify>(formatterResolver).Serialize(ref writer, value.AdditionalProperty, options); writer.WriteRaw(GetSpan_CreatedOn()); - formatterResolver.GetFormatterWithVerify().Serialize(ref writer, value.CreatedOn, options); + global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Serialize(ref writer, value.CreatedOn, options); writer.WriteRaw(GetSpan_Id()); - formatterResolver.GetFormatterWithVerify().Serialize(ref writer, value.Id, options); + global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Serialize(ref writer, value.Id, options); writer.WriteRaw(GetSpan_Name()); - formatterResolver.GetFormatterWithVerify().Serialize(ref writer, value.Name, options); + global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Serialize(ref writer, value.Name, options); writer.WriteRaw(GetSpan_UpdatedOn()); - formatterResolver.GetFormatterWithVerify().Serialize(ref writer, value.UpdatedOn, options); + global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Serialize(ref writer, value.UpdatedOn, options); writer.WriteRaw(GetSpan_SimpleModels()); - formatterResolver.GetFormatterWithVerify>().Serialize(ref writer, value.SimpleModels, options); + global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify>(formatterResolver).Serialize(ref writer, value.SimpleModels, options); } public global::ComplexModel Deserialize(ref global::MessagePack.MessagePackReader reader, global::MessagePack.MessagePackSerializerOptions options) @@ -1466,25 +1426,25 @@ namespace MessagePack.Formatters case 5720808977192022595UL: if (stringKey[0] != 110) { goto FAIL; } - ____result.CreatedOn = formatterResolver.GetFormatterWithVerify().Deserialize(ref reader, options); + ____result.CreatedOn = global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Deserialize(ref reader, options); continue; case 5720808977191956565UL: if (stringKey[0] != 110) { goto FAIL; } - ____result.UpdatedOn = formatterResolver.GetFormatterWithVerify().Deserialize(ref reader, options); + ____result.UpdatedOn = global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Deserialize(ref reader, options); continue; } case 2: if (global::MessagePack.Internal.AutomataKeyGen.GetKey(ref stringKey) != 25673UL) { goto FAIL; } - ____result.Id = formatterResolver.GetFormatterWithVerify().Deserialize(ref reader, options); + ____result.Id = global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Deserialize(ref reader, options); continue; case 4: if (global::MessagePack.Internal.AutomataKeyGen.GetKey(ref stringKey) != 1701667150UL) { goto FAIL; } - ____result.Name = formatterResolver.GetFormatterWithVerify().Deserialize(ref reader, options); + ____result.Name = global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Deserialize(ref reader, options); continue; case 12: if (!global::System.MemoryExtensions.SequenceEqual(stringKey, GetSpan_SimpleModels().Slice(1))) { goto FAIL; } @@ -1528,13 +1488,13 @@ namespace MessagePack.Formatters writer.WriteRaw(GetSpan_Id()); writer.Write(value.Id); writer.WriteRaw(GetSpan_Name()); - formatterResolver.GetFormatterWithVerify().Serialize(ref writer, value.Name, options); + global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Serialize(ref writer, value.Name, options); writer.WriteRaw(GetSpan_CreatedOn()); - formatterResolver.GetFormatterWithVerify().Serialize(ref writer, value.CreatedOn, options); + global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Serialize(ref writer, value.CreatedOn, options); writer.WriteRaw(GetSpan_Precision()); writer.Write(value.Precision); writer.WriteRaw(GetSpan_Money()); - formatterResolver.GetFormatterWithVerify().Serialize(ref writer, value.Money, options); + global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Serialize(ref writer, value.Money, options); writer.WriteRaw(GetSpan_Amount()); writer.Write(value.Amount); } @@ -1568,7 +1528,7 @@ namespace MessagePack.Formatters case 4: if (global::MessagePack.Internal.AutomataKeyGen.GetKey(ref stringKey) != 1701667150UL) { goto FAIL; } - ____result.Name = formatterResolver.GetFormatterWithVerify().Deserialize(ref reader, options); + ____result.Name = global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Deserialize(ref reader, options); continue; case 9: switch (global::MessagePack.Internal.AutomataKeyGen.GetKey(ref stringKey)) @@ -1577,7 +1537,7 @@ namespace MessagePack.Formatters case 5720808977192022595UL: if (stringKey[0] != 110) { goto FAIL; } - ____result.CreatedOn = formatterResolver.GetFormatterWithVerify().Deserialize(ref reader, options); + ____result.CreatedOn = global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Deserialize(ref reader, options); continue; case 8028074707240972880UL: @@ -1590,7 +1550,7 @@ namespace MessagePack.Formatters case 5: if (global::MessagePack.Internal.AutomataKeyGen.GetKey(ref stringKey) != 521392779085UL) { goto FAIL; } - ____result.Money = formatterResolver.GetFormatterWithVerify().Deserialize(ref reader, options); + ____result.Money = global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Deserialize(ref reader, options); continue; case 6: if (global::MessagePack.Internal.AutomataKeyGen.GetKey(ref stringKey) != 128017765461313UL) { goto FAIL; } @@ -1605,8 +1565,20 @@ namespace MessagePack.Formatters return ____result; } } + } +#pragma warning restore 168 +#pragma warning restore 414 +#pragma warning restore 618 +#pragma warning restore 612 + +#pragma warning restore SA1129 // Do not use default value type constructor +#pragma warning restore SA1309 // Field names should not begin with underscore +#pragma warning restore SA1312 // Variable names should begin with lower-case letter +#pragma warning restore SA1403 // File may only contain a single namespace +#pragma warning restore SA1649 // File name should match first type name + // // THIS (.cs) FILE IS GENERATED BY MPC(MessagePack-CSharp). DO NOT CHANGE IT. // @@ -1617,7 +1589,6 @@ namespace MessagePack.Formatters #pragma warning disable 168 #pragma warning disable SA1129 // Do not use default value type constructor -#pragma warning disable SA1200 // Using directives should be placed correctly #pragma warning disable SA1309 // Field names should not begin with underscore #pragma warning disable SA1312 // Variable names should begin with lower-case letter #pragma warning disable SA1403 // File may only contain a single namespace @@ -1625,9 +1596,6 @@ namespace MessagePack.Formatters namespace MessagePack.Formatters.PerfBenchmarkDotNet { - using global::System.Buffers; - using global::MessagePack; - public sealed class StringKeySerializerTargetFormatter : global::MessagePack.Formatters.IMessagePackFormatter { // MyProperty1 @@ -1744,8 +1712,20 @@ namespace MessagePack.Formatters.PerfBenchmarkDotNet return ____result; } } + } +#pragma warning restore 168 +#pragma warning restore 414 +#pragma warning restore 618 +#pragma warning restore 612 + +#pragma warning restore SA1129 // Do not use default value type constructor +#pragma warning restore SA1309 // Field names should not begin with underscore +#pragma warning restore SA1312 // Variable names should begin with lower-case letter +#pragma warning restore SA1403 // File may only contain a single namespace +#pragma warning restore SA1649 // File name should match first type name + // // THIS (.cs) FILE IS GENERATED BY MPC(MessagePack-CSharp). DO NOT CHANGE IT. // @@ -1756,7 +1736,6 @@ namespace MessagePack.Formatters.PerfBenchmarkDotNet #pragma warning disable 168 #pragma warning disable SA1129 // Do not use default value type constructor -#pragma warning disable SA1200 // Using directives should be placed correctly #pragma warning disable SA1309 // Field names should not begin with underscore #pragma warning disable SA1312 // Variable names should begin with lower-case letter #pragma warning disable SA1403 // File may only contain a single namespace @@ -1764,9 +1743,6 @@ namespace MessagePack.Formatters.PerfBenchmarkDotNet namespace MessagePack.Formatters.SharedData { - using global::System.Buffers; - using global::MessagePack; - public sealed class ArrayOptimizeClassFormatter : global::MessagePack.Formatters.IMessagePackFormatter { @@ -1884,7 +1860,7 @@ namespace MessagePack.Formatters.SharedData global::MessagePack.IFormatterResolver formatterResolver = options.Resolver; writer.WriteArrayHeader(1); - formatterResolver.GetFormatterWithVerify().Serialize(ref writer, value.OPQ, options); + global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Serialize(ref writer, value.OPQ, options); } public global::SharedData.BarClass Deserialize(ref global::MessagePack.MessagePackReader reader, global::MessagePack.MessagePackSerializerOptions options) @@ -1904,7 +1880,7 @@ namespace MessagePack.Formatters.SharedData switch (i) { case 0: - ____result.OPQ = formatterResolver.GetFormatterWithVerify().Deserialize(ref reader, options); + ____result.OPQ = global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Deserialize(ref reader, options); break; default: reader.Skip(); @@ -2026,8 +2002,8 @@ namespace MessagePack.Formatters.SharedData writer.WriteArrayHeader(4); writer.Write(value.Prop1); writer.Write(value.Prop2); - formatterResolver.GetFormatterWithVerify().Serialize(ref writer, value.Prop3, options); - formatterResolver.GetFormatterWithVerify().Serialize(ref writer, value.Prop4, options); + global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Serialize(ref writer, value.Prop3, options); + global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Serialize(ref writer, value.Prop4, options); } public global::SharedData.DefaultValueIntKeyClassWithExplicitConstructor Deserialize(ref global::MessagePack.MessagePackReader reader, global::MessagePack.MessagePackSerializerOptions options) @@ -2056,10 +2032,10 @@ namespace MessagePack.Formatters.SharedData __Prop2__ = reader.ReadInt32(); break; case 2: - __Prop3__ = formatterResolver.GetFormatterWithVerify().Deserialize(ref reader, options); + __Prop3__ = global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Deserialize(ref reader, options); break; case 3: - __Prop4__ = formatterResolver.GetFormatterWithVerify().Deserialize(ref reader, options); + __Prop4__ = global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Deserialize(ref reader, options); break; default: reader.Skip(); @@ -2200,15 +2176,15 @@ namespace MessagePack.Formatters.SharedData { global::MessagePack.IFormatterResolver formatterResolver = options.Resolver; writer.WriteArrayHeader(9); - formatterResolver.GetFormatterWithVerify().Serialize(ref writer, value.Item1, options); - formatterResolver.GetFormatterWithVerify().Serialize(ref writer, value.Item2, options); - formatterResolver.GetFormatterWithVerify().Serialize(ref writer, value.Item3, options); - formatterResolver.GetFormatterWithVerify().Serialize(ref writer, value.Item4, options); - formatterResolver.GetFormatterWithVerify().Serialize(ref writer, value.Item5, options); - formatterResolver.GetFormatterWithVerify().Serialize(ref writer, value.Item6, options); - formatterResolver.GetFormatterWithVerify().Serialize(ref writer, value.Item7, options); - formatterResolver.GetFormatterWithVerify().Serialize(ref writer, value.Item8, options); - formatterResolver.GetFormatterWithVerify().Serialize(ref writer, value.Item9, options); + global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Serialize(ref writer, value.Item1, options); + global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Serialize(ref writer, value.Item2, options); + global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Serialize(ref writer, value.Item3, options); + global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Serialize(ref writer, value.Item4, options); + global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Serialize(ref writer, value.Item5, options); + global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Serialize(ref writer, value.Item6, options); + global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Serialize(ref writer, value.Item7, options); + global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Serialize(ref writer, value.Item8, options); + global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Serialize(ref writer, value.Item9, options); } public global::SharedData.DynamicArgumentTuple Deserialize(ref global::MessagePack.MessagePackReader reader, global::MessagePack.MessagePackSerializerOptions options) @@ -2236,31 +2212,31 @@ namespace MessagePack.Formatters.SharedData switch (i) { case 0: - __Item1__ = formatterResolver.GetFormatterWithVerify().Deserialize(ref reader, options); + __Item1__ = global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Deserialize(ref reader, options); break; case 1: - __Item2__ = formatterResolver.GetFormatterWithVerify().Deserialize(ref reader, options); + __Item2__ = global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Deserialize(ref reader, options); break; case 2: - __Item3__ = formatterResolver.GetFormatterWithVerify().Deserialize(ref reader, options); + __Item3__ = global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Deserialize(ref reader, options); break; case 3: - __Item4__ = formatterResolver.GetFormatterWithVerify().Deserialize(ref reader, options); + __Item4__ = global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Deserialize(ref reader, options); break; case 4: - __Item5__ = formatterResolver.GetFormatterWithVerify().Deserialize(ref reader, options); + __Item5__ = global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Deserialize(ref reader, options); break; case 5: - __Item6__ = formatterResolver.GetFormatterWithVerify().Deserialize(ref reader, options); + __Item6__ = global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Deserialize(ref reader, options); break; case 6: - __Item7__ = formatterResolver.GetFormatterWithVerify().Deserialize(ref reader, options); + __Item7__ = global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Deserialize(ref reader, options); break; case 7: - __Item8__ = formatterResolver.GetFormatterWithVerify().Deserialize(ref reader, options); + __Item8__ = global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Deserialize(ref reader, options); break; case 8: - __Item9__ = formatterResolver.GetFormatterWithVerify().Deserialize(ref reader, options); + __Item9__ = global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Deserialize(ref reader, options); break; default: reader.Skip(); @@ -2360,7 +2336,7 @@ namespace MessagePack.Formatters.SharedData global::MessagePack.IFormatterResolver formatterResolver = options.Resolver; writer.WriteArrayHeader(3); writer.Write(value.Prop1); - formatterResolver.GetFormatterWithVerify().Serialize(ref writer, value.Prop2, options); + global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Serialize(ref writer, value.Prop2, options); writer.Write(value.Prop3); } @@ -2384,7 +2360,7 @@ namespace MessagePack.Formatters.SharedData ____result.Prop1 = reader.ReadInt32(); break; case 1: - ____result.Prop2 = formatterResolver.GetFormatterWithVerify().Deserialize(ref reader, options); + ____result.Prop2 = global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Deserialize(ref reader, options); break; case 2: ____result.Prop3 = reader.ReadInt32(); @@ -2457,8 +2433,8 @@ namespace MessagePack.Formatters.SharedData global::MessagePack.IFormatterResolver formatterResolver = options.Resolver; writer.WriteArrayHeader(2); - formatterResolver.GetFormatterWithVerify().Serialize(ref writer, value.MyProperty0, options); - formatterResolver.GetFormatterWithVerify().Serialize(ref writer, value.MyProperty1, options); + global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Serialize(ref writer, value.MyProperty0, options); + global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Serialize(ref writer, value.MyProperty1, options); } public global::SharedData.GenericClass Deserialize(ref global::MessagePack.MessagePackReader reader, global::MessagePack.MessagePackSerializerOptions options) @@ -2478,10 +2454,10 @@ namespace MessagePack.Formatters.SharedData switch (i) { case 0: - ____result.MyProperty0 = formatterResolver.GetFormatterWithVerify().Deserialize(ref reader, options); + ____result.MyProperty0 = global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Deserialize(ref reader, options); break; case 1: - ____result.MyProperty1 = formatterResolver.GetFormatterWithVerify().Deserialize(ref reader, options); + ____result.MyProperty1 = global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Deserialize(ref reader, options); break; default: reader.Skip(); @@ -2509,8 +2485,8 @@ namespace MessagePack.Formatters.SharedData global::MessagePack.IFormatterResolver formatterResolver = options.Resolver; writer.WriteArrayHeader(2); - formatterResolver.GetFormatterWithVerify().Serialize(ref writer, value.MyProperty0, options); - formatterResolver.GetFormatterWithVerify().Serialize(ref writer, value.Comparer, options); + global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Serialize(ref writer, value.MyProperty0, options); + global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Serialize(ref writer, value.Comparer, options); } public global::SharedData.GenericConstrainedClassIntKey Deserialize(ref global::MessagePack.MessagePackReader reader, global::MessagePack.MessagePackSerializerOptions options) @@ -2530,10 +2506,10 @@ namespace MessagePack.Formatters.SharedData switch (i) { case 0: - ____result.MyProperty0 = formatterResolver.GetFormatterWithVerify().Deserialize(ref reader, options); + ____result.MyProperty0 = global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Deserialize(ref reader, options); break; case 1: - ____result.Comparer = formatterResolver.GetFormatterWithVerify().Deserialize(ref reader, options); + ____result.Comparer = global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Deserialize(ref reader, options); break; default: reader.Skip(); @@ -2555,8 +2531,8 @@ namespace MessagePack.Formatters.SharedData { global::MessagePack.IFormatterResolver formatterResolver = options.Resolver; writer.WriteArrayHeader(2); - formatterResolver.GetFormatterWithVerify().Serialize(ref writer, value.MyProperty0, options); - formatterResolver.GetFormatterWithVerify().Serialize(ref writer, value.Comparer, options); + global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Serialize(ref writer, value.MyProperty0, options); + global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Serialize(ref writer, value.Comparer, options); } public global::SharedData.GenericConstrainedStructIntKey Deserialize(ref global::MessagePack.MessagePackReader reader, global::MessagePack.MessagePackSerializerOptions options) @@ -2576,10 +2552,10 @@ namespace MessagePack.Formatters.SharedData switch (i) { case 0: - ____result.MyProperty0 = formatterResolver.GetFormatterWithVerify().Deserialize(ref reader, options); + ____result.MyProperty0 = global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Deserialize(ref reader, options); break; case 1: - ____result.Comparer = formatterResolver.GetFormatterWithVerify().Deserialize(ref reader, options); + ____result.Comparer = global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Deserialize(ref reader, options); break; default: reader.Skip(); @@ -2599,8 +2575,8 @@ namespace MessagePack.Formatters.SharedData { global::MessagePack.IFormatterResolver formatterResolver = options.Resolver; writer.WriteArrayHeader(2); - formatterResolver.GetFormatterWithVerify().Serialize(ref writer, value.MyProperty0, options); - formatterResolver.GetFormatterWithVerify().Serialize(ref writer, value.MyProperty1, options); + global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Serialize(ref writer, value.MyProperty0, options); + global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Serialize(ref writer, value.MyProperty1, options); } public global::SharedData.GenericStruct Deserialize(ref global::MessagePack.MessagePackReader reader, global::MessagePack.MessagePackSerializerOptions options) @@ -2620,10 +2596,10 @@ namespace MessagePack.Formatters.SharedData switch (i) { case 0: - ____result.MyProperty0 = formatterResolver.GetFormatterWithVerify().Deserialize(ref reader, options); + ____result.MyProperty0 = global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Deserialize(ref reader, options); break; case 1: - ____result.MyProperty1 = formatterResolver.GetFormatterWithVerify().Deserialize(ref reader, options); + ____result.MyProperty1 = global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Deserialize(ref reader, options); break; default: reader.Skip(); @@ -2649,7 +2625,7 @@ namespace MessagePack.Formatters.SharedData global::MessagePack.IFormatterResolver formatterResolver = options.Resolver; writer.WriteArrayHeader(2); - formatterResolver.GetFormatterWithVerify().Serialize(ref writer, value.MyProperty1, options); + global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Serialize(ref writer, value.MyProperty1, options); writer.Write(value.After); } @@ -2670,7 +2646,7 @@ namespace MessagePack.Formatters.SharedData switch (i) { case 0: - ____result.MyProperty1 = formatterResolver.GetFormatterWithVerify().Deserialize(ref reader, options); + ____result.MyProperty1 = global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Deserialize(ref reader, options); break; case 1: ____result.After = reader.ReadInt32(); @@ -2699,7 +2675,7 @@ namespace MessagePack.Formatters.SharedData global::MessagePack.IFormatterResolver formatterResolver = options.Resolver; writer.WriteArrayHeader(2); - formatterResolver.GetFormatterWithVerify().Serialize(ref writer, value.MyProperty1, options); + global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Serialize(ref writer, value.MyProperty1, options); writer.Write(value.After); } @@ -2720,7 +2696,7 @@ namespace MessagePack.Formatters.SharedData switch (i) { case 0: - ____result.MyProperty1 = formatterResolver.GetFormatterWithVerify().Deserialize(ref reader, options); + ____result.MyProperty1 = global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Deserialize(ref reader, options); break; case 1: ____result.After = reader.ReadInt32(); @@ -2749,7 +2725,7 @@ namespace MessagePack.Formatters.SharedData global::MessagePack.IFormatterResolver formatterResolver = options.Resolver; writer.WriteArrayHeader(2); - formatterResolver.GetFormatterWithVerify().Serialize(ref writer, value.MyProperty1, options); + global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Serialize(ref writer, value.MyProperty1, options); writer.Write(value.After); } @@ -2770,7 +2746,7 @@ namespace MessagePack.Formatters.SharedData switch (i) { case 0: - ____result.MyProperty1 = formatterResolver.GetFormatterWithVerify().Deserialize(ref reader, options); + ____result.MyProperty1 = global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Deserialize(ref reader, options); break; case 1: ____result.After = reader.ReadInt32(); @@ -3121,11 +3097,11 @@ namespace MessagePack.Formatters.SharedData global::MessagePack.IFormatterResolver formatterResolver = options.Resolver; writer.WriteArrayHeader(7); writer.Write(value.Prop1); - formatterResolver.GetFormatterWithVerify().Serialize(ref writer, value.Prop2, options); - formatterResolver.GetFormatterWithVerify().Serialize(ref writer, value.Prop3, options); - formatterResolver.GetFormatterWithVerify().Serialize(ref writer, value.Prop4, options); - formatterResolver.GetFormatterWithVerify().Serialize(ref writer, value.Prop5, options); - formatterResolver.GetFormatterWithVerify().Serialize(ref writer, value.Prop6, options); + global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Serialize(ref writer, value.Prop2, options); + global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Serialize(ref writer, value.Prop3, options); + global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Serialize(ref writer, value.Prop4, options); + global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Serialize(ref writer, value.Prop5, options); + global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Serialize(ref writer, value.Prop6, options); writer.Write(value.BytesSpecial); } @@ -3149,22 +3125,22 @@ namespace MessagePack.Formatters.SharedData ____result.Prop1 = reader.ReadInt32(); break; case 1: - ____result.Prop2 = formatterResolver.GetFormatterWithVerify().Deserialize(ref reader, options); + ____result.Prop2 = global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Deserialize(ref reader, options); break; case 2: - ____result.Prop3 = formatterResolver.GetFormatterWithVerify().Deserialize(ref reader, options); + ____result.Prop3 = global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Deserialize(ref reader, options); break; case 3: - ____result.Prop4 = formatterResolver.GetFormatterWithVerify().Deserialize(ref reader, options); + ____result.Prop4 = global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Deserialize(ref reader, options); break; case 4: - ____result.Prop5 = formatterResolver.GetFormatterWithVerify().Deserialize(ref reader, options); + ____result.Prop5 = global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Deserialize(ref reader, options); break; case 5: - ____result.Prop6 = formatterResolver.GetFormatterWithVerify().Deserialize(ref reader, options); + ____result.Prop6 = global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Deserialize(ref reader, options); break; case 6: - ____result.BytesSpecial = reader.ReadBytes()?.ToArray(); + ____result.BytesSpecial = global::MessagePack.Internal.CodeGenHelpers.GetArrayFromNullableSequence(reader.ReadBytes()); break; default: reader.Skip(); @@ -3210,7 +3186,7 @@ namespace MessagePack.Formatters.SharedData ____result.Y = reader.ReadInt32(); break; case 2: - ____result.BytesSpecial = reader.ReadBytes()?.ToArray(); + ____result.BytesSpecial = global::MessagePack.Internal.CodeGenHelpers.GetArrayFromNullableSequence(reader.ReadBytes()); break; default: reader.Skip(); @@ -3681,7 +3657,7 @@ namespace MessagePack.Formatters.SharedData global::MessagePack.IFormatterResolver formatterResolver = options.Resolver; writer.WriteArrayHeader(3); writer.Write(value.MyProperty); - formatterResolver.GetFormatterWithVerify().Serialize(ref writer, value.UnknownBlock, options); + global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Serialize(ref writer, value.UnknownBlock, options); writer.Write(value.MyProperty2); } @@ -3705,7 +3681,7 @@ namespace MessagePack.Formatters.SharedData ____result.MyProperty = reader.ReadInt32(); break; case 1: - ____result.UnknownBlock = formatterResolver.GetFormatterWithVerify().Deserialize(ref reader, options); + ____result.UnknownBlock = global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Deserialize(ref reader, options); break; case 2: ____result.MyProperty2 = reader.ReadInt32(); @@ -3786,7 +3762,7 @@ namespace MessagePack.Formatters.SharedData global::MessagePack.IFormatterResolver formatterResolver = options.Resolver; writer.WriteArrayHeader(2); writer.Write(value.Data1); - formatterResolver.GetFormatterWithVerify().Serialize(ref writer, value.Data2, options); + global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Serialize(ref writer, value.Data2, options); } public global::SharedData.WithIndexer Deserialize(ref global::MessagePack.MessagePackReader reader, global::MessagePack.MessagePackSerializerOptions options) @@ -3809,7 +3785,7 @@ namespace MessagePack.Formatters.SharedData ____result.Data1 = reader.ReadInt32(); break; case 1: - ____result.Data2 = formatterResolver.GetFormatterWithVerify().Deserialize(ref reader, options); + ____result.Data2 = global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Deserialize(ref reader, options); break; default: reader.Skip(); @@ -3821,6 +3797,7 @@ namespace MessagePack.Formatters.SharedData return ____result; } } + } #pragma warning restore 168 @@ -3829,7 +3806,6 @@ namespace MessagePack.Formatters.SharedData #pragma warning restore 612 #pragma warning restore SA1129 // Do not use default value type constructor -#pragma warning restore SA1200 // Using directives should be placed correctly #pragma warning restore SA1309 // Field names should not begin with underscore #pragma warning restore SA1312 // Variable names should begin with lower-case letter #pragma warning restore SA1403 // File may only contain a single namespace @@ -3845,7 +3821,6 @@ namespace MessagePack.Formatters.SharedData #pragma warning disable 168 #pragma warning disable SA1129 // Do not use default value type constructor -#pragma warning disable SA1200 // Using directives should be placed correctly #pragma warning disable SA1309 // Field names should not begin with underscore #pragma warning disable SA1312 // Variable names should begin with lower-case letter #pragma warning disable SA1403 // File may only contain a single namespace @@ -3853,9 +3828,6 @@ namespace MessagePack.Formatters.SharedData namespace MessagePack.Formatters.SharedData { - using global::System.Buffers; - using global::MessagePack; - public sealed class Callback2Formatter : global::MessagePack.Formatters.IMessagePackFormatter { // X @@ -4198,9 +4170,9 @@ namespace MessagePack.Formatters.SharedData var formatterResolver = options.Resolver; writer.WriteMapHeader(2); writer.WriteRaw(GetSpan_MyProperty0()); - formatterResolver.GetFormatterWithVerify().Serialize(ref writer, value.MyProperty0, options); + global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Serialize(ref writer, value.MyProperty0, options); writer.WriteRaw(GetSpan_Comparer()); - formatterResolver.GetFormatterWithVerify().Serialize(ref writer, value.Comparer, options); + global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Serialize(ref writer, value.Comparer, options); } public global::SharedData.GenericConstrainedClassStringKey Deserialize(ref global::MessagePack.MessagePackReader reader, global::MessagePack.MessagePackSerializerOptions options) @@ -4227,12 +4199,12 @@ namespace MessagePack.Formatters.SharedData case 11: if (!global::System.MemoryExtensions.SequenceEqual(stringKey, GetSpan_MyProperty0().Slice(1))) { goto FAIL; } - ____result.MyProperty0 = formatterResolver.GetFormatterWithVerify().Deserialize(ref reader, options); + ____result.MyProperty0 = global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Deserialize(ref reader, options); continue; case 8: if (global::MessagePack.Internal.AutomataKeyGen.GetKey(ref stringKey) != 8243120455795175235UL) { goto FAIL; } - ____result.Comparer = formatterResolver.GetFormatterWithVerify().Deserialize(ref reader, options); + ____result.Comparer = global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Deserialize(ref reader, options); continue; } @@ -4257,9 +4229,9 @@ namespace MessagePack.Formatters.SharedData var formatterResolver = options.Resolver; writer.WriteMapHeader(2); writer.WriteRaw(GetSpan_MyProperty0()); - formatterResolver.GetFormatterWithVerify().Serialize(ref writer, value.MyProperty0, options); + global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Serialize(ref writer, value.MyProperty0, options); writer.WriteRaw(GetSpan_Comparer()); - formatterResolver.GetFormatterWithVerify().Serialize(ref writer, value.Comparer, options); + global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Serialize(ref writer, value.Comparer, options); } public global::SharedData.GenericConstrainedStructStringKey Deserialize(ref global::MessagePack.MessagePackReader reader, global::MessagePack.MessagePackSerializerOptions options) @@ -4286,12 +4258,12 @@ namespace MessagePack.Formatters.SharedData case 11: if (!global::System.MemoryExtensions.SequenceEqual(stringKey, GetSpan_MyProperty0().Slice(1))) { goto FAIL; } - ____result.MyProperty0 = formatterResolver.GetFormatterWithVerify().Deserialize(ref reader, options); + ____result.MyProperty0 = global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Deserialize(ref reader, options); continue; case 8: if (global::MessagePack.Internal.AutomataKeyGen.GetKey(ref stringKey) != 8243120455795175235UL) { goto FAIL; } - ____result.Comparer = formatterResolver.GetFormatterWithVerify().Deserialize(ref reader, options); + ____result.Comparer = global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Deserialize(ref reader, options); continue; } @@ -4376,7 +4348,7 @@ namespace MessagePack.Formatters.SharedData writer.WriteRaw(GetSpan_Prop1()); writer.Write(value.Prop1); writer.WriteRaw(GetSpan_Prop2()); - formatterResolver.GetFormatterWithVerify().Serialize(ref writer, value.Prop2, options); + global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Serialize(ref writer, value.Prop2, options); writer.WriteRaw(GetSpan_Prop3()); writer.Write(value.Prop3); } @@ -4410,7 +4382,7 @@ namespace MessagePack.Formatters.SharedData ____result.Prop1 = reader.ReadInt32(); continue; case 216634716752UL: - ____result.Prop2 = formatterResolver.GetFormatterWithVerify().Deserialize(ref reader, options); + ____result.Prop2 = global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Deserialize(ref reader, options); continue; case 220929684048UL: ____result.Prop3 = reader.ReadInt32(); @@ -4439,7 +4411,7 @@ namespace MessagePack.Formatters.SharedData writer.WriteRaw(GetSpan_X()); writer.Write(value.X); writer.WriteRaw(GetSpan_Y()); - formatterResolver.GetFormatterWithVerify().Serialize(ref writer, value.Y, options); + global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Serialize(ref writer, value.Y, options); } public global::SharedData.SimpleStructStringKeyData Deserialize(ref global::MessagePack.MessagePackReader reader, global::MessagePack.MessagePackSerializerOptions options) @@ -4471,7 +4443,7 @@ namespace MessagePack.Formatters.SharedData ____result.X = reader.ReadInt32(); continue; case 383015019883UL: - ____result.Y = formatterResolver.GetFormatterWithVerify().Deserialize(ref reader, options); + ____result.Y = global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Deserialize(ref reader, options); continue; } @@ -4482,5 +4454,17 @@ namespace MessagePack.Formatters.SharedData return ____result; } } + } +#pragma warning restore 168 +#pragma warning restore 414 +#pragma warning restore 618 +#pragma warning restore 612 + +#pragma warning restore SA1129 // Do not use default value type constructor +#pragma warning restore SA1309 // Field names should not begin with underscore +#pragma warning restore SA1312 // Variable names should begin with lower-case letter +#pragma warning restore SA1403 // File may only contain a single namespace +#pragma warning restore SA1649 // File name should match first type name + diff --git a/sandbox/TestData2/Generated.cs b/sandbox/TestData2/Generated.cs index 606e2dca..e4f08ad5 100644 --- a/sandbox/TestData2/Generated.cs +++ b/sandbox/TestData2/Generated.cs @@ -7,14 +7,11 @@ #pragma warning disable 414 #pragma warning disable 168 -#pragma warning disable SA1200 // Using directives should be placed correctly #pragma warning disable SA1312 // Variable names should begin with lower-case letter #pragma warning disable SA1649 // File name should match first type name namespace MessagePack.Resolvers { - using System; - public class GeneratedResolver : global::MessagePack.IFormatterResolver { public static readonly global::MessagePack.IFormatterResolver Instance = new GeneratedResolver(); @@ -45,11 +42,11 @@ namespace MessagePack.Resolvers internal static class GeneratedResolverGetFormatterHelper { - private static readonly global::System.Collections.Generic.Dictionary lookup; + private static readonly global::System.Collections.Generic.Dictionary lookup; static GeneratedResolverGetFormatterHelper() { - lookup = new global::System.Collections.Generic.Dictionary(14) + lookup = new global::System.Collections.Generic.Dictionary(14) { { typeof(global::System.Collections.Generic.List), 0 }, { typeof(global::System.Collections.Generic.List), 1 }, @@ -68,7 +65,7 @@ namespace MessagePack.Resolvers }; } - internal static object GetFormatter(Type t) + internal static object GetFormatter(global::System.Type t) { int key; if (!lookup.TryGetValue(t, out key)) @@ -104,7 +101,6 @@ namespace MessagePack.Resolvers #pragma warning restore 612 #pragma warning restore SA1312 // Variable names should begin with lower-case letter -#pragma warning restore SA1200 // Using directives should be placed correctly #pragma warning restore SA1649 // File name should match first type name @@ -117,24 +113,20 @@ namespace MessagePack.Resolvers #pragma warning disable 414 #pragma warning disable 168 -#pragma warning disable SA1200 // Using directives should be placed correctly #pragma warning disable SA1403 // File may only contain a single namespace #pragma warning disable SA1649 // File name should match first type name namespace MessagePack.Formatters.TestData2 { - using System; - using System.Buffers; - using MessagePack; public sealed class Nest1_IdFormatter : global::MessagePack.Formatters.IMessagePackFormatter { - public void Serialize(ref MessagePackWriter writer, global::TestData2.Nest1.Id value, global::MessagePack.MessagePackSerializerOptions options) + public void Serialize(ref global::MessagePack.MessagePackWriter writer, global::TestData2.Nest1.Id value, global::MessagePack.MessagePackSerializerOptions options) { - writer.Write((Int32)value); + writer.Write((global::System.Int32)value); } - public global::TestData2.Nest1.Id Deserialize(ref MessagePackReader reader, global::MessagePack.MessagePackSerializerOptions options) + public global::TestData2.Nest1.Id Deserialize(ref global::MessagePack.MessagePackReader reader, global::MessagePack.MessagePackSerializerOptions options) { return (global::TestData2.Nest1.Id)reader.ReadInt32(); } @@ -142,12 +134,12 @@ namespace MessagePack.Formatters.TestData2 public sealed class Nest2_IdFormatter : global::MessagePack.Formatters.IMessagePackFormatter { - public void Serialize(ref MessagePackWriter writer, global::TestData2.Nest2.Id value, global::MessagePack.MessagePackSerializerOptions options) + public void Serialize(ref global::MessagePack.MessagePackWriter writer, global::TestData2.Nest2.Id value, global::MessagePack.MessagePackSerializerOptions options) { - writer.Write((Int32)value); + writer.Write((global::System.Int32)value); } - public global::TestData2.Nest2.Id Deserialize(ref MessagePackReader reader, global::MessagePack.MessagePackSerializerOptions options) + public global::TestData2.Nest2.Id Deserialize(ref global::MessagePack.MessagePackReader reader, global::MessagePack.MessagePackSerializerOptions options) { return (global::TestData2.Nest2.Id)reader.ReadInt32(); } @@ -159,7 +151,6 @@ namespace MessagePack.Formatters.TestData2 #pragma warning restore 618 #pragma warning restore 612 -#pragma warning restore SA1200 // Using directives should be placed correctly #pragma warning restore SA1403 // File may only contain a single namespace #pragma warning restore SA1649 // File name should match first type name @@ -175,7 +166,6 @@ namespace MessagePack.Formatters.TestData2 #pragma warning disable 168 #pragma warning disable SA1129 // Do not use default value type constructor -#pragma warning disable SA1200 // Using directives should be placed correctly #pragma warning disable SA1309 // Field names should not begin with underscore #pragma warning disable SA1312 // Variable names should begin with lower-case letter #pragma warning disable SA1403 // File may only contain a single namespace @@ -183,9 +173,6 @@ namespace MessagePack.Formatters.TestData2 namespace MessagePack.Formatters.TestData2 { - using global::System.Buffers; - using global::MessagePack; - public sealed class AFormatter : global::MessagePack.Formatters.IMessagePackFormatter { // a @@ -208,9 +195,9 @@ namespace MessagePack.Formatters.TestData2 writer.WriteRaw(GetSpan_a()); writer.Write(value.a); writer.WriteRaw(GetSpan_bs()); - formatterResolver.GetFormatterWithVerify>().Serialize(ref writer, value.bs, options); + global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify>(formatterResolver).Serialize(ref writer, value.bs, options); writer.WriteRaw(GetSpan_c()); - formatterResolver.GetFormatterWithVerify().Serialize(ref writer, value.c, options); + global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Serialize(ref writer, value.c, options); } public global::TestData2.A Deserialize(ref global::MessagePack.MessagePackReader reader, global::MessagePack.MessagePackSerializerOptions options) @@ -242,13 +229,13 @@ namespace MessagePack.Formatters.TestData2 ____result.a = reader.ReadInt32(); continue; case 99UL: - ____result.c = formatterResolver.GetFormatterWithVerify().Deserialize(ref reader, options); + ____result.c = global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Deserialize(ref reader, options); continue; } case 2: if (global::MessagePack.Internal.AutomataKeyGen.GetKey(ref stringKey) != 29538UL) { goto FAIL; } - ____result.bs = formatterResolver.GetFormatterWithVerify>().Deserialize(ref reader, options); + ____result.bs = global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify>(formatterResolver).Deserialize(ref reader, options); continue; } @@ -279,9 +266,9 @@ namespace MessagePack.Formatters.TestData2 var formatterResolver = options.Resolver; writer.WriteMapHeader(3); writer.WriteRaw(GetSpan_ass()); - formatterResolver.GetFormatterWithVerify>().Serialize(ref writer, value.ass, options); + global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify>(formatterResolver).Serialize(ref writer, value.ass, options); writer.WriteRaw(GetSpan_c()); - formatterResolver.GetFormatterWithVerify().Serialize(ref writer, value.c, options); + global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Serialize(ref writer, value.c, options); writer.WriteRaw(GetSpan_a()); writer.Write(value.a); } @@ -310,14 +297,14 @@ namespace MessagePack.Formatters.TestData2 case 3: if (global::MessagePack.Internal.AutomataKeyGen.GetKey(ref stringKey) != 7566177UL) { goto FAIL; } - ____result.ass = formatterResolver.GetFormatterWithVerify>().Deserialize(ref reader, options); + ____result.ass = global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify>(formatterResolver).Deserialize(ref reader, options); continue; case 1: switch (global::MessagePack.Internal.AutomataKeyGen.GetKey(ref stringKey)) { default: goto FAIL; case 99UL: - ____result.c = formatterResolver.GetFormatterWithVerify().Deserialize(ref reader, options); + ____result.c = global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Deserialize(ref reader, options); continue; case 97UL: ____result.a = reader.ReadInt32(); @@ -350,7 +337,7 @@ namespace MessagePack.Formatters.TestData2 var formatterResolver = options.Resolver; writer.WriteMapHeader(2); writer.WriteRaw(GetSpan_b()); - formatterResolver.GetFormatterWithVerify().Serialize(ref writer, value.b, options); + global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Serialize(ref writer, value.b, options); writer.WriteRaw(GetSpan_a()); writer.Write(value.a); } @@ -381,7 +368,7 @@ namespace MessagePack.Formatters.TestData2 { default: goto FAIL; case 98UL: - ____result.b = formatterResolver.GetFormatterWithVerify().Deserialize(ref reader, options); + ____result.b = global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Deserialize(ref reader, options); continue; case 97UL: ____result.a = reader.ReadInt32(); @@ -414,9 +401,9 @@ namespace MessagePack.Formatters.TestData2 var formatterResolver = options.Resolver; writer.WriteMapHeader(2); writer.WriteRaw(GetSpan_EnumId()); - formatterResolver.GetFormatterWithVerify().Serialize(ref writer, value.EnumId, options); + global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Serialize(ref writer, value.EnumId, options); writer.WriteRaw(GetSpan_ClassId()); - formatterResolver.GetFormatterWithVerify().Serialize(ref writer, value.ClassId, options); + global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Serialize(ref writer, value.ClassId, options); } public global::TestData2.Nest1 Deserialize(ref global::MessagePack.MessagePackReader reader, global::MessagePack.MessagePackSerializerOptions options) @@ -443,12 +430,12 @@ namespace MessagePack.Formatters.TestData2 case 6: if (global::MessagePack.Internal.AutomataKeyGen.GetKey(ref stringKey) != 110266531802693UL) { goto FAIL; } - ____result.EnumId = formatterResolver.GetFormatterWithVerify().Deserialize(ref reader, options); + ____result.EnumId = global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Deserialize(ref reader, options); continue; case 7: if (global::MessagePack.Internal.AutomataKeyGen.GetKey(ref stringKey) != 28228257876896835UL) { goto FAIL; } - ____result.ClassId = formatterResolver.GetFormatterWithVerify().Deserialize(ref reader, options); + ____result.ClassId = global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Deserialize(ref reader, options); continue; } @@ -503,9 +490,9 @@ namespace MessagePack.Formatters.TestData2 var formatterResolver = options.Resolver; writer.WriteMapHeader(2); writer.WriteRaw(GetSpan_EnumId()); - formatterResolver.GetFormatterWithVerify().Serialize(ref writer, value.EnumId, options); + global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Serialize(ref writer, value.EnumId, options); writer.WriteRaw(GetSpan_ClassId()); - formatterResolver.GetFormatterWithVerify().Serialize(ref writer, value.ClassId, options); + global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Serialize(ref writer, value.ClassId, options); } public global::TestData2.Nest2 Deserialize(ref global::MessagePack.MessagePackReader reader, global::MessagePack.MessagePackSerializerOptions options) @@ -532,12 +519,12 @@ namespace MessagePack.Formatters.TestData2 case 6: if (global::MessagePack.Internal.AutomataKeyGen.GetKey(ref stringKey) != 110266531802693UL) { goto FAIL; } - ____result.EnumId = formatterResolver.GetFormatterWithVerify().Deserialize(ref reader, options); + ____result.EnumId = global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Deserialize(ref reader, options); continue; case 7: if (global::MessagePack.Internal.AutomataKeyGen.GetKey(ref stringKey) != 28228257876896835UL) { goto FAIL; } - ____result.ClassId = formatterResolver.GetFormatterWithVerify().Deserialize(ref reader, options); + ____result.ClassId = global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Deserialize(ref reader, options); continue; } @@ -592,9 +579,9 @@ namespace MessagePack.Formatters.TestData2 var formatterResolver = options.Resolver; writer.WriteMapHeader(2); writer.WriteRaw(GetSpan_MyProperty1()); - formatterResolver.GetFormatterWithVerify().Serialize(ref writer, value.MyProperty1, options); + global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Serialize(ref writer, value.MyProperty1, options); writer.WriteRaw(GetSpan_MyProperty2()); - formatterResolver.GetFormatterWithVerify().Serialize(ref writer, value.MyProperty2, options); + global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Serialize(ref writer, value.MyProperty2, options); } public global::TestData2.PropNameCheck1 Deserialize(ref global::MessagePack.MessagePackReader reader, global::MessagePack.MessagePackSerializerOptions options) @@ -627,10 +614,10 @@ namespace MessagePack.Formatters.TestData2 { default: goto FAIL; case 3242356UL: - ____result.MyProperty1 = formatterResolver.GetFormatterWithVerify().Deserialize(ref reader, options); + ____result.MyProperty1 = global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Deserialize(ref reader, options); continue; case 3307892UL: - ____result.MyProperty2 = formatterResolver.GetFormatterWithVerify().Deserialize(ref reader, options); + ____result.MyProperty2 = global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Deserialize(ref reader, options); continue; } @@ -662,9 +649,9 @@ namespace MessagePack.Formatters.TestData2 var formatterResolver = options.Resolver; writer.WriteMapHeader(2); writer.WriteRaw(GetSpan_MyProperty1()); - formatterResolver.GetFormatterWithVerify().Serialize(ref writer, value.MyProperty1, options); + global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Serialize(ref writer, value.MyProperty1, options); writer.WriteRaw(GetSpan_MyProperty2()); - formatterResolver.GetFormatterWithVerify().Serialize(ref writer, value.MyProperty2, options); + global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Serialize(ref writer, value.MyProperty2, options); } public global::TestData2.PropNameCheck2 Deserialize(ref global::MessagePack.MessagePackReader reader, global::MessagePack.MessagePackSerializerOptions options) @@ -697,10 +684,10 @@ namespace MessagePack.Formatters.TestData2 { default: goto FAIL; case 3242356UL: - ____result.MyProperty1 = formatterResolver.GetFormatterWithVerify().Deserialize(ref reader, options); + ____result.MyProperty1 = global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Deserialize(ref reader, options); continue; case 3307892UL: - ____result.MyProperty2 = formatterResolver.GetFormatterWithVerify().Deserialize(ref reader, options); + ____result.MyProperty2 = global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Deserialize(ref reader, options); continue; } @@ -730,7 +717,7 @@ namespace MessagePack.Formatters.TestData2 var formatterResolver = options.Resolver; writer.WriteMapHeader(1); writer.WriteRaw(GetSpan_SomeProperty()); - formatterResolver.GetFormatterWithVerify().Serialize(ref writer, value.SomeProperty, options); + global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Serialize(ref writer, value.SomeProperty, options); } public global::TestData2.Record Deserialize(ref global::MessagePack.MessagePackReader reader, global::MessagePack.MessagePackSerializerOptions options) @@ -757,7 +744,7 @@ namespace MessagePack.Formatters.TestData2 case 12: if (!global::System.MemoryExtensions.SequenceEqual(stringKey, GetSpan_SomeProperty().Slice(1))) { goto FAIL; } - __SomeProperty__ = formatterResolver.GetFormatterWithVerify().Deserialize(ref reader, options); + __SomeProperty__ = global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify(formatterResolver).Deserialize(ref reader, options); continue; } @@ -768,5 +755,17 @@ namespace MessagePack.Formatters.TestData2 return ____result; } } + } +#pragma warning restore 168 +#pragma warning restore 414 +#pragma warning restore 618 +#pragma warning restore 612 + +#pragma warning restore SA1129 // Do not use default value type constructor +#pragma warning restore SA1309 // Field names should not begin with underscore +#pragma warning restore SA1312 // Variable names should begin with lower-case letter +#pragma warning restore SA1403 // File may only contain a single namespace +#pragma warning restore SA1649 // File name should match first type name + diff --git a/src/MessagePack.GeneratorCore/CodeAnalysis/Definitions.cs b/src/MessagePack.GeneratorCore/CodeAnalysis/Definitions.cs index 532cdc71..30aaedb9 100644 --- a/src/MessagePack.GeneratorCore/CodeAnalysis/Definitions.cs +++ b/src/MessagePack.GeneratorCore/CodeAnalysis/Definitions.cs @@ -170,7 +170,7 @@ namespace MessagePackCompiler.CodeAnalysis } else { - return $"formatterResolver.GetFormatterWithVerify<{this.Type}>().Serialize(ref writer, value.{this.Name}, options)"; + return $"global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify<{this.Type}>(formatterResolver).Serialize(ref writer, value.{this.Name}, options)"; } } @@ -182,12 +182,18 @@ namespace MessagePackCompiler.CodeAnalysis } else if (this.primitiveTypes.Contains(this.Type)) { - string suffix = this.Type == "byte[]" ? "?.ToArray()" : string.Empty; - return $"reader.Read{this.ShortTypeName!.Replace("[]", "s")}()" + suffix; + if (this.Type == "byte[]") + { + return "global::MessagePack.Internal.CodeGenHelpers.GetArrayFromNullableSequence(reader.ReadBytes())"; + } + else + { + return $"reader.Read{this.ShortTypeName!.Replace("[]", "s")}()"; + } } else { - return $"formatterResolver.GetFormatterWithVerify<{this.Type}>().Deserialize(ref reader, options)"; + return $"global::MessagePack.FormatterResolverExtensions.GetFormatterWithVerify<{this.Type}>(formatterResolver).Deserialize(ref reader, options)"; } } } diff --git a/src/MessagePack.GeneratorCore/Generator/EnumTemplate.cs b/src/MessagePack.GeneratorCore/Generator/EnumTemplate.cs index 814a3123..66c9fc14 100644 --- a/src/MessagePack.GeneratorCore/Generator/EnumTemplate.cs +++ b/src/MessagePack.GeneratorCore/Generator/EnumTemplate.cs @@ -34,27 +34,27 @@ namespace MessagePackCompiler.Generator #pragma warning disable 414 #pragma warning disable 168 -#pragma warning disable SA1200 // Using directives should be placed correctly #pragma warning disable SA1403 // File may only contain a single namespace #pragma warning disable SA1649 // File name should match first type name namespace "); this.Write(this.ToStringHelper.ToStringWithCulture(Namespace)); - this.Write("\r\n{\r\n using System;\r\n using System.Buffers;\r\n using MessagePack;\r\n"); + this.Write("\r\n{\r\n"); foreach(var info in EnumSerializationInfos) { this.Write("\r\n public sealed class "); this.Write(this.ToStringHelper.ToStringWithCulture(info.Name)); this.Write("Formatter : global::MessagePack.Formatters.IMessagePackFormatter<"); this.Write(this.ToStringHelper.ToStringWithCulture(info.FullName)); - this.Write(">\r\n {\r\n public void Serialize(ref MessagePackWriter writer, "); + this.Write(">\r\n {\r\n public void Serialize(ref global::MessagePack.MessagePackWriter" + + " writer, "); this.Write(this.ToStringHelper.ToStringWithCulture(info.FullName)); this.Write(" value, global::MessagePack.MessagePackSerializerOptions options)\r\n {\r\n " + - " writer.Write(("); + " writer.Write((global::System."); this.Write(this.ToStringHelper.ToStringWithCulture(info.UnderlyingType)); this.Write(")value);\r\n }\r\n\r\n public "); this.Write(this.ToStringHelper.ToStringWithCulture(info.FullName)); - this.Write(" Deserialize(ref MessagePackReader reader, global::MessagePack.MessagePackSeriali" + - "zerOptions options)\r\n {\r\n return ("); + this.Write(" Deserialize(ref global::MessagePack.MessagePackReader reader, global::MessagePac" + + "k.MessagePackSerializerOptions options)\r\n {\r\n return ("); this.Write(this.ToStringHelper.ToStringWithCulture(info.FullName)); this.Write(")reader.Read"); this.Write(this.ToStringHelper.ToStringWithCulture(info.UnderlyingType)); @@ -67,7 +67,6 @@ namespace "); #pragma warning restore 618 #pragma warning restore 612 -#pragma warning restore SA1200 // Using directives should be placed correctly #pragma warning restore SA1403 // File may only contain a single namespace #pragma warning restore SA1649 // File name should match first type name "); diff --git a/src/MessagePack.GeneratorCore/Generator/EnumTemplate.tt b/src/MessagePack.GeneratorCore/Generator/EnumTemplate.tt index 28d34550..d9fda115 100644 --- a/src/MessagePack.GeneratorCore/Generator/EnumTemplate.tt +++ b/src/MessagePack.GeneratorCore/Generator/EnumTemplate.tt @@ -12,25 +12,21 @@ #pragma warning disable 414 #pragma warning disable 168 -#pragma warning disable SA1200 // Using directives should be placed correctly #pragma warning disable SA1403 // File may only contain a single namespace #pragma warning disable SA1649 // File name should match first type name namespace <#= Namespace #> { - using System; - using System.Buffers; - using MessagePack; <# foreach(var info in EnumSerializationInfos) { #> public sealed class <#= info.Name #>Formatter : global::MessagePack.Formatters.IMessagePackFormatter<<#= info.FullName #>> { - public void Serialize(ref MessagePackWriter writer, <#= info.FullName #> value, global::MessagePack.MessagePackSerializerOptions options) + public void Serialize(ref global::MessagePack.MessagePackWriter writer, <#= info.FullName #> value, global::MessagePack.MessagePackSerializerOptions options) { - writer.Write((<#= info.UnderlyingType #>)value); + writer.Write((global::System.<#= info.UnderlyingType #>)value); } - public <#= info.FullName #> Deserialize(ref MessagePackReader reader, global::MessagePack.MessagePackSerializerOptions options) + public <#= info.FullName #> Deserialize(ref global::MessagePack.MessagePackReader reader, global::MessagePack.MessagePackSerializerOptions options) { return (<#= info.FullName #>)reader.Read<#= info.UnderlyingType #>(); } @@ -43,6 +39,5 @@ namespace <#= Namespace #> #pragma warning restore 618 #pragma warning restore 612 -#pragma warning restore SA1200 // Using directives should be placed correctly #pragma warning restore SA1403 // File may only contain a single namespace #pragma warning restore SA1649 // File name should match first type name diff --git a/src/MessagePack.GeneratorCore/Generator/FormatterTemplate.cs b/src/MessagePack.GeneratorCore/Generator/FormatterTemplate.cs index e153d5eb..dfb84caf 100644 --- a/src/MessagePack.GeneratorCore/Generator/FormatterTemplate.cs +++ b/src/MessagePack.GeneratorCore/Generator/FormatterTemplate.cs @@ -35,7 +35,6 @@ namespace MessagePackCompiler.Generator #pragma warning disable 168 #pragma warning disable SA1129 // Do not use default value type constructor -#pragma warning disable SA1200 // Using directives should be placed correctly #pragma warning disable SA1309 // Field names should not begin with underscore #pragma warning disable SA1312 // Variable names should begin with lower-case letter #pragma warning disable SA1403 // File may only contain a single namespace @@ -43,10 +42,10 @@ namespace MessagePackCompiler.Generator namespace "); this.Write(this.ToStringHelper.ToStringWithCulture(Namespace)); - this.Write("\r\n{\r\n using global::System.Buffers;\r\n using global::MessagePack;\r\n"); + this.Write("\r\n{\r\n"); foreach (var objInfo in ObjectSerializationInfos) { bool isFormatterResolverNecessary = ShouldUseFormatterResolverHelper.ShouldUseFormatterResolver(objInfo.Members); - this.Write("\r\n public sealed class "); + this.Write(" public sealed class "); this.Write(this.ToStringHelper.ToStringWithCulture(objInfo.FormatterNameWithoutNameSpace)); this.Write(" : global::MessagePack.Formatters.IMessagePackFormatter<"); this.Write(this.ToStringHelper.ToStringWithCulture(objInfo.FullName)); @@ -205,7 +204,7 @@ namespace "); } this.Write(" reader.Depth--;\r\n return ____result;\r\n"); } - this.Write(" }\r\n }\r\n"); + this.Write(" }\r\n }\r\n\r\n"); } this.Write(@"} @@ -215,7 +214,6 @@ namespace "); #pragma warning restore 612 #pragma warning restore SA1129 // Do not use default value type constructor -#pragma warning restore SA1200 // Using directives should be placed correctly #pragma warning restore SA1309 // Field names should not begin with underscore #pragma warning restore SA1312 // Variable names should begin with lower-case letter #pragma warning restore SA1403 // File may only contain a single namespace diff --git a/src/MessagePack.GeneratorCore/Generator/FormatterTemplate.tt b/src/MessagePack.GeneratorCore/Generator/FormatterTemplate.tt index 631dc9f1..bf96d9e5 100644 --- a/src/MessagePack.GeneratorCore/Generator/FormatterTemplate.tt +++ b/src/MessagePack.GeneratorCore/Generator/FormatterTemplate.tt @@ -13,7 +13,6 @@ #pragma warning disable 168 #pragma warning disable SA1129 // Do not use default value type constructor -#pragma warning disable SA1200 // Using directives should be placed correctly #pragma warning disable SA1309 // Field names should not begin with underscore #pragma warning disable SA1312 // Variable names should begin with lower-case letter #pragma warning disable SA1403 // File may only contain a single namespace @@ -21,11 +20,8 @@ namespace <#= Namespace #> { - using global::System.Buffers; - using global::MessagePack; <# foreach (var objInfo in ObjectSerializationInfos) { bool isFormatterResolverNecessary = ShouldUseFormatterResolverHelper.ShouldUseFormatterResolver(objInfo.Members);#> - public sealed class <#= objInfo.FormatterNameWithoutNameSpace #> : global::MessagePack.Formatters.IMessagePackFormatter<<#= objInfo.FullName #>> <# foreach (var typeArg in objInfo.GenericTypeParameters.Where(x => x.HasConstraints)) { #> where <#= typeArg.Name #> : <#= typeArg.Constraints #> @@ -155,8 +151,8 @@ namespace <#= Namespace #> <# } #> } } -<# } #> -} + +<# } #>} #pragma warning restore 168 #pragma warning restore 414 @@ -164,7 +160,6 @@ namespace <#= Namespace #> #pragma warning restore 612 #pragma warning restore SA1129 // Do not use default value type constructor -#pragma warning restore SA1200 // Using directives should be placed correctly #pragma warning restore SA1309 // Field names should not begin with underscore #pragma warning restore SA1312 // Variable names should begin with lower-case letter #pragma warning restore SA1403 // File may only contain a single namespace diff --git a/src/MessagePack.GeneratorCore/Generator/ResolverTemplate.cs b/src/MessagePack.GeneratorCore/Generator/ResolverTemplate.cs index 48e4df6b..c433e545 100644 --- a/src/MessagePack.GeneratorCore/Generator/ResolverTemplate.cs +++ b/src/MessagePack.GeneratorCore/Generator/ResolverTemplate.cs @@ -34,13 +34,12 @@ namespace MessagePackCompiler.Generator #pragma warning disable 414 #pragma warning disable 168 -#pragma warning disable SA1200 // Using directives should be placed correctly #pragma warning disable SA1312 // Variable names should begin with lower-case letter #pragma warning disable SA1649 // File name should match first type name namespace "); this.Write(this.ToStringHelper.ToStringWithCulture(Namespace)); - this.Write("\r\n{\r\n using System;\r\n\r\n public class "); + this.Write("\r\n{\r\n public class "); this.Write(this.ToStringHelper.ToStringWithCulture(ResolverName)); this.Write(" : global::MessagePack.IFormatterResolver\r\n {\r\n public static readonly " + "global::MessagePack.IFormatterResolver Instance = new "); @@ -76,10 +75,10 @@ namespace "); internal static class "); this.Write(this.ToStringHelper.ToStringWithCulture(ResolverName)); this.Write("GetFormatterHelper\r\n {\r\n private static readonly global::System.Collect" + - "ions.Generic.Dictionary lookup;\r\n\r\n static "); + "ions.Generic.Dictionary lookup;\r\n\r\n static "); this.Write(this.ToStringHelper.ToStringWithCulture(ResolverName)); this.Write("GetFormatterHelper()\r\n {\r\n lookup = new global::System.Collecti" + - "ons.Generic.Dictionary("); + "ons.Generic.Dictionary("); this.Write(this.ToStringHelper.ToStringWithCulture(RegisterInfos.Length)); this.Write(")\r\n {\r\n"); for(var i = 0; i < RegisterInfos.Length; i++) { var x = RegisterInfos[i]; @@ -92,7 +91,7 @@ namespace "); this.Write(@" }; } - internal static object GetFormatter(Type t) + internal static object GetFormatter(global::System.Type t) { int key; if (!lookup.TryGetValue(t, out key)) @@ -122,7 +121,6 @@ namespace "); #pragma warning restore 612 #pragma warning restore SA1312 // Variable names should begin with lower-case letter -#pragma warning restore SA1200 // Using directives should be placed correctly #pragma warning restore SA1649 // File name should match first type name "); return this.GenerationEnvironment.ToString(); diff --git a/src/MessagePack.GeneratorCore/Generator/ResolverTemplate.tt b/src/MessagePack.GeneratorCore/Generator/ResolverTemplate.tt index e61688a1..1fcd9839 100644 --- a/src/MessagePack.GeneratorCore/Generator/ResolverTemplate.tt +++ b/src/MessagePack.GeneratorCore/Generator/ResolverTemplate.tt @@ -12,16 +12,11 @@ #pragma warning disable 414 #pragma warning disable 168 -#pragma warning disable SA1200 // Using directives should be placed correctly #pragma warning disable SA1312 // Variable names should begin with lower-case letter #pragma warning disable SA1649 // File name should match first type name namespace <#= Namespace #> { - using System; - using System.Buffers; - using MessagePack; - public class <#= ResolverName #> : global::MessagePack.IFormatterResolver { public static readonly global::MessagePack.IFormatterResolver Instance = new <#= ResolverName #>(); @@ -52,11 +47,11 @@ namespace <#= Namespace #> internal static class <#= ResolverName #>GetFormatterHelper { - private static readonly global::System.Collections.Generic.Dictionary lookup; + private static readonly global::System.Collections.Generic.Dictionary lookup; static <#= ResolverName #>GetFormatterHelper() { - lookup = new global::System.Collections.Generic.Dictionary(<#= RegisterInfos.Length #>) + lookup = new global::System.Collections.Generic.Dictionary(<#= RegisterInfos.Length #>) { <# for(var i = 0; i < RegisterInfos.Length; i++) { var x = RegisterInfos[i]; #> { typeof(<#= x.FullName #>), <#= i #> }, @@ -64,7 +59,7 @@ namespace <#= Namespace #> }; } - internal static object GetFormatter(Type t) + internal static object GetFormatter(global::System.Type t) { int key; if (!lookup.TryGetValue(t, out key)) @@ -75,7 +70,7 @@ namespace <#= Namespace #> switch (key) { <# for(var i = 0; i < RegisterInfos.Length; i++) { var x = RegisterInfos[i]; #> - case <#= i #>: return new <#= x.FormatterName.StartsWith("global::") ? x.FormatterName: (!string.IsNullOrEmpty(FormatterNamespace) ? FormatterNamespace + "." : FormatterNamespace) + x.FormatterName#>(); + case <#= i #>: return new <#= x.FormatterName.StartsWith("global::") ? x.FormatterName: (!string.IsNullOrEmpty(FormatterNamespace) ? FormatterNamespace + "." : FormatterNamespace) + x.FormatterName #>(); <# } #> default: return null; } @@ -89,5 +84,4 @@ namespace <#= Namespace #> #pragma warning restore 612 #pragma warning restore SA1312 // Variable names should begin with lower-case letter -#pragma warning restore SA1200 // Using directives should be placed correctly #pragma warning restore SA1649 // File name should match first type name diff --git a/src/MessagePack.GeneratorCore/Generator/StringKey/StringKeyFormatterTemplate.cs b/src/MessagePack.GeneratorCore/Generator/StringKey/StringKeyFormatterTemplate.cs index a3df9f44..d598c202 100644 --- a/src/MessagePack.GeneratorCore/Generator/StringKey/StringKeyFormatterTemplate.cs +++ b/src/MessagePack.GeneratorCore/Generator/StringKey/StringKeyFormatterTemplate.cs @@ -35,7 +35,6 @@ namespace MessagePackCompiler.Generator #pragma warning disable 168 #pragma warning disable SA1129 // Do not use default value type constructor -#pragma warning disable SA1200 // Using directives should be placed correctly #pragma warning disable SA1309 // Field names should not begin with underscore #pragma warning disable SA1312 // Variable names should begin with lower-case letter #pragma warning disable SA1403 // File may only contain a single namespace @@ -43,7 +42,7 @@ namespace MessagePackCompiler.Generator namespace "); this.Write(this.ToStringHelper.ToStringWithCulture(Namespace)); - this.Write("\r\n{\r\n using global::System.Buffers;\r\n using global::MessagePack;\r\n"); + this.Write("\r\n{\r\n"); var list = new List>(); foreach (var objInfo in ObjectSerializationInfos) { list.Clear(); @@ -53,7 +52,7 @@ foreach (var objInfo in ObjectSerializationInfos) { } bool isFormatterResolverNecessary = ShouldUseFormatterResolverHelper.ShouldUseFormatterResolver(objInfo.Members); - this.Write("\r\n public sealed class "); + this.Write(" public sealed class "); this.Write(this.ToStringHelper.ToStringWithCulture(objInfo.FormatterNameWithoutNameSpace)); this.Write(" : global::MessagePack.Formatters.IMessagePackFormatter<"); this.Write(this.ToStringHelper.ToStringWithCulture(objInfo.FullName)); @@ -191,9 +190,21 @@ foreach (var objInfo in ObjectSerializationInfos) { if (objInfo.Members.Length != 0) { this.Write(" reader.Depth--;\r\n"); } - this.Write(" return ____result;\r\n }\r\n }\r\n"); + this.Write(" return ____result;\r\n }\r\n }\r\n\r\n"); } - this.Write("}\r\n"); + this.Write(@"} + +#pragma warning restore 168 +#pragma warning restore 414 +#pragma warning restore 618 +#pragma warning restore 612 + +#pragma warning restore SA1129 // Do not use default value type constructor +#pragma warning restore SA1309 // Field names should not begin with underscore +#pragma warning restore SA1312 // Variable names should begin with lower-case letter +#pragma warning restore SA1403 // File may only contain a single namespace +#pragma warning restore SA1649 // File name should match first type name +"); return this.GenerationEnvironment.ToString(); } } diff --git a/src/MessagePack.GeneratorCore/Generator/StringKey/StringKeyFormatterTemplate.tt b/src/MessagePack.GeneratorCore/Generator/StringKey/StringKeyFormatterTemplate.tt index 9bc3e4d8..296ef454 100644 --- a/src/MessagePack.GeneratorCore/Generator/StringKey/StringKeyFormatterTemplate.tt +++ b/src/MessagePack.GeneratorCore/Generator/StringKey/StringKeyFormatterTemplate.tt @@ -14,7 +14,6 @@ #pragma warning disable 168 #pragma warning disable SA1129 // Do not use default value type constructor -#pragma warning disable SA1200 // Using directives should be placed correctly #pragma warning disable SA1309 // Field names should not begin with underscore #pragma warning disable SA1312 // Variable names should begin with lower-case letter #pragma warning disable SA1403 // File may only contain a single namespace @@ -22,8 +21,6 @@ namespace <#= Namespace #> { - using global::System.Buffers; - using global::MessagePack; <# var list = new List>(); foreach (var objInfo in ObjectSerializationInfos) { list.Clear(); @@ -33,7 +30,6 @@ foreach (var objInfo in ObjectSerializationInfos) { } bool isFormatterResolverNecessary = ShouldUseFormatterResolverHelper.ShouldUseFormatterResolver(objInfo.Members); #> - public sealed class <#= objInfo.FormatterNameWithoutNameSpace #> : global::MessagePack.Formatters.IMessagePackFormatter<<#= objInfo.FullName #>> <# foreach (var typeArg in objInfo.GenericTypeParameters.Where(x => x.HasConstraints)) {#> where <#= typeArg.Name #> : <#= typeArg.Constraints #> @@ -147,5 +143,16 @@ foreach (var objInfo in ObjectSerializationInfos) { return ____result; } } -<# } #> -} + +<# } #>} + +#pragma warning restore 168 +#pragma warning restore 414 +#pragma warning restore 618 +#pragma warning restore 612 + +#pragma warning restore SA1129 // Do not use default value type constructor +#pragma warning restore SA1309 // Field names should not begin with underscore +#pragma warning restore SA1312 // Variable names should begin with lower-case letter +#pragma warning restore SA1403 // File may only contain a single namespace +#pragma warning restore SA1649 // File name should match first type name diff --git a/src/MessagePack.GeneratorCore/Generator/UnionTemplate.cs b/src/MessagePack.GeneratorCore/Generator/UnionTemplate.cs index 1106f1cb..6ea73cff 100644 --- a/src/MessagePack.GeneratorCore/Generator/UnionTemplate.cs +++ b/src/MessagePack.GeneratorCore/Generator/UnionTemplate.cs @@ -34,38 +34,41 @@ namespace MessagePackCompiler.Generator #pragma warning disable 414 #pragma warning disable 168 -#pragma warning disable SA1200 // Using directives should be placed correctly #pragma warning disable SA1403 // File may only contain a single namespace #pragma warning disable SA1649 // File name should match first type name namespace "); this.Write(this.ToStringHelper.ToStringWithCulture(Namespace)); - this.Write("\r\n{\r\n using System;\r\n using System.Buffers;\r\n using System.Collections.G" + - "eneric;\r\n using MessagePack;\r\n\r\n"); + this.Write("\r\n{\r\n"); foreach(var info in UnionSerializationInfos) { this.Write(" public sealed class "); this.Write(this.ToStringHelper.ToStringWithCulture(info.Name)); this.Write("Formatter : global::MessagePack.Formatters.IMessagePackFormatter<"); this.Write(this.ToStringHelper.ToStringWithCulture(info.FullName)); - this.Write(">\r\n {\r\n private readonly Dictionary> typeToKeyAndJumpMap;\r\n private readonly Dictionary keyT" + - "oJumpMap;\r\n\r\n public "); + this.Write(@"> + { + private readonly global::System.Collections.Generic.Dictionary> typeToKeyAndJumpMap; + private readonly global::System.Collections.Generic.Dictionary keyToJumpMap; + + public "); this.Write(this.ToStringHelper.ToStringWithCulture(info.Name)); - this.Write("Formatter()\r\n {\r\n this.typeToKeyAndJumpMap = new Dictionary>("); + this.Write("Formatter()\r\n {\r\n this.typeToKeyAndJumpMap = new global::System" + + ".Collections.Generic.Dictionary>("); this.Write(this.ToStringHelper.ToStringWithCulture(info.SubTypes.Length)); this.Write(", global::MessagePack.Internal.RuntimeTypeHandleEqualityComparer.Default)\r\n " + " {\r\n"); for(var i = 0; i < info.SubTypes.Length; i++) { var item = info.SubTypes[i]; this.Write(" { typeof("); this.Write(this.ToStringHelper.ToStringWithCulture(item.Type)); - this.Write(").TypeHandle, new KeyValuePair("); + this.Write(").TypeHandle, new global::System.Collections.Generic.KeyValuePair("); this.Write(this.ToStringHelper.ToStringWithCulture(item.Key)); this.Write(", "); this.Write(this.ToStringHelper.ToStringWithCulture(i)); this.Write(") },\r\n"); } - this.Write(" };\r\n this.keyToJumpMap = new Dictionary("); + this.Write(" };\r\n this.keyToJumpMap = new global::System.Collections.Ge" + + "neric.Dictionary("); this.Write(this.ToStringHelper.ToStringWithCulture(info.SubTypes.Length)); this.Write(")\r\n {\r\n"); for(var i = 0; i < info.SubTypes.Length; i++) { var item = info.SubTypes[i]; @@ -75,12 +78,12 @@ namespace "); this.Write(this.ToStringHelper.ToStringWithCulture(i)); this.Write(" },\r\n"); } - this.Write(" };\r\n }\r\n\r\n public void Serialize(ref MessagePackWriter " + - "writer, "); + this.Write(" };\r\n }\r\n\r\n public void Serialize(ref global::MessagePac" + + "k.MessagePackWriter writer, "); this.Write(this.ToStringHelper.ToStringWithCulture(info.FullName)); this.Write(@" value, global::MessagePack.MessagePackSerializerOptions options) { - KeyValuePair keyValuePair; + global::System.Collections.Generic.KeyValuePair keyValuePair; if (value != null && this.typeToKeyAndJumpMap.TryGetValue(value.GetType().TypeHandle, out keyValuePair)) { writer.WriteArrayHeader(2); @@ -101,7 +104,7 @@ namespace "); "\r\n return;\r\n }\r\n\r\n writer.WriteNil();\r\n " + " }\r\n\r\n public "); this.Write(this.ToStringHelper.ToStringWithCulture(info.FullName)); - this.Write(@" Deserialize(ref MessagePackReader reader, global::MessagePack.MessagePackSerializerOptions options) + this.Write(@" Deserialize(ref global::MessagePack.MessagePackReader reader, global::MessagePack.MessagePackSerializerOptions options) { if (reader.TryReadNil()) { @@ -110,7 +113,7 @@ namespace "); if (reader.ReadArrayHeader() != 2) { - throw new InvalidOperationException(""Invalid Union data was detected. Type:"); + throw new global::System.InvalidOperationException(""Invalid Union data was detected. Type:"); this.Write(this.ToStringHelper.ToStringWithCulture(info.FullName)); this.Write("\");\r\n }\r\n\r\n options.Security.DepthStep(ref reader);\r\n " + " var key = reader.ReadInt32();\r\n\r\n if (!this.keyToJumpMap.TryGet" + @@ -139,7 +142,6 @@ namespace "); #pragma warning restore 618 #pragma warning restore 612 -#pragma warning restore SA1200 // Using directives should be placed correctly #pragma warning restore SA1403 // File may only contain a single namespace #pragma warning restore SA1649 // File name should match first type name "); diff --git a/src/MessagePack.GeneratorCore/Generator/UnionTemplate.tt b/src/MessagePack.GeneratorCore/Generator/UnionTemplate.tt index 216cf3c3..174dd3d2 100644 --- a/src/MessagePack.GeneratorCore/Generator/UnionTemplate.tt +++ b/src/MessagePack.GeneratorCore/Generator/UnionTemplate.tt @@ -12,32 +12,26 @@ #pragma warning disable 414 #pragma warning disable 168 -#pragma warning disable SA1200 // Using directives should be placed correctly #pragma warning disable SA1403 // File may only contain a single namespace #pragma warning disable SA1649 // File name should match first type name namespace <#= Namespace #> { - using System; - using System.Buffers; - using System.Collections.Generic; - using MessagePack; - <# foreach(var info in UnionSerializationInfos) { #> public sealed class <#= info.Name #>Formatter : global::MessagePack.Formatters.IMessagePackFormatter<<#= info.FullName #>> { - private readonly Dictionary> typeToKeyAndJumpMap; - private readonly Dictionary keyToJumpMap; + private readonly global::System.Collections.Generic.Dictionary> typeToKeyAndJumpMap; + private readonly global::System.Collections.Generic.Dictionary keyToJumpMap; public <#= info.Name #>Formatter() { - this.typeToKeyAndJumpMap = new Dictionary>(<#= info.SubTypes.Length #>, global::MessagePack.Internal.RuntimeTypeHandleEqualityComparer.Default) + this.typeToKeyAndJumpMap = new global::System.Collections.Generic.Dictionary>(<#= info.SubTypes.Length #>, global::MessagePack.Internal.RuntimeTypeHandleEqualityComparer.Default) { <# for(var i = 0; i < info.SubTypes.Length; i++) { var item = info.SubTypes[i]; #> - { typeof(<#= item.Type #>).TypeHandle, new KeyValuePair(<#= item.Key #>, <#= i #>) }, + { typeof(<#= item.Type #>).TypeHandle, new global::System.Collections.Generic.KeyValuePair(<#= item.Key #>, <#= i #>) }, <# } #> }; - this.keyToJumpMap = new Dictionary(<#= info.SubTypes.Length #>) + this.keyToJumpMap = new global::System.Collections.Generic.Dictionary(<#= info.SubTypes.Length #>) { <# for(var i = 0; i < info.SubTypes.Length; i++) { var item = info.SubTypes[i]; #> { <#= item.Key #>, <#= i #> }, @@ -45,9 +39,9 @@ namespace <#= Namespace #> }; } - public void Serialize(ref MessagePackWriter writer, <#= info.FullName #> value, global::MessagePack.MessagePackSerializerOptions options) + public void Serialize(ref global::MessagePack.MessagePackWriter writer, <#= info.FullName #> value, global::MessagePack.MessagePackSerializerOptions options) { - KeyValuePair keyValuePair; + global::System.Collections.Generic.KeyValuePair keyValuePair; if (value != null && this.typeToKeyAndJumpMap.TryGetValue(value.GetType().TypeHandle, out keyValuePair)) { writer.WriteArrayHeader(2); @@ -69,7 +63,7 @@ namespace <#= Namespace #> writer.WriteNil(); } - public <#= info.FullName #> Deserialize(ref MessagePackReader reader, global::MessagePack.MessagePackSerializerOptions options) + public <#= info.FullName #> Deserialize(ref global::MessagePack.MessagePackReader reader, global::MessagePack.MessagePackSerializerOptions options) { if (reader.TryReadNil()) { @@ -78,7 +72,7 @@ namespace <#= Namespace #> if (reader.ReadArrayHeader() != 2) { - throw new InvalidOperationException("Invalid Union data was detected. Type:<#= info.FullName #>"); + throw new global::System.InvalidOperationException("Invalid Union data was detected. Type:<#= info.FullName #>"); } options.Security.DepthStep(ref reader); @@ -116,6 +110,5 @@ namespace <#= Namespace #> #pragma warning restore 618 #pragma warning restore 612 -#pragma warning restore SA1200 // Using directives should be placed correctly #pragma warning restore SA1403 // File may only contain a single namespace #pragma warning restore SA1649 // File name should match first type name -- cgit v1.2.3 From 1ce9b213a5681704265ce4d25d17373ad7c2f45f Mon Sep 17 00:00:00 2001 From: pCYSl5EDgo Date: Thu, 30 Dec 2021 07:34:01 +0900 Subject: Global Using and File scoped namespace test --- sandbox/TestData2/A.cs | 14 +++++--------- sandbox/TestData2/B.cs | 14 +++++--------- sandbox/TestData2/C.cs | 13 +++++-------- sandbox/TestData2/TestData2.csproj | 6 +++++- 4 files changed, 20 insertions(+), 27 deletions(-) diff --git a/sandbox/TestData2/A.cs b/sandbox/TestData2/A.cs index 44b0a47f..d32265ab 100644 --- a/sandbox/TestData2/A.cs +++ b/sandbox/TestData2/A.cs @@ -1,17 +1,13 @@ // Copyright (c) All contributors. All rights reserved. // Licensed under the MIT license. See LICENSE file in the project root for full license information. -using System.Collections.Generic; -using MessagePack; - #pragma warning disable SA1307 // Accessible fields should begin with upper-case letter #pragma warning disable SA1401 // Fields should be private -namespace TestData2 +namespace TestData2; + +[MessagePackObject(true)] +public class A { - [MessagePackObject(true)] - public class A - { - public int a; public List bs; public C c; - } + public int a; public List bs; public C c; } diff --git a/sandbox/TestData2/B.cs b/sandbox/TestData2/B.cs index b44ff016..70e9f358 100644 --- a/sandbox/TestData2/B.cs +++ b/sandbox/TestData2/B.cs @@ -1,17 +1,13 @@ // Copyright (c) All contributors. All rights reserved. // Licensed under the MIT license. See LICENSE file in the project root for full license information. -using System.Collections.Generic; -using MessagePack; - #pragma warning disable SA1307 // Accessible fields should begin with upper-case letter #pragma warning disable SA1401 // Fields should be private -namespace TestData2 +namespace TestData2; + +[MessagePackObject(true)] +public class B { - [MessagePackObject(true)] - public class B - { - public List ass; public C c; public int a; - } + public List ass; public C c; public int a; } diff --git a/sandbox/TestData2/C.cs b/sandbox/TestData2/C.cs index 4a42584d..5de4a080 100644 --- a/sandbox/TestData2/C.cs +++ b/sandbox/TestData2/C.cs @@ -1,16 +1,13 @@ // Copyright (c) All contributors. All rights reserved. // Licensed under the MIT license. See LICENSE file in the project root for full license information. -using MessagePack; - #pragma warning disable SA1307 // Accessible fields should begin with upper-case letter #pragma warning disable SA1401 // Fields should be private -namespace TestData2 +namespace TestData2; + +[MessagePackObject(true)] +public class C { - [MessagePackObject(true)] - public class C - { - public B b; public int a; - } + public B b; public int a; } diff --git a/sandbox/TestData2/TestData2.csproj b/sandbox/TestData2/TestData2.csproj index 241bef29..a7313049 100644 --- a/sandbox/TestData2/TestData2.csproj +++ b/sandbox/TestData2/TestData2.csproj @@ -1,7 +1,7 @@  net461 - 9 + 10 @@ -9,4 +9,8 @@ + + + + -- cgit v1.2.3 From 8da2ab05f9cc1b1c2c3dd5e32a57ec57ecb4dbd8 Mon Sep 17 00:00:00 2001 From: pCYSl5EDgo <31692496+pCYSl5EDgo@users.noreply.github.com> Date: Sun, 13 Feb 2022 06:14:41 +0900 Subject: Fix nullable annotation errorneous handling (#1395) * Fix nullable member file name handling Generating multiple files including the letter '?'. Invalid file name char should be avoided. --- global.json | 2 +- sandbox/TestData2/A.cs | 3 +- sandbox/TestData2/B.cs | 3 +- sandbox/TestData2/C.cs | 3 +- .../CodeAnalysis/TypeCollector.cs | 7 ++- src/MessagePack.GeneratorCore/CodeGenerator.cs | 72 ++++++++++++++++++++-- 6 files changed, 79 insertions(+), 11 deletions(-) diff --git a/global.json b/global.json index d46619b0..2645bb53 100644 --- a/global.json +++ b/global.json @@ -1,6 +1,6 @@ { "sdk": { - "version": "6.0.101", + "version": "6.0.102", "rollForward": "patch", "allowPrerelease": false } diff --git a/sandbox/TestData2/A.cs b/sandbox/TestData2/A.cs index d32265ab..a7eeef9d 100644 --- a/sandbox/TestData2/A.cs +++ b/sandbox/TestData2/A.cs @@ -3,11 +3,12 @@ #pragma warning disable SA1307 // Accessible fields should begin with upper-case letter #pragma warning disable SA1401 // Fields should be private +#nullable enable namespace TestData2; [MessagePackObject(true)] public class A { - public int a; public List bs; public C c; + public int a; public List? bs; public C? c; } diff --git a/sandbox/TestData2/B.cs b/sandbox/TestData2/B.cs index 70e9f358..d9c4029e 100644 --- a/sandbox/TestData2/B.cs +++ b/sandbox/TestData2/B.cs @@ -3,11 +3,12 @@ #pragma warning disable SA1307 // Accessible fields should begin with upper-case letter #pragma warning disable SA1401 // Fields should be private +#nullable enable namespace TestData2; [MessagePackObject(true)] public class B { - public List ass; public C c; public int a; + public List? ass; public C? c; public int a; } diff --git a/sandbox/TestData2/C.cs b/sandbox/TestData2/C.cs index 5de4a080..741517ff 100644 --- a/sandbox/TestData2/C.cs +++ b/sandbox/TestData2/C.cs @@ -3,11 +3,12 @@ #pragma warning disable SA1307 // Accessible fields should begin with upper-case letter #pragma warning disable SA1401 // Fields should be private +#nullable enable namespace TestData2; [MessagePackObject(true)] public class C { - public B b; public int a; + public B? b; public int a; } diff --git a/src/MessagePack.GeneratorCore/CodeAnalysis/TypeCollector.cs b/src/MessagePack.GeneratorCore/CodeAnalysis/TypeCollector.cs index d2537dcd..935ceb87 100644 --- a/src/MessagePack.GeneratorCore/CodeAnalysis/TypeCollector.cs +++ b/src/MessagePack.GeneratorCore/CodeAnalysis/TypeCollector.cs @@ -971,10 +971,11 @@ namespace MessagePackCompiler.CodeAnalysis { var name = type.ContainingType is object ? GetMinimallyQualifiedClassName(type.ContainingType) + "_" : string.Empty; name += type.ToDisplayString(SymbolDisplayFormat.MinimallyQualifiedFormat); - name = name.Replace(".", "_"); - name = name.Replace("<", "_"); - name = name.Replace(">", "_"); + name = name.Replace('.', '_'); + name = name.Replace('<', '_'); + name = name.Replace('>', '_'); name = Regex.Replace(name, @"\[([,])*\]", match => $"Array{match.Length - 1}"); + name = name.Replace("?", string.Empty); return name; } diff --git a/src/MessagePack.GeneratorCore/CodeGenerator.cs b/src/MessagePack.GeneratorCore/CodeGenerator.cs index f9654693..1f48973e 100644 --- a/src/MessagePack.GeneratorCore/CodeGenerator.cs +++ b/src/MessagePack.GeneratorCore/CodeGenerator.cs @@ -2,6 +2,7 @@ // Licensed under the MIT license. See LICENSE file in the project root for full license information. using System; +using System.Collections.Generic; using System.Diagnostics; using System.IO; using System.Linq; @@ -16,6 +17,8 @@ namespace MessagePackCompiler { public class CodeGenerator { + private static readonly HashSet InvalidFileCharSet = new(Path.GetInvalidFileNameChars()); + private static readonly Encoding NoBomUtf8 = new UTF8Encoding(false); private readonly Action logger; @@ -212,15 +215,76 @@ namespace MessagePackCompiler private Task OutputToDirAsync(string dir, string ns, string name, string multipleOutSymbol, string text) { - if (multipleOutSymbol == string.Empty) + var builder = new StringBuilder(); + void AppendDir(string dir) + { + if (dir.Length != 0) + { + builder.Append(dir); + if (dir[dir.Length - 1] != Path.DirectorySeparatorChar && dir[dir.Length - 1] != Path.AltDirectorySeparatorChar) + { + builder.Append(Path.DirectorySeparatorChar); + } + } + } + + void AppendChar(char c) + { + if (c == '.' || InvalidFileCharSet.Contains(c)) + { + builder.Append('_'); + } + else + { + builder.Append(c); + } + } + + void Append(string text) { - return OutputAsync(Path.Combine(dir, $"{ns}_{name}".Replace(".", "_").Replace("global::", string.Empty) + ".cs"), text); + var span = text.AsSpan(); + while (!span.IsEmpty) + { + var index = span.IndexOf("global::".AsSpan()); + if (index == -1) + { + foreach (var c in span) + { + AppendChar(c); + } + + break; + } + + if (index == 0) + { + span = span.Slice("global::".Length); + continue; + } + + foreach (var c in span.Slice(0, index)) + { + AppendChar(c); + } + + span = span.Slice(index + "global::".Length); + } } - else + + AppendDir(dir); + + if (!string.IsNullOrWhiteSpace(multipleOutSymbol)) { text = $"#if {multipleOutSymbol}" + Environment.NewLine + text + Environment.NewLine + "#endif"; - return OutputAsync(Path.Combine(dir, MultiSymbolToSafeFilePath(multipleOutSymbol), $"{ns}_{name}".Replace(".", "_").Replace("global::", string.Empty) + ".cs"), text); + AppendDir(MultiSymbolToSafeFilePath(multipleOutSymbol)); } + + Append(ns); + builder.Append('_'); + Append(name); + builder.Append(".cs"); + + return OutputAsync(builder.ToString(), text); } private Task OutputAsync(string path, string text) -- cgit v1.2.3 From e12b32f643109721491ea0ffe3d20ea898a63204 Mon Sep 17 00:00:00 2001 From: Yoshifumi Kawai Date: Tue, 12 Apr 2022 17:25:10 +0900 Subject: update package.json to 2.3.85 --- src/MessagePack.UnityClient/Assets/Scripts/MessagePack/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/package.json b/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/package.json index 677cba61..60798807 100644 --- a/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/package.json +++ b/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/package.json @@ -1,7 +1,7 @@ { "name": "com.neuecc.messagepack", "displayName": "MessagePack", - "version": "2.3.74", + "version": "2.3.85", "unity": "2018.4", "description": "Extremely Fast MessagePack Serializer for C#.", "keywords": [ -- cgit v1.2.3 From 5484c90c04cb5e6b81f650436cc751d57d3f15f7 Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Mon, 23 May 2022 20:50:08 -0600 Subject: Update SDK to 6.0.300 --- global.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/global.json b/global.json index 2645bb53..954a92e7 100644 --- a/global.json +++ b/global.json @@ -1,6 +1,6 @@ { "sdk": { - "version": "6.0.102", + "version": "6.0.300", "rollForward": "patch", "allowPrerelease": false } -- cgit v1.2.3 From 50b549fe1ffa6346675a55e5bb914c0a8def3c37 Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Tue, 24 May 2022 10:04:44 -0600 Subject: Update Nerdbank.Streams --- sandbox/DynamicCodeDumper/DynamicCodeDumper.csproj | 2 +- .../PerfBenchmarkDotNet/PerfBenchmarkDotNet.csproj | 2 +- sandbox/PerfNetFramework/PerfNetFramework.csproj | 2 +- .../Scripts/MessagePack/Internal/Sequence`1.cs | 120 +++++++++++++++++---- .../MessagePack.GeneratedCode.Tests.csproj | 2 +- .../MessagePack.Generator.Tests.csproj | 2 +- tests/MessagePack.Tests/MessagePack.Tests.csproj | 2 +- 7 files changed, 104 insertions(+), 28 deletions(-) diff --git a/sandbox/DynamicCodeDumper/DynamicCodeDumper.csproj b/sandbox/DynamicCodeDumper/DynamicCodeDumper.csproj index 633265af..0daf9da4 100644 --- a/sandbox/DynamicCodeDumper/DynamicCodeDumper.csproj +++ b/sandbox/DynamicCodeDumper/DynamicCodeDumper.csproj @@ -143,7 +143,7 @@ - + diff --git a/sandbox/PerfBenchmarkDotNet/PerfBenchmarkDotNet.csproj b/sandbox/PerfBenchmarkDotNet/PerfBenchmarkDotNet.csproj index 36fe6baf..d9a575d0 100644 --- a/sandbox/PerfBenchmarkDotNet/PerfBenchmarkDotNet.csproj +++ b/sandbox/PerfBenchmarkDotNet/PerfBenchmarkDotNet.csproj @@ -19,7 +19,7 @@ - + diff --git a/sandbox/PerfNetFramework/PerfNetFramework.csproj b/sandbox/PerfNetFramework/PerfNetFramework.csproj index 080b4fb7..89e5cedf 100644 --- a/sandbox/PerfNetFramework/PerfNetFramework.csproj +++ b/sandbox/PerfNetFramework/PerfNetFramework.csproj @@ -6,7 +6,7 @@ - + diff --git a/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/Internal/Sequence`1.cs b/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/Internal/Sequence`1.cs index 9fe752df..2813b92e 100644 --- a/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/Internal/Sequence`1.cs +++ b/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/Internal/Sequence`1.cs @@ -27,7 +27,11 @@ namespace Nerdbank.Streams [DebuggerDisplay("{" + nameof(DebuggerDisplay) + ",nq}")] internal class Sequence : IBufferWriter, IDisposable { - private static readonly int DefaultLengthFromArrayPool = 1 + (4095 / Marshal.SizeOf()); + private const int MaximumAutoGrowSize = 32 * 1024; + + private static readonly int DefaultLengthFromArrayPool = 1 + (4095 / Unsafe.SizeOf()); + + private static readonly ReadOnlySequence Empty = new ReadOnlySequence(SequenceSegment.Empty, 0, SequenceSegment.Empty, 0); private readonly Stack segmentPool = new Stack(); @@ -87,9 +91,21 @@ namespace Nerdbank.Streams /// The in use may itself have a minimum array length as well, /// in which case the higher of the two minimums dictate the minimum array size that will be allocated. /// + /// + /// If is true, this value may be automatically increased as the length of a sequence grows. + /// /// public int MinimumSpanLength { get; set; } = 0; + /// + /// Gets or sets a value indicating whether the should be + /// intelligently increased as the length of the sequence grows. + /// + /// + /// This can help prevent long sequences made up of many very small arrays. + /// + public bool AutoIncreaseMinimumSpanLength { get; set; } = true; + /// /// Gets this sequence expressed as a . /// @@ -112,9 +128,9 @@ namespace Nerdbank.Streams /// The sequence to convert. public static implicit operator ReadOnlySequence(Sequence sequence) { - return sequence.first != null + return sequence.first != null && sequence.last != null ? new ReadOnlySequence(sequence.first, sequence.first.Start, sequence.last, sequence.last.End) - : ReadOnlySequence.Empty; + : Empty; } /// @@ -128,10 +144,22 @@ namespace Nerdbank.Streams public void AdvanceTo(SequencePosition position) { var firstSegment = (SequenceSegment)position.GetObject(); + if (firstSegment == null) + { + // Emulate PipeReader behavior which is to just return for default(SequencePosition) + return; + } + + if (ReferenceEquals(firstSegment, SequenceSegment.Empty) && this.Length == 0) + { + // We were called with our own empty buffer segment. + return; + } + int firstIndex = position.GetInteger(); // Before making any mutations, confirm that the block specified belongs to this sequence. - var current = this.first; + Sequence.SequenceSegment current = this.first; while (current != firstSegment && current != null) { current = current.Next; @@ -151,12 +179,7 @@ namespace Nerdbank.Streams firstSegment.AdvanceTo(firstIndex); - if (firstSegment.Length == 0) - { - firstSegment = this.RecycleAndGetNext(firstSegment); - } - - this.first = firstSegment; + this.first = firstSegment.Length == 0 ? this.RecycleAndGetNext(firstSegment) : firstSegment; if (this.first == null) { @@ -174,6 +197,7 @@ namespace Nerdbank.Streams SequenceSegment last = this.last; Verify.Operation(last != null, "Cannot advance before acquiring memory."); last.Advance(count); + this.ConsiderMinimumSizeIncrease(); } /// @@ -190,6 +214,24 @@ namespace Nerdbank.Streams /// The requested memory. public Span GetSpan(int sizeHint) => this.GetSegment(sizeHint).RemainingSpan; + /// + /// Adds an existing memory location to this sequence without copying. + /// + /// The memory to add. + /// + /// This *may* leave significant slack space in a previously allocated block if calls to + /// follow calls to or . + /// + public void Append(ReadOnlyMemory memory) + { + if (memory.Length > 0) + { + Sequence.SequenceSegment segment = this.segmentPool.Count > 0 ? this.segmentPool.Pop() : new SequenceSegment(); + segment.AssignForeign(memory); + this.Append(segment); + } + } + /// /// Clears the entire sequence, recycles associated memory into pools, /// and resets this instance for reuse. @@ -204,7 +246,7 @@ namespace Nerdbank.Streams /// public void Reset() { - var current = this.first; + Sequence.SequenceSegment current = this.first; while (current != null) { current = this.RecycleAndGetNext(current); @@ -236,7 +278,7 @@ namespace Nerdbank.Streams if (minBufferSize.HasValue) { - var segment = this.segmentPool.Count > 0 ? this.segmentPool.Pop() : new SequenceSegment(); + Sequence.SequenceSegment segment = this.segmentPool.Count > 0 ? this.segmentPool.Pop() : new SequenceSegment(); if (this.arrayPool != null) { segment.Assign(this.arrayPool.Rent(minBufferSize.Value == -1 ? DefaultLengthFromArrayPool : minBufferSize.Value)); @@ -268,7 +310,7 @@ namespace Nerdbank.Streams else { // The last block is completely unused. Replace it instead of appending to it. - var current = this.first; + Sequence.SequenceSegment current = this.first; if (this.first != this.last) { while (current.Next != this.last) @@ -291,24 +333,40 @@ namespace Nerdbank.Streams private SequenceSegment RecycleAndGetNext(SequenceSegment segment) { - var recycledSegment = segment; - segment = segment.Next; + Sequence.SequenceSegment recycledSegment = segment; + Sequence.SequenceSegment nextSegment = segment.Next; recycledSegment.ResetMemory(this.arrayPool); this.segmentPool.Push(recycledSegment); - return segment; + return nextSegment; + } + + private void ConsiderMinimumSizeIncrease() + { + if (this.AutoIncreaseMinimumSpanLength && this.MinimumSpanLength < MaximumAutoGrowSize) + { + int autoSize = Math.Min(MaximumAutoGrowSize, (int)Math.Min(int.MaxValue, this.Length / 2)); + if (this.MinimumSpanLength < autoSize) + { + this.MinimumSpanLength = autoSize; + } + } } private class SequenceSegment : ReadOnlySequenceSegment { + internal static readonly SequenceSegment Empty = new SequenceSegment(); + /// /// A value indicating whether the element may contain references (and thus must be cleared). /// private static readonly bool MayContainReferences = !typeof(T).GetTypeInfo().IsPrimitive; +#pragma warning disable SA1011 // Closing square brackets should be spaced correctly /// /// Gets the backing array, when using an instead of a . /// private T[] array; +#pragma warning restore SA1011 // Closing square brackets should be spaced correctly /// /// Gets the position within where the data starts. @@ -362,6 +420,11 @@ namespace Nerdbank.Streams set => base.Next = value; } + /// + /// Gets a value indicating whether this segment refers to memory that came from outside and that we cannot write to nor recycle. + /// + internal bool IsForeignMemory => this.array == null && this.MemoryOwner == null; + /// /// Assigns this (recyclable) segment a new area in memory. /// @@ -382,12 +445,22 @@ namespace Nerdbank.Streams this.Memory = array; } + /// + /// Assigns this (recyclable) segment a new area in memory. + /// + /// A memory block obtained from outside, that we do not own and should not recycle. + internal void AssignForeign(ReadOnlyMemory memory) + { + this.Memory = memory; + this.End = memory.Length; + } + /// /// Clears all fields in preparation to recycle this instance. /// internal void ResetMemory(ArrayPool arrayPool) { - this.ClearReferences(this.Start, this.End); + this.ClearReferences(this.Start, this.End - this.Start); this.Memory = default; this.Next = null; this.RunningIndex = 0; @@ -411,14 +484,17 @@ namespace Nerdbank.Streams /// The next segment in the linked list. internal void SetNext(SequenceSegment segment) { - Debug.Assert(segment != null, "Null not allowed."); this.Next = segment; segment.RunningIndex = this.RunningIndex + this.Start + this.Length; - // When setting Memory, we start with index 0 instead of this.Start because - // the first segment has an explicit index set anyway, - // and we don't want to double-count it here. - this.Memory = this.AvailableMemory.Slice(0, this.Start + this.Length); + // Trim any slack on this segment. + if (!this.IsForeignMemory) + { + // When setting Memory, we start with index 0 instead of this.Start because + // the first segment has an explicit index set anyway, + // and we don't want to double-count it here. + this.Memory = this.AvailableMemory.Slice(0, this.Start + this.Length); + } } /// diff --git a/tests/MessagePack.GeneratedCode.Tests/MessagePack.GeneratedCode.Tests.csproj b/tests/MessagePack.GeneratedCode.Tests/MessagePack.GeneratedCode.Tests.csproj index 99ef099c..0844ff4e 100644 --- a/tests/MessagePack.GeneratedCode.Tests/MessagePack.GeneratedCode.Tests.csproj +++ b/tests/MessagePack.GeneratedCode.Tests/MessagePack.GeneratedCode.Tests.csproj @@ -8,7 +8,7 @@ - + diff --git a/tests/MessagePack.Generator.Tests/MessagePack.Generator.Tests.csproj b/tests/MessagePack.Generator.Tests/MessagePack.Generator.Tests.csproj index 9f399389..7c12e7f5 100644 --- a/tests/MessagePack.Generator.Tests/MessagePack.Generator.Tests.csproj +++ b/tests/MessagePack.Generator.Tests/MessagePack.Generator.Tests.csproj @@ -13,7 +13,7 @@ - + diff --git a/tests/MessagePack.Tests/MessagePack.Tests.csproj b/tests/MessagePack.Tests/MessagePack.Tests.csproj index 9f7d9832..f6ff6860 100644 --- a/tests/MessagePack.Tests/MessagePack.Tests.csproj +++ b/tests/MessagePack.Tests/MessagePack.Tests.csproj @@ -27,7 +27,7 @@ - + -- cgit v1.2.3 From c7ef724b09e12284062fb5534d74c78164685fbc Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Mon, 23 May 2022 20:47:44 -0600 Subject: Add built-in support for .NET 6 `DateOnly` and `TimeOnly` types `DateOnly` requires 5 bytes (typically). `TimeOnly` requires 6 bytes for second resolution or 8 bytes for ticks resolution. This is automatically selected based on the original value. Closes #1240 # Conflicts: # src/MessagePack/net6.0/PublicAPI.Unshipped.txt --- README.md | 44 +++++++++++------ .../MessagePack/Formatters/DateTimeFormatters.cs | 46 +++++++++++++++++ .../MessagePack/Resolvers/BuiltinResolver.cs | 6 ++- .../StandardClassLibraryFormatterTests.cs | 57 +++++++++++++++++++++- .../Scripts/Tests/ShareTests/TestUtilities.cs | 2 + src/MessagePack/net6.0/PublicAPI.Unshipped.txt | 8 +++ 6 files changed, 145 insertions(+), 18 deletions(-) diff --git a/README.md b/README.md index b6427567..77d2c655 100644 --- a/README.md +++ b/README.md @@ -1499,24 +1499,36 @@ var resolver = MessagePack.Resolvers.CompositeResolver.Create( ## Reserved Extension Types -MessagePack for C# already used some MessagePack extension type codes, be careful to use same ext code. +MessagePack for C# already used some MessagePack extension type codes, be careful to avoid using the same ext code for other purposes. + +Range | Reserved for +--|-- +\[-128, -1\] | Reserved by the msgpack spec for predefined types +\[30, 120) | Reserved for this library's use to support common types in .NET + +This leaves the following ranges for your use: + +- \[0, 30) +- \[120, 127] + +Within the *reserved* ranges, this library defines or implements extensions that use these type codes: | Code | Type | Use by | -| --- | --- | --- | -| -1 | DateTime | MessagePack-spec reserved for timestamp | -| 30 | Vector2[] | for Unity, UnsafeBlitFormatter | -| 31 | Vector3[] | for Unity, UnsafeBlitFormatter | -| 32 | Vector4[] | for Unity, UnsafeBlitFormatter | -| 33 | Quaternion[] | for Unity, UnsafeBlitFormatter | -| 34 | Color[] | for Unity, UnsafeBlitFormatter | -| 35 | Bounds[] | for Unity, UnsafeBlitFormatter | -| 36 | Rect[] | for Unity, UnsafeBlitFormatter | -| 37 | Int[] | for Unity, UnsafeBlitFormatter | -| 38 | Float[] | for Unity, UnsafeBlitFormatter | -| 39 | Double[] | for Unity, UnsafeBlitFormatter | -| 98 | All | MessagePackCompression.Lz4BlockArray | -| 99 | All | MessagePackCompression.Lz4Block | -| 100 | object | TypelessFormatter | +| ---- | ---- | --- | +| -1 | DateTime | MessagePack-spec reserved for timestamp | +| 30 | Vector2[] | for Unity, UnsafeBlitFormatter | +| 31 | Vector3[] | for Unity, UnsafeBlitFormatter | +| 32 | Vector4[] | for Unity, UnsafeBlitFormatter | +| 33 | Quaternion[] | for Unity, UnsafeBlitFormatter | +| 34 | Color[] | for Unity, UnsafeBlitFormatter | +| 35 | Bounds[] | for Unity, UnsafeBlitFormatter | +| 36 | Rect[] | for Unity, UnsafeBlitFormatter | +| 37 | Int[] | for Unity, UnsafeBlitFormatter | +| 38 | Float[] | for Unity, UnsafeBlitFormatter | +| 39 | Double[] | for Unity, UnsafeBlitFormatter | +| 98 | All | MessagePackCompression.Lz4BlockArray | +| 99 | All | MessagePackCompression.Lz4Block | +| 100 | object | TypelessFormatter | ## Unity support diff --git a/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/Formatters/DateTimeFormatters.cs b/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/Formatters/DateTimeFormatters.cs index 06d2ef80..07da2097 100644 --- a/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/Formatters/DateTimeFormatters.cs +++ b/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/Formatters/DateTimeFormatters.cs @@ -70,4 +70,50 @@ namespace MessagePack.Formatters return array; } } + +#if NET6_0_OR_GREATER + /// + /// Serializes a value as an ordinary using the . + /// + public sealed class DateOnlyFormatter : IMessagePackFormatter + { + public static readonly DateOnlyFormatter Instance = new DateOnlyFormatter(); + + private DateOnlyFormatter() + { + } + + public void Serialize(ref MessagePackWriter writer, DateOnly value, MessagePackSerializerOptions options) + { + writer.Write(value.DayNumber); + } + + public DateOnly Deserialize(ref MessagePackReader reader, MessagePackSerializerOptions options) + { + return DateOnly.FromDayNumber(reader.ReadInt32()); + } + } + + /// + /// Serializes a value as an extension, recording either seconds or ticks depending on the resolution required. + /// + public sealed class TimeOnlyFormatter : IMessagePackFormatter + { + public static readonly TimeOnlyFormatter Instance = new TimeOnlyFormatter(); + + private TimeOnlyFormatter() + { + } + + public void Serialize(ref MessagePackWriter writer, TimeOnly value, MessagePackSerializerOptions options) + { + writer.Write(value.Ticks); + } + + public TimeOnly Deserialize(ref MessagePackReader reader, MessagePackSerializerOptions options) + { + return new TimeOnly(reader.ReadInt64()); + } + } +#endif } diff --git a/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/Resolvers/BuiltinResolver.cs b/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/Resolvers/BuiltinResolver.cs index 000b9fbd..0defd99f 100644 --- a/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/Resolvers/BuiltinResolver.cs +++ b/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/Resolvers/BuiltinResolver.cs @@ -64,9 +64,13 @@ namespace MessagePack.Internal { typeof(byte), ByteFormatter.Instance }, { typeof(sbyte), SByteFormatter.Instance }, { typeof(DateTime), DateTimeFormatter.Instance }, +#if NET6_0_OR_GREATER + { typeof(DateOnly), DateOnlyFormatter.Instance }, + { typeof(TimeOnly), TimeOnlyFormatter.Instance }, +#endif { typeof(char), CharFormatter.Instance }, - // Nulllable Primitive + // Nullable Primitive { typeof(Int16?), NullableInt16Formatter.Instance }, { typeof(Int32?), NullableInt32Formatter.Instance }, { typeof(Int64?), NullableInt64Formatter.Instance }, diff --git a/src/MessagePack.UnityClient/Assets/Scripts/Tests/ShareTests/StandardClassLibraryFormatterTests.cs b/src/MessagePack.UnityClient/Assets/Scripts/Tests/ShareTests/StandardClassLibraryFormatterTests.cs index 12abda44..35123476 100644 --- a/src/MessagePack.UnityClient/Assets/Scripts/Tests/ShareTests/StandardClassLibraryFormatterTests.cs +++ b/src/MessagePack.UnityClient/Assets/Scripts/Tests/ShareTests/StandardClassLibraryFormatterTests.cs @@ -2,7 +2,7 @@ // Licensed under the MIT license. See LICENSE file in the project root for full license information. using System; -using System.Linq; +using Nerdbank.Streams; using Xunit; using Xunit.Abstractions; @@ -77,5 +77,60 @@ namespace MessagePack.Tests byte[] byte_array = MessagePackSerializer.Deserialize(input); Assert.Equal(new byte[] { 1, 2, 3 }, byte_array); } + +#if NET6_0_OR_GREATER + [Fact] + public void DateOnly() + { + var value = new DateOnly(2012, 3, 5); + this.AssertRoundtrip(value); + this.AssertRoundtrip(value); + this.AssertRoundtrip(new[] { value }); + } + + [Fact] + public void TimeOnly() + { + TimeOnly lowRes = new TimeOnly(5, 4, 3); + this.AssertRoundtrip(lowRes); + this.AssertRoundtrip(lowRes); + this.AssertRoundtrip(new[] { lowRes }); + + TimeOnly mediumRes = new TimeOnly(5, 4, 3, 2); + this.AssertRoundtrip(mediumRes); + this.AssertRoundtrip(mediumRes); + this.AssertRoundtrip(new[] { mediumRes }); + + TimeOnly highRes = new TimeOnly(lowRes.Ticks + 1); + this.AssertRoundtrip(highRes); + this.AssertRoundtrip(System.TimeOnly.MaxValue); + } +#endif + + private void AssertRoundtrip(T value) + { + Assert.Equal(value, this.Roundtrip(value, breakupBuffer: false)); + Assert.Equal(value, this.Roundtrip(value, breakupBuffer: true)); + } + + private T Roundtrip(T value, bool breakupBuffer = false) + { + byte[] msgpack = MessagePackSerializer.Serialize(value, MessagePackSerializerOptions.Standard); + this.logger.WriteLine("{0} 0x{1}", value, TestUtilities.ToHex(msgpack)); + + if (breakupBuffer) + { + using (Sequence seq = new Sequence()) + { + seq.Append(msgpack.AsMemory(0, msgpack.Length - 1)); + seq.Append(msgpack.AsMemory(msgpack.Length - 1, 1)); + return MessagePackSerializer.Deserialize(seq, MessagePackSerializerOptions.Standard); + } + } + else + { + return MessagePackSerializer.Deserialize(msgpack, MessagePackSerializerOptions.Standard); + } + } } } diff --git a/src/MessagePack.UnityClient/Assets/Scripts/Tests/ShareTests/TestUtilities.cs b/src/MessagePack.UnityClient/Assets/Scripts/Tests/ShareTests/TestUtilities.cs index 0a4bf9fb..abc85b0f 100644 --- a/src/MessagePack.UnityClient/Assets/Scripts/Tests/ShareTests/TestUtilities.cs +++ b/src/MessagePack.UnityClient/Assets/Scripts/Tests/ShareTests/TestUtilities.cs @@ -15,6 +15,8 @@ namespace MessagePack.Tests /// Gets a value indicating whether the mono runtime is executing this code. /// internal static bool IsRunningOnMono => Type.GetType("Mono.Runtime") != null; + + internal static string ToHex(byte[] buffer) => BitConverter.ToString(buffer).Replace("-", string.Empty).ToLowerInvariant(); } public class NullTestOutputHelper : ITestOutputHelper diff --git a/src/MessagePack/net6.0/PublicAPI.Unshipped.txt b/src/MessagePack/net6.0/PublicAPI.Unshipped.txt index 9ba64088..78006a92 100644 --- a/src/MessagePack/net6.0/PublicAPI.Unshipped.txt +++ b/src/MessagePack/net6.0/PublicAPI.Unshipped.txt @@ -1,6 +1,14 @@ +MessagePack.Formatters.DateOnlyFormatter +MessagePack.Formatters.DateOnlyFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> System.DateOnly +MessagePack.Formatters.DateOnlyFormatter.Serialize(ref MessagePack.MessagePackWriter writer, System.DateOnly value, MessagePack.MessagePackSerializerOptions options) -> void MessagePack.Formatters.StringInterningFormatter MessagePack.Formatters.StringInterningFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> string MessagePack.Formatters.StringInterningFormatter.Serialize(ref MessagePack.MessagePackWriter writer, string value, MessagePack.MessagePackSerializerOptions options) -> void MessagePack.Formatters.StringInterningFormatter.StringInterningFormatter() -> void +MessagePack.Formatters.TimeOnlyFormatter +MessagePack.Formatters.TimeOnlyFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> System.TimeOnly +MessagePack.Formatters.TimeOnlyFormatter.Serialize(ref MessagePack.MessagePackWriter writer, System.TimeOnly value, MessagePack.MessagePackSerializerOptions options) -> void MessagePack.MessagePackSerializerOptions.CompressionMinLength.get -> int MessagePack.MessagePackSerializerOptions.WithCompressionMinLength(int compressionMinLength) -> MessagePack.MessagePackSerializerOptions +static readonly MessagePack.Formatters.DateOnlyFormatter.Instance -> MessagePack.Formatters.DateOnlyFormatter +static readonly MessagePack.Formatters.TimeOnlyFormatter.Instance -> MessagePack.Formatters.TimeOnlyFormatter -- cgit v1.2.3 From 14ed43cf395c61b4a6aeefa6fe90b72e5d05c0ce Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Tue, 24 May 2022 07:30:54 -0600 Subject: Workaround https://github.com/dotnet/roslyn/issues/61478 --- .../Assets/Scripts/Tests/ShareTests/MessagePackWriterTests.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/MessagePack.UnityClient/Assets/Scripts/Tests/ShareTests/MessagePackWriterTests.cs b/src/MessagePack.UnityClient/Assets/Scripts/Tests/ShareTests/MessagePackWriterTests.cs index 5d06e78d..de2aa674 100644 --- a/src/MessagePack.UnityClient/Assets/Scripts/Tests/ShareTests/MessagePackWriterTests.cs +++ b/src/MessagePack.UnityClient/Assets/Scripts/Tests/ShareTests/MessagePackWriterTests.cs @@ -33,7 +33,7 @@ namespace MessagePack.Tests #endif /// - /// Verifies that + /// Verifies that MessagePackWriter.WriteRaw(ReadOnlySpan{byte}) /// accepts a span that came from stackalloc. /// [Fact] -- cgit v1.2.3 From bf892e733963e0ab8306e097ab7aee14cc0eb411 Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Tue, 7 Jun 2022 09:33:19 -0600 Subject: Suppress CS1591 warnings in generated code Fixes #1433 --- sandbox/Sandbox/Generated.cs | 11 +++++++++++ sandbox/TestData2/Generated.cs | 3 +++ src/MessagePack.GeneratorCore/Generator/EnumTemplate.cs | 13 +++++++------ src/MessagePack.GeneratorCore/Generator/EnumTemplate.tt | 1 + .../Generator/FormatterTemplate.cs | 7 ++++--- .../Generator/FormatterTemplate.tt | 1 + src/MessagePack.GeneratorCore/Generator/ResolverTemplate.cs | 7 ++++--- src/MessagePack.GeneratorCore/Generator/ResolverTemplate.tt | 1 + .../Generator/StringKey/StringKeyFormatterTemplate.cs | 7 ++++--- .../Generator/StringKey/StringKeyFormatterTemplate.tt | 1 + src/MessagePack.GeneratorCore/Generator/UnionTemplate.cs | 7 ++++--- src/MessagePack.GeneratorCore/Generator/UnionTemplate.tt | 1 + 12 files changed, 42 insertions(+), 18 deletions(-) diff --git a/sandbox/Sandbox/Generated.cs b/sandbox/Sandbox/Generated.cs index 64f68f84..5145c220 100644 --- a/sandbox/Sandbox/Generated.cs +++ b/sandbox/Sandbox/Generated.cs @@ -6,6 +6,7 @@ #pragma warning disable 612 #pragma warning disable 414 #pragma warning disable 168 +#pragma warning disable CS1591 // document public APIs #pragma warning disable SA1200 // Using directives should be placed correctly #pragma warning disable SA1312 // Variable names should begin with lower-case letter @@ -232,6 +233,7 @@ namespace MessagePack.Resolvers #pragma warning disable 612 #pragma warning disable 414 #pragma warning disable 168 +#pragma warning disable CS1591 // document public APIs #pragma warning disable SA1200 // Using directives should be placed correctly #pragma warning disable SA1403 // File may only contain a single namespace @@ -274,6 +276,7 @@ namespace MessagePack.Formatters #pragma warning disable 612 #pragma warning disable 414 #pragma warning disable 168 +#pragma warning disable CS1591 // document public APIs #pragma warning disable SA1200 // Using directives should be placed correctly #pragma warning disable SA1403 // File may only contain a single namespace @@ -317,6 +320,7 @@ namespace MessagePack.Formatters.SharedData #pragma warning disable 612 #pragma warning disable 414 #pragma warning disable 168 +#pragma warning disable CS1591 // document public APIs #pragma warning disable SA1200 // Using directives should be placed correctly #pragma warning disable SA1403 // File may only contain a single namespace @@ -440,6 +444,7 @@ namespace MessagePack.Formatters #pragma warning disable 612 #pragma warning disable 414 #pragma warning disable 168 +#pragma warning disable CS1591 // document public APIs #pragma warning disable SA1200 // Using directives should be placed correctly #pragma warning disable SA1403 // File may only contain a single namespace @@ -912,6 +917,7 @@ namespace MessagePack.Formatters.SharedData #pragma warning disable 612 #pragma warning disable 414 #pragma warning disable 168 +#pragma warning disable CS1591 // document public APIs #pragma warning disable SA1129 // Do not use default value type constructor #pragma warning disable SA1200 // Using directives should be placed correctly @@ -990,6 +996,7 @@ namespace MessagePack.Formatters.Abcdefg.Efcdigjl.Ateatatea.Hgfagfafgad #pragma warning disable 612 #pragma warning disable 414 #pragma warning disable 168 +#pragma warning disable CS1591 // document public APIs #pragma warning disable SA1129 // Do not use default value type constructor #pragma warning disable SA1200 // Using directives should be placed correctly @@ -1381,6 +1388,7 @@ namespace MessagePack.Formatters #pragma warning disable 612 #pragma warning disable 414 #pragma warning disable 168 +#pragma warning disable CS1591 // document public APIs #pragma warning disable SA1129 // Do not use default value type constructor #pragma warning disable SA1200 // Using directives should be placed correctly @@ -1615,6 +1623,7 @@ namespace MessagePack.Formatters #pragma warning disable 612 #pragma warning disable 414 #pragma warning disable 168 +#pragma warning disable CS1591 // document public APIs #pragma warning disable SA1129 // Do not use default value type constructor #pragma warning disable SA1200 // Using directives should be placed correctly @@ -1754,6 +1763,7 @@ namespace MessagePack.Formatters.PerfBenchmarkDotNet #pragma warning disable 612 #pragma warning disable 414 #pragma warning disable 168 +#pragma warning disable CS1591 // document public APIs #pragma warning disable SA1129 // Do not use default value type constructor #pragma warning disable SA1200 // Using directives should be placed correctly @@ -3843,6 +3853,7 @@ namespace MessagePack.Formatters.SharedData #pragma warning disable 612 #pragma warning disable 414 #pragma warning disable 168 +#pragma warning disable CS1591 // document public APIs #pragma warning disable SA1129 // Do not use default value type constructor #pragma warning disable SA1200 // Using directives should be placed correctly diff --git a/sandbox/TestData2/Generated.cs b/sandbox/TestData2/Generated.cs index 606e2dca..99ea2a88 100644 --- a/sandbox/TestData2/Generated.cs +++ b/sandbox/TestData2/Generated.cs @@ -6,6 +6,7 @@ #pragma warning disable 612 #pragma warning disable 414 #pragma warning disable 168 +#pragma warning disable CS1591 // document public APIs #pragma warning disable SA1200 // Using directives should be placed correctly #pragma warning disable SA1312 // Variable names should begin with lower-case letter @@ -116,6 +117,7 @@ namespace MessagePack.Resolvers #pragma warning disable 612 #pragma warning disable 414 #pragma warning disable 168 +#pragma warning disable CS1591 // document public APIs #pragma warning disable SA1200 // Using directives should be placed correctly #pragma warning disable SA1403 // File may only contain a single namespace @@ -173,6 +175,7 @@ namespace MessagePack.Formatters.TestData2 #pragma warning disable 612 #pragma warning disable 414 #pragma warning disable 168 +#pragma warning disable CS1591 // document public APIs #pragma warning disable SA1129 // Do not use default value type constructor #pragma warning disable SA1200 // Using directives should be placed correctly diff --git a/src/MessagePack.GeneratorCore/Generator/EnumTemplate.cs b/src/MessagePack.GeneratorCore/Generator/EnumTemplate.cs index b64b4912..ed315724 100644 --- a/src/MessagePack.GeneratorCore/Generator/EnumTemplate.cs +++ b/src/MessagePack.GeneratorCore/Generator/EnumTemplate.cs @@ -1,10 +1,10 @@ // ------------------------------------------------------------------------------ // -// このコードはツールによって生成されました。 -// ランタイム バージョン: 16.0.0.0 +// This code was generated by a tool. +// Runtime Version: 17.0.0.0 // -// このファイルへの変更は、正しくない動作の原因になる可能性があり、 -// コードが再生成されると失われます。 +// Changes to this file may cause incorrect behavior and will be lost if +// the code is regenerated. // // ------------------------------------------------------------------------------ namespace MessagePackCompiler.Generator @@ -17,7 +17,7 @@ namespace MessagePackCompiler.Generator /// /// Class to produce the template output /// - [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.TextTemplating", "16.0.0.0")] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.TextTemplating", "17.0.0.0")] public partial class EnumTemplate : EnumTemplateBase { /// @@ -33,6 +33,7 @@ namespace MessagePackCompiler.Generator #pragma warning disable 612 #pragma warning disable 414 #pragma warning disable 168 +#pragma warning disable CS1591 // document public APIs #pragma warning disable SA1200 // Using directives should be placed correctly #pragma warning disable SA1403 // File may only contain a single namespace @@ -78,7 +79,7 @@ namespace "); /// /// Base class for this transformation /// - [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.TextTemplating", "16.0.0.0")] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.TextTemplating", "17.0.0.0")] public class EnumTemplateBase { #region Fields diff --git a/src/MessagePack.GeneratorCore/Generator/EnumTemplate.tt b/src/MessagePack.GeneratorCore/Generator/EnumTemplate.tt index 28d34550..00190514 100644 --- a/src/MessagePack.GeneratorCore/Generator/EnumTemplate.tt +++ b/src/MessagePack.GeneratorCore/Generator/EnumTemplate.tt @@ -11,6 +11,7 @@ #pragma warning disable 612 #pragma warning disable 414 #pragma warning disable 168 +#pragma warning disable CS1591 // document public APIs #pragma warning disable SA1200 // Using directives should be placed correctly #pragma warning disable SA1403 // File may only contain a single namespace diff --git a/src/MessagePack.GeneratorCore/Generator/FormatterTemplate.cs b/src/MessagePack.GeneratorCore/Generator/FormatterTemplate.cs index e153d5eb..f208fde8 100644 --- a/src/MessagePack.GeneratorCore/Generator/FormatterTemplate.cs +++ b/src/MessagePack.GeneratorCore/Generator/FormatterTemplate.cs @@ -1,7 +1,7 @@ // ------------------------------------------------------------------------------ // // This code was generated by a tool. -// Runtime Version: 16.0.0.0 +// Runtime Version: 17.0.0.0 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -17,7 +17,7 @@ namespace MessagePackCompiler.Generator /// /// Class to produce the template output /// - [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.TextTemplating", "16.0.0.0")] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.TextTemplating", "17.0.0.0")] public partial class FormatterTemplate : FormatterTemplateBase { /// @@ -33,6 +33,7 @@ namespace MessagePackCompiler.Generator #pragma warning disable 612 #pragma warning disable 414 #pragma warning disable 168 +#pragma warning disable CS1591 // document public APIs #pragma warning disable SA1129 // Do not use default value type constructor #pragma warning disable SA1200 // Using directives should be placed correctly @@ -228,7 +229,7 @@ namespace "); /// /// Base class for this transformation /// - [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.TextTemplating", "16.0.0.0")] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.TextTemplating", "17.0.0.0")] public class FormatterTemplateBase { #region Fields diff --git a/src/MessagePack.GeneratorCore/Generator/FormatterTemplate.tt b/src/MessagePack.GeneratorCore/Generator/FormatterTemplate.tt index 631dc9f1..b1fd139a 100644 --- a/src/MessagePack.GeneratorCore/Generator/FormatterTemplate.tt +++ b/src/MessagePack.GeneratorCore/Generator/FormatterTemplate.tt @@ -11,6 +11,7 @@ #pragma warning disable 612 #pragma warning disable 414 #pragma warning disable 168 +#pragma warning disable CS1591 // document public APIs #pragma warning disable SA1129 // Do not use default value type constructor #pragma warning disable SA1200 // Using directives should be placed correctly diff --git a/src/MessagePack.GeneratorCore/Generator/ResolverTemplate.cs b/src/MessagePack.GeneratorCore/Generator/ResolverTemplate.cs index 48e4df6b..795bc5e7 100644 --- a/src/MessagePack.GeneratorCore/Generator/ResolverTemplate.cs +++ b/src/MessagePack.GeneratorCore/Generator/ResolverTemplate.cs @@ -1,7 +1,7 @@ // ------------------------------------------------------------------------------ // // This code was generated by a tool. -// Runtime Version: 16.0.0.0 +// Runtime Version: 17.0.0.0 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -17,7 +17,7 @@ namespace MessagePackCompiler.Generator /// /// Class to produce the template output /// - [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.TextTemplating", "16.0.0.0")] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.TextTemplating", "17.0.0.0")] public partial class ResolverTemplate : ResolverTemplateBase { /// @@ -33,6 +33,7 @@ namespace MessagePackCompiler.Generator #pragma warning disable 612 #pragma warning disable 414 #pragma warning disable 168 +#pragma warning disable CS1591 // document public APIs #pragma warning disable SA1200 // Using directives should be placed correctly #pragma warning disable SA1312 // Variable names should begin with lower-case letter @@ -132,7 +133,7 @@ namespace "); /// /// Base class for this transformation /// - [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.TextTemplating", "16.0.0.0")] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.TextTemplating", "17.0.0.0")] public class ResolverTemplateBase { #region Fields diff --git a/src/MessagePack.GeneratorCore/Generator/ResolverTemplate.tt b/src/MessagePack.GeneratorCore/Generator/ResolverTemplate.tt index e61688a1..d8a026a4 100644 --- a/src/MessagePack.GeneratorCore/Generator/ResolverTemplate.tt +++ b/src/MessagePack.GeneratorCore/Generator/ResolverTemplate.tt @@ -11,6 +11,7 @@ #pragma warning disable 612 #pragma warning disable 414 #pragma warning disable 168 +#pragma warning disable CS1591 // document public APIs #pragma warning disable SA1200 // Using directives should be placed correctly #pragma warning disable SA1312 // Variable names should begin with lower-case letter diff --git a/src/MessagePack.GeneratorCore/Generator/StringKey/StringKeyFormatterTemplate.cs b/src/MessagePack.GeneratorCore/Generator/StringKey/StringKeyFormatterTemplate.cs index a3df9f44..a6e8cdcd 100644 --- a/src/MessagePack.GeneratorCore/Generator/StringKey/StringKeyFormatterTemplate.cs +++ b/src/MessagePack.GeneratorCore/Generator/StringKey/StringKeyFormatterTemplate.cs @@ -1,7 +1,7 @@ // ------------------------------------------------------------------------------ // // This code was generated by a tool. -// Runtime Version: 16.0.0.0 +// Runtime Version: 17.0.0.0 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -17,7 +17,7 @@ namespace MessagePackCompiler.Generator /// /// Class to produce the template output /// - [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.TextTemplating", "16.0.0.0")] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.TextTemplating", "17.0.0.0")] public partial class StringKeyFormatterTemplate : StringKeyFormatterTemplateBase { /// @@ -33,6 +33,7 @@ namespace MessagePackCompiler.Generator #pragma warning disable 612 #pragma warning disable 414 #pragma warning disable 168 +#pragma warning disable CS1591 // document public APIs #pragma warning disable SA1129 // Do not use default value type constructor #pragma warning disable SA1200 // Using directives should be placed correctly @@ -201,7 +202,7 @@ foreach (var objInfo in ObjectSerializationInfos) { /// /// Base class for this transformation /// - [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.TextTemplating", "16.0.0.0")] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.TextTemplating", "17.0.0.0")] public class StringKeyFormatterTemplateBase { #region Fields diff --git a/src/MessagePack.GeneratorCore/Generator/StringKey/StringKeyFormatterTemplate.tt b/src/MessagePack.GeneratorCore/Generator/StringKey/StringKeyFormatterTemplate.tt index 9bc3e4d8..1a6c3253 100644 --- a/src/MessagePack.GeneratorCore/Generator/StringKey/StringKeyFormatterTemplate.tt +++ b/src/MessagePack.GeneratorCore/Generator/StringKey/StringKeyFormatterTemplate.tt @@ -12,6 +12,7 @@ #pragma warning disable 612 #pragma warning disable 414 #pragma warning disable 168 +#pragma warning disable CS1591 // document public APIs #pragma warning disable SA1129 // Do not use default value type constructor #pragma warning disable SA1200 // Using directives should be placed correctly diff --git a/src/MessagePack.GeneratorCore/Generator/UnionTemplate.cs b/src/MessagePack.GeneratorCore/Generator/UnionTemplate.cs index 1106f1cb..8f3b7cba 100644 --- a/src/MessagePack.GeneratorCore/Generator/UnionTemplate.cs +++ b/src/MessagePack.GeneratorCore/Generator/UnionTemplate.cs @@ -1,7 +1,7 @@ // ------------------------------------------------------------------------------ // // This code was generated by a tool. -// Runtime Version: 16.0.0.0 +// Runtime Version: 17.0.0.0 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -17,7 +17,7 @@ namespace MessagePackCompiler.Generator /// /// Class to produce the template output /// - [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.TextTemplating", "16.0.0.0")] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.TextTemplating", "17.0.0.0")] public partial class UnionTemplate : UnionTemplateBase { /// @@ -33,6 +33,7 @@ namespace MessagePackCompiler.Generator #pragma warning disable 612 #pragma warning disable 414 #pragma warning disable 168 +#pragma warning disable CS1591 // document public APIs #pragma warning disable SA1200 // Using directives should be placed correctly #pragma warning disable SA1403 // File may only contain a single namespace @@ -150,7 +151,7 @@ namespace "); /// /// Base class for this transformation /// - [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.TextTemplating", "16.0.0.0")] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.TextTemplating", "17.0.0.0")] public class UnionTemplateBase { #region Fields diff --git a/src/MessagePack.GeneratorCore/Generator/UnionTemplate.tt b/src/MessagePack.GeneratorCore/Generator/UnionTemplate.tt index 216cf3c3..59618f96 100644 --- a/src/MessagePack.GeneratorCore/Generator/UnionTemplate.tt +++ b/src/MessagePack.GeneratorCore/Generator/UnionTemplate.tt @@ -11,6 +11,7 @@ #pragma warning disable 612 #pragma warning disable 414 #pragma warning disable 168 +#pragma warning disable CS1591 // document public APIs #pragma warning disable SA1200 // Using directives should be placed correctly #pragma warning disable SA1403 // File may only contain a single namespace -- cgit v1.2.3 From cf86d7cbbe2b798bd5347d0e02210314267f68bd Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Thu, 9 Jun 2022 07:38:55 -0600 Subject: Update package.json version to 2.3.112 to match latest release --- src/MessagePack.UnityClient/Assets/Scripts/MessagePack/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/package.json b/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/package.json index 60798807..87e187eb 100644 --- a/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/package.json +++ b/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/package.json @@ -1,7 +1,7 @@ { "name": "com.neuecc.messagepack", "displayName": "MessagePack", - "version": "2.3.85", + "version": "2.3.112", "unity": "2018.4", "description": "Extremely Fast MessagePack Serializer for C#.", "keywords": [ -- cgit v1.2.3 From 9a3eb9c7da26b38d56b61b69512fc4d93b2a0f36 Mon Sep 17 00:00:00 2001 From: Yoshifumi Kawai Date: Fri, 10 Jun 2022 10:40:38 +0900 Subject: MessagePack.Generator RollForward to Major --- src/MessagePack.Generator/MessagePack.Generator.csproj | 1 + 1 file changed, 1 insertion(+) diff --git a/src/MessagePack.Generator/MessagePack.Generator.csproj b/src/MessagePack.Generator/MessagePack.Generator.csproj index b684a5b8..e75433d5 100644 --- a/src/MessagePack.Generator/MessagePack.Generator.csproj +++ b/src/MessagePack.Generator/MessagePack.Generator.csproj @@ -9,6 +9,7 @@ true true mpc + Major MessagePack.Generator -- cgit v1.2.3 From c0e85a1c1cac6e955f57c52c6053868e51e5c2fb Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Tue, 14 Jun 2022 13:46:16 -0600 Subject: Build 2.4 as stable version --- version.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/version.json b/version.json index 6fc917f3..fff14ab3 100644 --- a/version.json +++ b/version.json @@ -1,6 +1,6 @@ { "$schema": "https://raw.githubusercontent.com/dotnet/Nerdbank.GitVersioning/master/src/NerdBank.GitVersioning/version.schema.json", - "version": "2.4-alpha", + "version": "2.4", "publicReleaseRefSpec": [ "^refs/heads/master$", "^refs/heads/v1\\.x$", -- cgit v1.2.3 From a0324060aaad24b9f7f10feee04d575a017e8061 Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Tue, 14 Jun 2022 13:51:42 -0600 Subject: Apply better workaround for https://github.com/dotnet/roslyn/issues/61478 --- .../Assets/Scripts/Tests/ShareTests/MessagePackWriterTests.cs | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/MessagePack.UnityClient/Assets/Scripts/Tests/ShareTests/MessagePackWriterTests.cs b/src/MessagePack.UnityClient/Assets/Scripts/Tests/ShareTests/MessagePackWriterTests.cs index de2aa674..85d29365 100644 --- a/src/MessagePack.UnityClient/Assets/Scripts/Tests/ShareTests/MessagePackWriterTests.cs +++ b/src/MessagePack.UnityClient/Assets/Scripts/Tests/ShareTests/MessagePackWriterTests.cs @@ -10,6 +10,7 @@ using System.Threading; using Nerdbank.Streams; using Xunit; using Xunit.Abstractions; +using MessagePackWriterCref = MessagePack.MessagePackWriter; namespace MessagePack.Tests { @@ -33,7 +34,7 @@ namespace MessagePack.Tests #endif /// - /// Verifies that MessagePackWriter.WriteRaw(ReadOnlySpan{byte}) + /// Verifies that /// accepts a span that came from stackalloc. /// [Fact] -- cgit v1.2.3 From a346d11182fb658aea8d86c3dcf7b85b30e7b22c Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Tue, 14 Jun 2022 13:59:19 -0600 Subject: Drop net5.0 runtime targets Where we already had a .NET 6 target, we just drop net5.0. Where .NET 5 was the latest target, we change it to target .NET 6. This is because .NET 5 is no longer supported by Microsoft, so no one is expected to be using that runtime at this point. --- azure-pipelines/build_nonWindows.yml | 8 -------- sandbox/PerfBenchmarkDotNet/PerfBenchmarkDotNet.csproj | 2 +- sandbox/PerfNetFramework/PerfNetFramework.csproj | 2 +- src/MessagePack.Generator/MessagePack.Generator.csproj | 2 +- src/MessagePack/MessagePack.csproj | 2 +- tests/MessagePack.Tests/MessagePack.Tests.csproj | 2 +- 6 files changed, 5 insertions(+), 13 deletions(-) diff --git a/azure-pipelines/build_nonWindows.yml b/azure-pipelines/build_nonWindows.yml index 9a57e2f9..cf3f51d7 100644 --- a/azure-pipelines/build_nonWindows.yml +++ b/azure-pipelines/build_nonWindows.yml @@ -13,14 +13,6 @@ steps: arguments: --no-build -c $(BuildConfiguration) -f netcoreapp3.1 -v n --settings "$(Build.Repository.LocalPath)/azure-pipelines/$(Agent.OS).runsettings" testRunTitle: netcoreapp3.1-$(Agent.JobName) -- task: DotNetCoreCLI@2 - displayName: Run MessagePack.Tests (net5.0) - inputs: - command: test - projects: tests/MessagePack.Tests/MessagePack.Tests.csproj - arguments: --no-build -c $(BuildConfiguration) -f net5.0 -v n --settings "$(Build.Repository.LocalPath)/azure-pipelines/$(Agent.OS).runsettings" - testRunTitle: net5.0-$(Agent.JobName) - - task: DotNetCoreCLI@2 displayName: Run MessagePack.Tests (net6.0) inputs: diff --git a/sandbox/PerfBenchmarkDotNet/PerfBenchmarkDotNet.csproj b/sandbox/PerfBenchmarkDotNet/PerfBenchmarkDotNet.csproj index d9a575d0..6804253d 100644 --- a/sandbox/PerfBenchmarkDotNet/PerfBenchmarkDotNet.csproj +++ b/sandbox/PerfBenchmarkDotNet/PerfBenchmarkDotNet.csproj @@ -1,7 +1,7 @@  Exe - net472;net5.0 + net472;net6.0 true true diff --git a/sandbox/PerfNetFramework/PerfNetFramework.csproj b/sandbox/PerfNetFramework/PerfNetFramework.csproj index 89e5cedf..57cbfd36 100644 --- a/sandbox/PerfNetFramework/PerfNetFramework.csproj +++ b/sandbox/PerfNetFramework/PerfNetFramework.csproj @@ -1,7 +1,7 @@  Exe - net472;net5.0 + net472;net6.0 true diff --git a/src/MessagePack.Generator/MessagePack.Generator.csproj b/src/MessagePack.Generator/MessagePack.Generator.csproj index be7a1027..c0a15435 100644 --- a/src/MessagePack.Generator/MessagePack.Generator.csproj +++ b/src/MessagePack.Generator/MessagePack.Generator.csproj @@ -3,7 +3,7 @@ mpc Exe - netcoreapp3.1;net5.0;net6.0 + netcoreapp3.1;net6.0 10 enable true diff --git a/src/MessagePack/MessagePack.csproj b/src/MessagePack/MessagePack.csproj index cb24047a..801ab7de 100644 --- a/src/MessagePack/MessagePack.csproj +++ b/src/MessagePack/MessagePack.csproj @@ -1,7 +1,7 @@  - netstandard2.0;netcoreapp3.1;net5.0;net6.0 + netstandard2.0;netcoreapp3.1;net6.0 $(NoWarn);CS0649 True $(DefineConstants);SPAN_BUILTIN diff --git a/tests/MessagePack.Tests/MessagePack.Tests.csproj b/tests/MessagePack.Tests/MessagePack.Tests.csproj index f6ff6860..5fb26383 100644 --- a/tests/MessagePack.Tests/MessagePack.Tests.csproj +++ b/tests/MessagePack.Tests/MessagePack.Tests.csproj @@ -1,6 +1,6 @@  - net472;netcoreapp3.1;net5.0;net6.0 + net472;netcoreapp3.1;net6.0 true 10 true -- cgit v1.2.3 From c357cd8acd315ef6bba9ceb6afc7f72b1aee1772 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 22 Jun 2022 15:25:13 +0000 Subject: Bump Newtonsoft.Json from 10.0.3 to 13.0.1 in /sandbox/Sandbox Bumps [Newtonsoft.Json](https://github.com/JamesNK/Newtonsoft.Json) from 10.0.3 to 13.0.1. - [Release notes](https://github.com/JamesNK/Newtonsoft.Json/releases) - [Commits](https://github.com/JamesNK/Newtonsoft.Json/compare/10.0.3...13.0.1) --- updated-dependencies: - dependency-name: Newtonsoft.Json dependency-type: direct:production ... Signed-off-by: dependabot[bot] --- sandbox/Sandbox/Sandbox.csproj | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sandbox/Sandbox/Sandbox.csproj b/sandbox/Sandbox/Sandbox.csproj index a1561709..17da2db3 100644 --- a/sandbox/Sandbox/Sandbox.csproj +++ b/sandbox/Sandbox/Sandbox.csproj @@ -9,7 +9,7 @@ - + -- cgit v1.2.3 From 0eeb64b4fffe7c899477e2a2a6b9f422bfcf8096 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 22 Jun 2022 20:44:48 +0000 Subject: Bump Newtonsoft.Json in /benchmark/SerializerBenchmark Bumps [Newtonsoft.Json](https://github.com/JamesNK/Newtonsoft.Json) from 12.0.3 to 13.0.1. - [Release notes](https://github.com/JamesNK/Newtonsoft.Json/releases) - [Commits](https://github.com/JamesNK/Newtonsoft.Json/compare/12.0.3...13.0.1) --- updated-dependencies: - dependency-name: Newtonsoft.Json dependency-type: direct:production ... Signed-off-by: dependabot[bot] --- benchmark/SerializerBenchmark/SerializerBenchmark.csproj | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/benchmark/SerializerBenchmark/SerializerBenchmark.csproj b/benchmark/SerializerBenchmark/SerializerBenchmark.csproj index 78d2ad21..b6be2ea0 100644 --- a/benchmark/SerializerBenchmark/SerializerBenchmark.csproj +++ b/benchmark/SerializerBenchmark/SerializerBenchmark.csproj @@ -20,7 +20,7 @@ - + -- cgit v1.2.3 From 3074ea91278b1690243bf33e6fa2bbf9110c76c3 Mon Sep 17 00:00:00 2001 From: neuecc Date: Thu, 23 Jun 2022 17:55:27 +0900 Subject: add meta --- .../MessagePack/Formatters/StringInterningFormatter.cs.meta | 11 +++++++++++ .../Scripts/Tests/ShareTests/StringInterningTests.cs.meta | 11 +++++++++++ 2 files changed, 22 insertions(+) create mode 100644 src/MessagePack.UnityClient/Assets/Scripts/MessagePack/Formatters/StringInterningFormatter.cs.meta create mode 100644 src/MessagePack.UnityClient/Assets/Scripts/Tests/ShareTests/StringInterningTests.cs.meta diff --git a/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/Formatters/StringInterningFormatter.cs.meta b/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/Formatters/StringInterningFormatter.cs.meta new file mode 100644 index 00000000..329667d4 --- /dev/null +++ b/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/Formatters/StringInterningFormatter.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 78f9cfd44a10b334582b112b07143434 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/src/MessagePack.UnityClient/Assets/Scripts/Tests/ShareTests/StringInterningTests.cs.meta b/src/MessagePack.UnityClient/Assets/Scripts/Tests/ShareTests/StringInterningTests.cs.meta new file mode 100644 index 00000000..a6117b9c --- /dev/null +++ b/src/MessagePack.UnityClient/Assets/Scripts/Tests/ShareTests/StringInterningTests.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 593d09755237d984a95626a65167c3a7 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: -- cgit v1.2.3 From 9a2acd8e1bcc843e4ab9ff704f688749d526ee88 Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Thu, 23 Jun 2022 11:01:23 -0600 Subject: Add option to avoid large buffer allocations Allocating 1MB buffers contribute to the large object heap and should be avoidable for applications that it is a problem for. --- .../Scripts/MessagePack/MessagePackSerializer.cs | 5 ++-- .../MessagePack/MessagePackSerializerOptions.cs | 33 ++++++++++++++++++++++ .../MessagePackSerializerOptionsTests.cs | 31 +++++++++++++++++++- src/MessagePack/net6.0/PublicAPI.Unshipped.txt | 2 ++ .../netcoreapp3.1/PublicAPI.Unshipped.txt | 2 ++ .../netstandard2.0/PublicAPI.Unshipped.txt | 4 ++- 6 files changed, 72 insertions(+), 5 deletions(-) diff --git a/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/MessagePackSerializer.cs b/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/MessagePackSerializer.cs index 24b5373c..8c4a454c 100644 --- a/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/MessagePackSerializer.cs +++ b/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/MessagePackSerializer.cs @@ -18,7 +18,6 @@ namespace MessagePack [System.Diagnostics.CodeAnalysis.SuppressMessage("ApiDesign", "RS0026:Do not add multiple public overloads with optional parameters", Justification = "Each overload has sufficiently unique required parameters.")] public static partial class MessagePackSerializer { - private const int MaxHintSize = 1024 * 1024; private static MessagePackSerializerOptions defaultOptions; /// @@ -349,7 +348,7 @@ namespace MessagePack do { cancellationToken.ThrowIfCancellationRequested(); - Span span = sequence.GetSpan(stream.CanSeek ? (int)Math.Min(MaxHintSize, stream.Length - stream.Position) : 0); + Span span = sequence.GetSpan(stream.CanSeek ? (int)Math.Min(options.SuggestedContiguousMemorySize, stream.Length - stream.Position) : 0); bytesRead = stream.Read(span); sequence.Advance(bytesRead); } @@ -397,7 +396,7 @@ namespace MessagePack int bytesRead; do { - Memory memory = sequence.GetMemory(stream.CanSeek ? (int)Math.Min(MaxHintSize, stream.Length - stream.Position) : 0); + Memory memory = sequence.GetMemory(stream.CanSeek ? (int)Math.Min(options.SuggestedContiguousMemorySize, stream.Length - stream.Position) : 0); bytesRead = await stream.ReadAsync(memory, cancellationToken).ConfigureAwait(false); sequence.Advance(bytesRead); } diff --git a/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/MessagePackSerializerOptions.cs b/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/MessagePackSerializerOptions.cs index 771aa25f..a9a9ec51 100644 --- a/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/MessagePackSerializerOptions.cs +++ b/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/MessagePackSerializerOptions.cs @@ -58,6 +58,7 @@ namespace MessagePack this.Resolver = copyFrom.Resolver; this.Compression = copyFrom.Compression; this.CompressionMinLength = copyFrom.CompressionMinLength; + this.SuggestedContiguousMemorySize = copyFrom.SuggestedContiguousMemorySize; this.OldSpec = copyFrom.OldSpec; this.OmitAssemblyVersion = copyFrom.OmitAssemblyVersion; this.AllowAssemblyVersionMismatch = copyFrom.AllowAssemblyVersionMismatch; @@ -92,6 +93,16 @@ namespace MessagePack /// public int CompressionMinLength { get; private set; } = 64; + /// + /// Gets the size of contiguous memory blocks in bytes that may be allocated for buffering purposes. + /// + /// The default value is 1MB. + /// + /// Larger values may perform a bit faster, but may result in adding a runtime perf tax due to using the + /// Large Object Heap. + /// + public int SuggestedContiguousMemorySize { get; private set; } = 1024 * 1024; + /// /// Gets a value indicating whether to serialize with set to some value /// causing messagepack spec compliance to be explicitly set to the old or new format. @@ -227,6 +238,28 @@ namespace MessagePack return result; } + /// + /// Gets a copy of these options with the property set to a new value. + /// + /// The new value for the property. Must be at least 256. + /// The new instance; or the original if the value is unchanged. + public MessagePackSerializerOptions WithSuggestedContiguousMemorySize(int suggestedContiguousMemorySize) + { + if (this.SuggestedContiguousMemorySize == suggestedContiguousMemorySize) + { + return this; + } + + if (suggestedContiguousMemorySize < 256) + { + throw new ArgumentOutOfRangeException(nameof(suggestedContiguousMemorySize), "This should be at least 256"); + } + + var result = this.Clone(); + result.SuggestedContiguousMemorySize = suggestedContiguousMemorySize; + return result; + } + /// /// Gets a copy of these options with the property set to a new value. /// diff --git a/src/MessagePack.UnityClient/Assets/Scripts/Tests/ShareTests/MessagePackSerializerOptionsTests.cs b/src/MessagePack.UnityClient/Assets/Scripts/Tests/ShareTests/MessagePackSerializerOptionsTests.cs index dfe988f8..0db5157c 100644 --- a/src/MessagePack.UnityClient/Assets/Scripts/Tests/ShareTests/MessagePackSerializerOptionsTests.cs +++ b/src/MessagePack.UnityClient/Assets/Scripts/Tests/ShareTests/MessagePackSerializerOptionsTests.cs @@ -14,7 +14,8 @@ public class MessagePackSerializerOptionsTests .WithOmitAssemblyVersion(true) .WithResolver(BuiltinResolver.Instance) .WithOldSpec(false) - .WithSecurity(MySecurityOptions.Instance); + .WithSecurity(MySecurityOptions.Instance) + .WithSuggestedContiguousMemorySize(64 * 1024); [Fact] public void AllowAssemblyVersionMismatch() @@ -47,6 +48,16 @@ public class MessagePackSerializerOptionsTests Assert.Equal(128, options.CompressionMinLength); } + [Fact] + public void SuggestedContiguousMemorySize() + { + Assert.Equal(1024 * 1024, MessagePackSerializerOptions.Standard.SuggestedContiguousMemorySize); + Assert.Throws(() => MessagePackSerializerOptions.Standard.WithSuggestedContiguousMemorySize(0)); + Assert.Throws(() => MessagePackSerializerOptions.Standard.WithSuggestedContiguousMemorySize(4)); + MessagePackSerializerOptions options = MessagePackSerializerOptions.Standard.WithSuggestedContiguousMemorySize(512); + Assert.Equal(512, options.SuggestedContiguousMemorySize); + } + [Fact] public void OldSpec() { @@ -74,6 +85,7 @@ public class MessagePackSerializerOptionsTests var mutated = NonDefaultOptions.WithOldSpec(true); Assert.True(mutated.OldSpec.Value); Assert.Equal(NonDefaultOptions.Compression, mutated.Compression); + Assert.Equal(NonDefaultOptions.SuggestedContiguousMemorySize, mutated.SuggestedContiguousMemorySize); Assert.Equal(NonDefaultOptions.AllowAssemblyVersionMismatch, mutated.AllowAssemblyVersionMismatch); Assert.Equal(NonDefaultOptions.OmitAssemblyVersion, mutated.OmitAssemblyVersion); Assert.Same(NonDefaultOptions.Resolver, mutated.Resolver); @@ -92,12 +104,26 @@ public class MessagePackSerializerOptionsTests Assert.Same(MySecurityOptions.Instance, mutated.Security); } + [Fact] + public void WithSuggestedContiguousMemorySize_PreservesOtherProperties() + { + var mutated = NonDefaultOptions.WithSuggestedContiguousMemorySize(612); + Assert.Equal(612, mutated.SuggestedContiguousMemorySize); + Assert.Equal(NonDefaultOptions.Compression, mutated.Compression); + Assert.Equal(NonDefaultOptions.OldSpec, mutated.OldSpec); + Assert.Equal(NonDefaultOptions.AllowAssemblyVersionMismatch, mutated.AllowAssemblyVersionMismatch); + Assert.Equal(NonDefaultOptions.OmitAssemblyVersion, mutated.OmitAssemblyVersion); + Assert.Same(NonDefaultOptions.Resolver, mutated.Resolver); + Assert.Same(MySecurityOptions.Instance, mutated.Security); + } + [Fact] public void WithAllowAssemblyVersionMismatch_PreservesOtherProperties() { var mutated = NonDefaultOptions.WithAllowAssemblyVersionMismatch(false); Assert.False(mutated.AllowAssemblyVersionMismatch); Assert.Equal(NonDefaultOptions.Compression, mutated.Compression); + Assert.Equal(NonDefaultOptions.SuggestedContiguousMemorySize, mutated.SuggestedContiguousMemorySize); Assert.Equal(NonDefaultOptions.OldSpec, mutated.OldSpec); Assert.Equal(NonDefaultOptions.OmitAssemblyVersion, mutated.OmitAssemblyVersion); Assert.Same(NonDefaultOptions.Resolver, mutated.Resolver); @@ -110,6 +136,7 @@ public class MessagePackSerializerOptionsTests var mutated = NonDefaultOptions.WithOmitAssemblyVersion(false); Assert.False(mutated.OmitAssemblyVersion); Assert.Equal(NonDefaultOptions.Compression, mutated.Compression); + Assert.Equal(NonDefaultOptions.SuggestedContiguousMemorySize, mutated.SuggestedContiguousMemorySize); Assert.Equal(NonDefaultOptions.OldSpec, mutated.OldSpec); Assert.Equal(NonDefaultOptions.AllowAssemblyVersionMismatch, mutated.AllowAssemblyVersionMismatch); Assert.Same(NonDefaultOptions.Resolver, mutated.Resolver); @@ -122,6 +149,7 @@ public class MessagePackSerializerOptionsTests var mutated = NonDefaultOptions.WithResolver(ContractlessStandardResolver.Instance); Assert.Same(ContractlessStandardResolver.Instance, mutated.Resolver); Assert.Equal(NonDefaultOptions.Compression, mutated.Compression); + Assert.Equal(NonDefaultOptions.SuggestedContiguousMemorySize, mutated.SuggestedContiguousMemorySize); Assert.Equal(NonDefaultOptions.OldSpec, mutated.OldSpec); Assert.Equal(NonDefaultOptions.AllowAssemblyVersionMismatch, mutated.AllowAssemblyVersionMismatch); Assert.Equal(NonDefaultOptions.OmitAssemblyVersion, mutated.OmitAssemblyVersion); @@ -135,6 +163,7 @@ public class MessagePackSerializerOptionsTests Assert.Same(MessagePackSecurity.TrustedData, mutated.Security); Assert.Same(NonDefaultOptions.Resolver, mutated.Resolver); Assert.Equal(NonDefaultOptions.Compression, mutated.Compression); + Assert.Equal(NonDefaultOptions.SuggestedContiguousMemorySize, mutated.SuggestedContiguousMemorySize); Assert.Equal(NonDefaultOptions.OldSpec, mutated.OldSpec); Assert.Equal(NonDefaultOptions.AllowAssemblyVersionMismatch, mutated.AllowAssemblyVersionMismatch); Assert.Equal(NonDefaultOptions.OmitAssemblyVersion, mutated.OmitAssemblyVersion); diff --git a/src/MessagePack/net6.0/PublicAPI.Unshipped.txt b/src/MessagePack/net6.0/PublicAPI.Unshipped.txt index 78006a92..89697310 100644 --- a/src/MessagePack/net6.0/PublicAPI.Unshipped.txt +++ b/src/MessagePack/net6.0/PublicAPI.Unshipped.txt @@ -9,6 +9,8 @@ MessagePack.Formatters.TimeOnlyFormatter MessagePack.Formatters.TimeOnlyFormatter.Deserialize(ref MessagePack.MessagePackReader reader, MessagePack.MessagePackSerializerOptions options) -> System.TimeOnly MessagePack.Formatters.TimeOnlyFormatter.Serialize(ref MessagePack.MessagePackWriter writer, System.TimeOnly value, MessagePack.MessagePackSerializerOptions options) -> void MessagePack.MessagePackSerializerOptions.CompressionMinLength.get -> int +MessagePack.MessagePackSerializerOptions.SuggestedContiguousMemorySize.get -> int MessagePack.MessagePackSerializerOptions.WithCompressionMinLength(int compressionMinLength) -> MessagePack.MessagePackSerializerOptions +MessagePack.MessagePackSerializerOptions.WithSuggestedContiguousMemorySize(int suggestedContiguousMemorySize) -> MessagePack.MessagePackSerializerOptions static readonly MessagePack.Formatters.DateOnlyFormatter.Instance -> MessagePack.Formatters.DateOnlyFormatter static readonly MessagePack.Formatters.TimeOnlyFormatter.Instance -> MessagePack.Formatters.TimeOnlyFormatter diff --git a/src/MessagePack/netcoreapp3.1/PublicAPI.Unshipped.txt b/src/MessagePack/netcoreapp3.1/PublicAPI.Unshipped.txt index 9ba64088..ba449cac 100644 --- a/src/MessagePack/netcoreapp3.1/PublicAPI.Unshipped.txt +++ b/src/MessagePack/netcoreapp3.1/PublicAPI.Unshipped.txt @@ -3,4 +3,6 @@ MessagePack.Formatters.StringInterningFormatter.Deserialize(ref MessagePack.Mess MessagePack.Formatters.StringInterningFormatter.Serialize(ref MessagePack.MessagePackWriter writer, string value, MessagePack.MessagePackSerializerOptions options) -> void MessagePack.Formatters.StringInterningFormatter.StringInterningFormatter() -> void MessagePack.MessagePackSerializerOptions.CompressionMinLength.get -> int +MessagePack.MessagePackSerializerOptions.SuggestedContiguousMemorySize.get -> int MessagePack.MessagePackSerializerOptions.WithCompressionMinLength(int compressionMinLength) -> MessagePack.MessagePackSerializerOptions +MessagePack.MessagePackSerializerOptions.WithSuggestedContiguousMemorySize(int suggestedContiguousMemorySize) -> MessagePack.MessagePackSerializerOptions diff --git a/src/MessagePack/netstandard2.0/PublicAPI.Unshipped.txt b/src/MessagePack/netstandard2.0/PublicAPI.Unshipped.txt index 49e84ad1..2cdd3d32 100644 --- a/src/MessagePack/netstandard2.0/PublicAPI.Unshipped.txt +++ b/src/MessagePack/netstandard2.0/PublicAPI.Unshipped.txt @@ -3,4 +3,6 @@ MessagePack.Formatters.StringInterningFormatter.Deserialize(ref MessagePack.Mess MessagePack.Formatters.StringInterningFormatter.Serialize(ref MessagePack.MessagePackWriter writer, string value, MessagePack.MessagePackSerializerOptions options) -> void MessagePack.Formatters.StringInterningFormatter.StringInterningFormatter() -> void MessagePack.MessagePackSerializerOptions.CompressionMinLength.get -> int -MessagePack.MessagePackSerializerOptions.WithCompressionMinLength(int compressionMinLength) -> MessagePack.MessagePackSerializerOptions \ No newline at end of file +MessagePack.MessagePackSerializerOptions.SuggestedContiguousMemorySize.get -> int +MessagePack.MessagePackSerializerOptions.WithCompressionMinLength(int compressionMinLength) -> MessagePack.MessagePackSerializerOptions +MessagePack.MessagePackSerializerOptions.WithSuggestedContiguousMemorySize(int suggestedContiguousMemorySize) -> MessagePack.MessagePackSerializerOptions \ No newline at end of file -- cgit v1.2.3