diff --git a/Directory.Packages.props b/Directory.Packages.props
index a6460ff45..c9cf77423 100644
--- a/Directory.Packages.props
+++ b/Directory.Packages.props
@@ -27,7 +27,6 @@
-
diff --git a/README.md b/README.md
index b59c167e8..30cea70f9 100644
--- a/README.md
+++ b/README.md
@@ -721,7 +721,7 @@ Performance varies depending on the options used. This is a micro benchmark with
| JilString | 553.65 ns | NA | 7.62 | 0.0362 | 152 B |
| JilStreamReader | 1,408.46 ns | NA | 19.38 | 0.8450 | 3552 B |
-`ÌntKey`, `StringKey`, `Typeless_IntKey`, `Typeless_StringKey` are MessagePack for C# options. All MessagePack for C# options achieve zero memory allocations in the deserialization process. `JsonNetString`/`JilString` is deserialized from strings. `JsonNetStreamReader`/`JilStreamReader` is deserialized from UTF-8 byte arrays using `StreamReader`. Deserialization is normally read from Stream. Thus, it will be restored from byte arrays (or Stream) instead of strings.
+`IntKey`, `StringKey`, `Typeless_IntKey`, `Typeless_StringKey` are MessagePack for C# options. All MessagePack for C# options achieve zero memory allocations in the deserialization process. `JsonNetString`/`JilString` is deserialized from strings. `JsonNetStreamReader`/`JilStreamReader` is deserialized from UTF-8 byte arrays using `StreamReader`. Deserialization is normally read from Stream. Thus, it will be restored from byte arrays (or Stream) instead of strings.
MessagePack for C# `IntKey` is the fastest. `StringKey` is slower than `IntKey` because matching the character string of property names is required. `IntKey` works by reading the array length, then `for (array length) { binary decode }`. `StringKey` works by reading map length, `for (map length) { decode key, lookup key, binary decode }`, so it requires an additional two steps (decoding of keys and lookups of keys).
diff --git a/sandbox/Sandbox/Program.cs b/sandbox/Sandbox/Program.cs
index e2112ff14..aef553be5 100644
--- a/sandbox/Sandbox/Program.cs
+++ b/sandbox/Sandbox/Program.cs
@@ -2,877 +2,38 @@
// Licensed under the MIT license. See LICENSE file in the project root for full license information.
using System;
-using System.Buffers;
-using System.Collections;
-using System.Collections.Concurrent;
using System.Collections.Generic;
using System.Collections.ObjectModel;
-using System.Diagnostics;
-using System.IO;
-using System.IO.Compression;
-using System.Linq;
-using System.Reflection;
-using System.Text;
using MessagePack;
-using MessagePack.Formatters;
-using MessagePack.Internal;
-using MessagePack.Resolvers;
-using Newtonsoft.Json;
-using ProtoBuf;
-using SharedData;
-using UnityEngine;
-using ZeroFormatter;
-#pragma warning disable SA1307 // Accessible fields should begin with upper-case letter
-#pragma warning disable SA1401 // Fields should be private
-#pragma warning disable SA1402 // File may only contain a single type
-#pragma warning disable SA1649 // File name should match first type name
+Console.WriteLine("foo");
-namespace Sandbox;
+//[MessagePackObject]
+//public class Foo
+//{
+// [Key(0)]
+// public T Member { get; set; }
+//}
-internal class Program
-{
- private static readonly MessagePackSerializerOptions LZ4Standard = MessagePackSerializerOptions.Standard.WithCompression(MessagePackCompression.Lz4Block);
-
- private static void Main(string[] args)
- {
- // MessagePackSerializer.Serialize(i);
-
-
- }
-
- private static void Benchmark(T target)
- {
- const int Iteration = 10000; // 10000
-
- var jsonSerializer = new JsonSerializer();
- MsgPack.Serialization.SerializationContext msgpack = MsgPack.Serialization.SerializationContext.Default;
- msgpack.GetSerializer().PackSingleObject(target);
- MessagePackSerializer.Serialize(target);
- MessagePackSerializer.Serialize(target, LZ4Standard);
- ZeroFormatter.ZeroFormatterSerializer.Serialize(target);
- ProtoBuf.Serializer.Serialize(new MemoryStream(), target);
- jsonSerializer.Serialize(new JsonTextWriter(new StringWriter()), target);
-
- Console.WriteLine(typeof(T).Name + " serialization test");
- Console.WriteLine();
-
- Console.WriteLine("Serialize::");
- byte[] data = null;
- byte[] data0 = null;
- byte[] data1 = null;
- byte[] data2 = null;
- byte[] data3 = null;
- byte[] dataJson = null;
- byte[] dataGzipJson = null;
- using (new Measure("MsgPack-Cli"))
- {
- for (int i = 0; i < Iteration; i++)
- {
- data = msgpack.GetSerializer().PackSingleObject(target);
- }
- }
-
- using (new Measure("MessagePack-CSharp"))
- {
- for (int i = 0; i < Iteration; i++)
- {
- data0 = MessagePackSerializer.Serialize(target);
- }
- }
-
- using (new Measure("MessagePack(LZ4)"))
- {
- for (int i = 0; i < Iteration; i++)
- {
- data3 = MessagePackSerializer.Serialize(target, LZ4Standard);
- }
- }
-
- using (new Measure("ZeroFormatter"))
- {
- for (int i = 0; i < Iteration; i++)
- {
- data1 = ZeroFormatter.ZeroFormatterSerializer.Serialize(target);
- }
- }
-
- using (new Measure("JsonNet"))
- {
- for (int i = 0; i < Iteration; i++)
- {
- using (var ms = new MemoryStream())
- using (var sw = new StreamWriter(ms, Encoding.UTF8, 1024, true))
- using (var jw = new JsonTextWriter(sw))
- {
- jsonSerializer.Serialize(jw, target);
- }
- }
- }
-
- using (new Measure("JsonNet+Gzip"))
- {
- for (int i = 0; i < Iteration; i++)
- {
- using (var ms = new MemoryStream())
- using (var gzip = new GZipStream(ms, CompressionLevel.Fastest))
- using (var sw = new StreamWriter(gzip, Encoding.UTF8, 1024, true))
- using (var jw = new JsonTextWriter(sw))
- {
- jsonSerializer.Serialize(jw, target);
- }
- }
- }
-
- using (new Measure("protobuf-net"))
- {
- for (int i = 0; i < Iteration; i++)
- {
- using (var ms = new MemoryStream())
- {
- ProtoBuf.Serializer.Serialize(ms, target);
- }
- }
- }
-
- using (var ms = new MemoryStream())
- {
- ProtoBuf.Serializer.Serialize(ms, target);
- data2 = ms.ToArray();
- }
-
- using (var ms = new MemoryStream())
- {
- using (var sw = new StreamWriter(ms, Encoding.UTF8, 1024, true))
- using (var jw = new JsonTextWriter(sw))
- {
- jsonSerializer.Serialize(jw, target);
- }
-
- dataJson = ms.ToArray();
- }
-
- using (var ms = new MemoryStream())
- {
- using (var gzip = new GZipStream(ms, CompressionLevel.Fastest))
- using (var sw = new StreamWriter(gzip, Encoding.UTF8, 1024, true))
- using (var jw = new JsonTextWriter(sw))
- {
- jsonSerializer.Serialize(jw, target);
- }
-
- dataGzipJson = ms.ToArray();
- }
-
- msgpack.GetSerializer().UnpackSingleObject(data);
- MessagePackSerializer.Deserialize(data0);
- ZeroFormatterSerializer.Deserialize(data1);
- ProtoBuf.Serializer.Deserialize(new MemoryStream(data2));
- MessagePackSerializer.Deserialize(data3, LZ4Standard);
- jsonSerializer.Deserialize(new JsonTextReader(new StreamReader(new MemoryStream(dataJson))));
-
- Console.WriteLine();
- Console.WriteLine("Deserialize::");
-
- using (new Measure("MsgPack-Cli"))
- {
- for (int i = 0; i < Iteration; i++)
- {
- msgpack.GetSerializer().UnpackSingleObject(data);
- }
- }
-
- using (new Measure("MessagePack-CSharp"))
- {
- for (int i = 0; i < Iteration; i++)
- {
- MessagePackSerializer.Deserialize(data0);
- }
- }
-
- using (new Measure("MessagePack(LZ4)"))
- {
- for (int i = 0; i < Iteration; i++)
- {
- MessagePackSerializer.Deserialize(data3, LZ4Standard);
- }
- }
-
- using (new Measure("ZeroFormatter"))
- {
- for (int i = 0; i < Iteration; i++)
- {
- ZeroFormatterSerializer.Deserialize(data1);
- }
- }
-
- using (new Measure("JsonNet"))
- {
- for (int i = 0; i < Iteration; i++)
- {
- using (var ms = new MemoryStream(dataJson))
- using (var sr = new StreamReader(ms, Encoding.UTF8))
- using (var jr = new JsonTextReader(sr))
- {
- jsonSerializer.Deserialize(jr);
- }
- }
- }
-
- using (new Measure("JsonNet+Gzip"))
- {
- for (int i = 0; i < Iteration; i++)
- {
- using (var ms = new MemoryStream(dataGzipJson))
- using (var gzip = new GZipStream(ms, CompressionMode.Decompress))
- using (var sr = new StreamReader(gzip, Encoding.UTF8))
- using (var jr = new JsonTextReader(sr))
- {
- jsonSerializer.Deserialize(jr);
- }
- }
- }
-
- using (new Measure("protobuf-net"))
- {
- for (int i = 0; i < Iteration; i++)
- {
- using (var ms = new MemoryStream(data2))
- {
- ProtoBuf.Serializer.Deserialize(ms);
- }
- }
- }
-
- Console.WriteLine();
- Console.WriteLine("FileSize::");
- var label = string.Empty;
- label = "MsgPack-Cli";
- Console.WriteLine($"{label,20} {data.Length} Byte");
- label = "MessagePack-CSharp";
- Console.WriteLine($"{label,20} {data0.Length} Byte");
- label = "MessagePack(LZ4)";
- Console.WriteLine($"{label,20} {data3.Length} Byte");
- label = "ZeroFormatter";
- Console.WriteLine($"{label,20} {data1.Length} Byte");
- label = "protobuf-net";
- Console.WriteLine($"{label,20} {data2.Length} Byte");
- label = "JsonNet";
- Console.WriteLine($"{label,20} {dataJson.Length} Byte");
- label = "JsonNet+GZip";
- Console.WriteLine($"{label,20} {dataGzipJson.Length} Byte");
-
- Console.WriteLine();
- Console.WriteLine();
- }
-
- private static string ToHumanReadableSize(long size)
- {
- return ToHumanReadableSize(new long?(size));
- }
-
- private static string ToHumanReadableSize(long? size)
- {
- if (size == null)
- {
- return "NULL";
- }
-
- double bytes = size.Value;
-
- if (bytes <= 1024)
- {
- return bytes.ToString("f2") + " B";
- }
-
- bytes = bytes / 1024;
- if (bytes <= 1024)
- {
- return bytes.ToString("f2") + " KB";
- }
-
- bytes = bytes / 1024;
- if (bytes <= 1024)
- {
- return bytes.ToString("f2") + " MB";
- }
-
- bytes = bytes / 1024;
- if (bytes <= 1024)
- {
- return bytes.ToString("f2") + " GB";
- }
-
- bytes = bytes / 1024;
- if (bytes <= 1024)
- {
- return bytes.ToString("f2") + " TB";
- }
-
- bytes = bytes / 1024;
- if (bytes <= 1024)
- {
- return bytes.ToString("f2") + " PB";
- }
-
- bytes = bytes / 1024;
- if (bytes <= 1024)
- {
- return bytes.ToString("f2") + " EB";
- }
-
- bytes = bytes / 1024;
- return bytes + " ZB";
- }
-}
-
-[ZeroFormattable]
-[ProtoBuf.ProtoContract]
-[MessagePackObject]
-public class Person : IEquatable
-{
- [Index(0)]
- [Key(0)]
- [MsgPack.Serialization.MessagePackMember(0)]
- [ProtoMember(1)]
- public virtual int Age { get; set; }
-
- [Index(1)]
- [Key(1)]
- [MsgPack.Serialization.MessagePackMember(1)]
- [ProtoMember(2)]
- public virtual string FirstName { get; set; }
-
- [Index(2)]
- [Key(2)]
- [MsgPack.Serialization.MessagePackMember(2)]
- [ProtoMember(3)]
- public virtual string LastName { get; set; }
-
- [Index(3)]
- [MsgPack.Serialization.MessagePackMember(3)]
- [Key(3)]
- [ProtoMember(4)]
- public virtual Sex Sex { get; set; }
-
- public bool Equals(Person other)
- {
- return this.Age == other.Age && this.FirstName == other.FirstName && this.LastName == other.LastName && this.Sex == other.Sex;
- }
-}
-
-public enum Sex : sbyte
-{
- Unknown,
- Male,
- Female,
-}
-
-public class TestCollection : ICollection
-{
- public List internalCollection = new List();
-
- public int Count => this.internalCollection.Count;
-
- public bool IsReadOnly => throw new NotImplementedException();
-
- public void Add(T item)
- {
- this.internalCollection.Add(item);
- }
-
- public void Clear()
- {
- throw new NotImplementedException();
- }
+//[MessagePackObject]
+//public class Bar
+//{
+// [Key(0)]
+// public Foo MemberUserGeneric { get; set; }
- public bool Contains(T item)
- {
- throw new NotImplementedException();
- }
+// [Key(1)]
+// public System.Collections.Generic.List MemberKnownGeneric { get; set; }
+//}
- public void CopyTo(T[] array, int arrayIndex)
- {
- throw new NotImplementedException();
- }
-
- public IEnumerator GetEnumerator()
- {
- return this.internalCollection.GetEnumerator();
- }
-
- public bool Remove(T item)
- {
- throw new NotImplementedException();
- }
-
- IEnumerator IEnumerable.GetEnumerator()
- {
- throw new NotImplementedException();
- }
-}
[MessagePackObject(true)]
-public class Takox
-{
-#pragma warning disable SA1300 // Element should begin with upper-case letter
- public int hoga { get; set; }
-
- public int huga { get; set; }
-
- public int tako { get; set; }
-#pragma warning restore SA1300 // Element should begin with upper-case letter
-}
-
-[MessagePackObject]
-public class MyClass
-{
- // Key is serialization index, it is important for versioning.
- [Key(0)]
- public int Age { get; set; }
-
- [Key(1)]
- public string FirstName { get; set; }
-
- [Key(2)]
- public string LastName { get; set; }
-
- // public members and does not serialize target, mark IgnoreMemberttribute
- [IgnoreMember]
- public string FullName => this.FirstName + this.LastName;
-}
-
-[MessagePackObject(keyAsPropertyName: true)]
-public class Sample1
-{
- [Key(0)]
- public int Foo { get; set; }
-
- [Key(1)]
- public int Bar { get; set; }
-}
-
-[MessagePackObject]
-public class Sample2
-{
- [Key("foo")]
- public int Foo { get; set; }
-
- [Key("bar")]
- public int Bar { get; set; }
-}
-
-[MessagePackObject]
-public class IntKeySample
-{
- [Key(3)]
- public int A { get; set; }
-
- [Key(10)]
- public int B { get; set; }
-}
-
-public class ContractlessSample
-{
- public int MyProperty1 { get; set; }
-
- public int MyProperty2 { get; set; }
-}
-
-[MessagePackObject]
-public class SampleCallback : IMessagePackSerializationCallbackReceiver
-{
- [Key(0)]
- public int Key { get; set; }
-
- public void OnBeforeSerialize()
- {
- Console.WriteLine("OnBefore");
- }
-
- public void OnAfterDeserialize()
- {
- Console.WriteLine("OnAfter");
- }
-}
-
-[MessagePackObject]
-public struct Point
-{
- [Key(0)]
- public readonly int X;
- [Key(1)]
- public readonly int Y;
-
- // can't find matched constructor parameter, parameterType mismatch. type:Point parameterIndex:0 parameterType:ValueTuple`2
- public Point((int, int) p)
- {
- this.X = p.Item1;
- this.Y = p.Item2;
- }
-
- [SerializationConstructor]
- public Point(int x, int y)
- {
- this.X = x;
- this.Y = y;
- }
-}
-
-// mark inheritance types
-[MessagePack.Union(0, typeof(FooClass))]
-[MessagePack.Union(100, typeof(BarClass))]
-public interface IUnionSample
-{
-}
-
-[MessagePackObject]
-public class FooClass : IUnionSample
+public class Tako
{
- [Key(0)]
- public int XYZ { get; set; }
-}
-
-[MessagePackObject]
-public class BarClass : IUnionSample
-{
- [Key(0)]
- public string OPQ { get; set; }
-}
-
-[MessagePackFormatter(typeof(CustomObjectFormatter))]
-public class CustomObject
-{
- private string internalId;
-
- public CustomObject()
- {
- this.internalId = Guid.NewGuid().ToString();
- }
-
- // serialize/deserialize private field.
- internal class CustomObjectFormatter : IMessagePackFormatter
- {
- public void Serialize(ref MessagePackWriter writer, CustomObject value, MessagePackSerializerOptions options)
- {
- options.Resolver.GetFormatterWithVerify().Serialize(ref writer, value.internalId, options);
- }
-
- public CustomObject Deserialize(ref MessagePackReader reader, MessagePackSerializerOptions options)
- {
- var id = options.Resolver.GetFormatterWithVerify().Deserialize(ref reader, options);
- return new CustomObject { internalId = id };
- }
- }
-}
-
-public interface IEntity
-{
- string Name { get; }
-}
-
-public class Event : IEntity
-{
- public Event(string name)
- {
- this.Name = name;
- }
-
- public string Name { get; }
-}
-
-public class Holder
-{
- public Holder(IEntity entity)
- {
- this.Entity = entity;
- }
-
- public IEntity Entity { get; }
-}
-
-public class Dummy___
-{
- public MethodBase MyProperty { get; set; }
-}
-
-[MessagePackObject]
-public class Callback1 : IMessagePackSerializationCallbackReceiver
-{
- [Key(0)]
- public int X { get; set; }
-
- [IgnoreMember]
- public bool CalledBefore { get; private set; }
-
- [IgnoreMember]
- public bool CalledAfter { get; private set; }
-
- public Callback1(int x)
- {
- }
-
- public void OnBeforeSerialize()
- {
- this.CalledBefore = true;
- }
-
- public void OnAfterDeserialize()
- {
- this.CalledAfter = true;
- }
-}
-
-[MessagePackObject]
-public class SimpleIntKeyData
-{
- [Key(0)]
- ////[MessagePackFormatter(typeof(OreOreFormatter))]
- public int Prop1 { get; set; }
-
- [Key(1)]
- public ByteEnum Prop2 { get; set; }
-
- [Key(2)]
- public string Prop3 { get; set; }
-
- [Key(3)]
- public SimpleStringKeyData Prop4 { get; set; }
-
- [Key(4)]
- public SimpleStructIntKeyData Prop5 { get; set; }
-
- [Key(5)]
- public SimpleStructStringKeyData Prop6 { get; set; }
-
- [Key(6)]
- public byte[] BytesSpecial { get; set; }
-
- ////[Key(7)]
- ////[MessagePackFormatter(typeof(OreOreFormatter2), 100, "hogehoge")]
- ////[MessagePackFormatter(typeof(OreOreFormatter))]
- ////public int Prop7 { get; set; }
-}
-
-[MessagePack.MessagePackObject(true)]
-public class StringKeySerializerTarget2
-{
- public int TotalQuestions { get; set; }
-
- public int TotalUnanswered { get; set; }
-
- public int QuestionsPerMinute { get; set; }
-
- public int AnswersPerMinute { get; set; }
-
- public int TotalVotes { get; set; }
-
- public int BadgesPerMinute { get; set; }
-
- public int NewActiveUsers { get; set; }
-
- public int ApiRevision { get; set; }
-
- public int Site { get; set; }
-}
-
-internal struct Measure : IDisposable
-{
- private string label;
- private Stopwatch sw;
-
- public Measure(string label)
- {
- this.label = label;
- System.GC.Collect(2, GCCollectionMode.Forced, blocking: true);
- this.sw = Stopwatch.StartNew();
- }
-
- public void Dispose()
- {
- this.sw.Stop();
- Console.WriteLine($"{this.label,20} {this.sw.Elapsed.TotalMilliseconds} ms");
-
- System.GC.Collect(2, GCCollectionMode.Forced, blocking: true);
- }
-}
-
-public class SerializerTarget
-{
- public int MyProperty1 { get; set; }
-
- public int MyProperty2 { get; set; }
-
- public int MyProperty3 { get; set; }
-
- public int MyProperty4 { get; set; }
-
- public int MyProperty5 { get; set; }
-
- public int MyProperty6 { get; set; }
-
- public int MyProperty7 { get; set; }
-
- public int MyProperty8 { get; set; }
-
- public int MyProperty9 { get; set; }
-}
-
-// design concept sketch of Union.
-[MessagePack.Union(0, typeof(HogeMoge1))]
-[MessagePack.Union(1, typeof(HogeMoge2))]
-public interface IHogeMoge
-{
-}
-
-public class HogeMoge1
-{
-}
-
-public class HogeMoge2
-{
-}
-
-[MessagePackObject]
-public class TestObject
-{
- [MessagePackObject]
- public class PrimitiveObject
- {
-#pragma warning disable SA1310 // Field names should not contain underscore
- [Key(0)]
- public int v_int;
-
- [Key(1)]
- public string v_str;
-
- [Key(2)]
- public float v_float;
-
- [Key(3)]
- public bool v_bool;
-#pragma warning restore SA1310 // Field names should not contain underscore
-
- public PrimitiveObject(int vi, string vs, float vf, bool vb)
- {
- this.v_int = vi;
- this.v_str = vs;
- this.v_float = vf;
- this.v_bool = vb;
- }
- }
-
- [Key(0)]
- public PrimitiveObject[] objectArray;
-
- [Key(1)]
- public List objectList;
-
- [Key(2)]
- public Dictionary objectMap;
-
- public void CreateArray(int num)
- {
- this.objectArray = new PrimitiveObject[num];
- for (int i = 0; i < num; i++)
- {
- this.objectArray[i] = new PrimitiveObject(i, i.ToString(), (float)i, i % 2 == 0 ? true : false);
- }
- }
-
- public void CreateList(int num)
- {
- this.objectList = new List(num);
- for (int i = 0; i < num; i++)
- {
- this.objectList.Add(new PrimitiveObject(i, i.ToString(), (float)i, i % 2 == 0 ? true : false));
- }
- }
-
- public void CreateMap(int num)
- {
- this.objectMap = new Dictionary(num);
- for (int i = 0; i < num; i++)
- {
- this.objectMap.Add(i.ToString(), new PrimitiveObject(i, i.ToString(), (float)i, i % 2 == 0 ? true : false));
- }
- }
-
- // I only tested with array
- public static TestObject TestBuild()
- {
- TestObject to = new TestObject();
- to.CreateArray(1000000);
-
- return to;
- }
-}
-
-public class HogeMogeFormatter : IMessagePackFormatter
-{
- // Type to Key...
- private static readonly Dictionary> Map = new Dictionary>
- {
- { typeof(HogeMoge1), new KeyValuePair(0, 0) },
- { typeof(HogeMoge2), new KeyValuePair(1, 1) },
- };
-
- // If 0~10 don't need it.
- private static readonly Dictionary KeyToJumpTable = new Dictionary
- {
- { 0, 0 },
- { 1, 1 },
- };
-
- public void Serialize(ref MessagePackWriter writer, IHogeMoge value, MessagePackSerializerOptions options)
- {
- KeyValuePair key;
- if (Map.TryGetValue(value.GetType(), out key))
- {
- writer.WriteArrayHeader(2);
- writer.WriteInt32(key.Key);
-
- switch (key.Value)
- {
- case 0:
- options.Resolver.GetFormatterWithVerify().Serialize(ref writer, (HogeMoge1)value, options);
- break;
- case 1:
- options.Resolver.GetFormatterWithVerify().Serialize(ref writer, (HogeMoge2)value, options);
- break;
- default:
- break;
- }
-
- return;
- }
-
- writer.WriteNil();
- }
-
- public IHogeMoge Deserialize(ref MessagePackReader reader, MessagePackSerializerOptions options)
- {
- // TODO:array header...
- var key = reader.ReadInt32();
+ public IReadOnlySet MyProperty1 { get; set; }
- switch (key)
- {
- case 0:
- {
- HogeMoge1 result = options.Resolver.GetFormatterWithVerify().Deserialize(ref reader, options);
- return (IHogeMoge)result;
- }
+ public PriorityQueue MyProperty2 { get; set; }
- case 1:
- {
- HogeMoge2 result = options.Resolver.GetFormatterWithVerify().Deserialize(ref reader, options);
- return (IHogeMoge)result;
- }
+ public OrderedDictionary MyProperty3 { get; set; }
- default:
- {
- throw new NotImplementedException();
- }
- }
- }
+ public ReadOnlySet MyProperty4 { get; set; }
}
diff --git a/sandbox/Sandbox/Sandbox.csproj b/sandbox/Sandbox/Sandbox.csproj
index fbb77ee6a..f74b899d2 100644
--- a/sandbox/Sandbox/Sandbox.csproj
+++ b/sandbox/Sandbox/Sandbox.csproj
@@ -7,6 +7,14 @@
True
+
+ 1591;1701;1702;SA1649;SA1503;SA1402;SA1115
+
+
+
+ 1591;1701;1702;SA1649;SA1503;SA1402;SA1115
+
+
diff --git a/src/MessagePack.SourceGenerator/CodeAnalysis/TypeCollector.cs b/src/MessagePack.SourceGenerator/CodeAnalysis/TypeCollector.cs
index c742bd8d4..f8150e02a 100644
--- a/src/MessagePack.SourceGenerator/CodeAnalysis/TypeCollector.cs
+++ b/src/MessagePack.SourceGenerator/CodeAnalysis/TypeCollector.cs
@@ -160,6 +160,14 @@ public class TypeCollector
{ "System.Collections.ObjectModel.ReadOnlyDictionary<,>", "MsgPack::Formatters.ReadOnlyDictionaryFormatter" },
{ "System.Collections.Generic.IReadOnlyDictionary<,>", "MsgPack::Formatters.InterfaceReadOnlyDictionaryFormatter" },
{ "System.Collections.Concurrent.ConcurrentDictionary<,>", "MsgPack::Formatters.ConcurrentDictionaryFormatter" },
+ // NET5
+ { "System.Collections.Generic.IReadOnlySet<>", "MsgPack::Formatters.InterfaceReadOnlySetFormatter" },
+ // NET6
+ { "System.Collections.Generic.PriorityQueue<,>", "MsgPack::Formatters.PriorityQueueFormatter" },
+ // NET9
+ { "System.Collections.Generic.OrderedDictionary<,>", "MsgPack::Formatters.OrderedDictionaryFormatter" },
+ { "System.Collections.ObjectModel.ReadOnlySet<>", "MsgPack::Formatters.ReadOnlySetFormatter" },
+
{ "System.Lazy<>", "MsgPack::Formatters.LazyFormatter" },
{ "System.Threading.Tasks<>", "MsgPack::Formatters.TaskValueFormatter" },
@@ -385,16 +393,11 @@ private void CollectEnum(INamedTypeSymbol type, ISymbol enumUnderlyingType)
private void CollectUnion(INamedTypeSymbol type)
{
- if (!options.IsGeneratingSource)
- {
- // In analyzer-only mode, this method doesn't work.
- return;
- }
-
ImmutableArray[] unionAttrs = type.GetAttributes().Where(x => x.AttributeClass.ApproximatelyEqual(this.typeReferences.UnionAttribute)).Select(x => x.ConstructorArguments).ToArray();
if (unionAttrs.Length == 0)
{
this.reportDiagnostic?.Invoke(Diagnostic.Create(MsgPack00xMessagePackAnalyzer.UnionAttributeRequired, type.DeclaringSyntaxReferences.FirstOrDefault()?.GetSyntax().GetLocation()));
+ return;
}
// 0, Int 1, SubType
@@ -412,9 +415,16 @@ private void CollectUnion(INamedTypeSymbol type)
return new UnionSubTypeInfo(key, typeName);
}
+ var subTypes = unionAttrs.Select(UnionSubTypeInfoSelector).Where(i => i is not null).OrderBy(x => x!.Key).ToImmutableArray();
+
+ if (!options.IsGeneratingSource)
+ {
+ return;
+ }
+
var info = UnionSerializationInfo.Create(
type,
- unionAttrs.Select(UnionSubTypeInfoSelector).Where(i => i is not null).OrderBy(x => x!.Key).ToImmutableArray()!,
+ subTypes!,
this.options.Generator.Resolver);
this.collectedUnionInfo.Add(info);
@@ -708,11 +718,25 @@ private void CheckValidMessagePackFormatterAttribute(AttributeData formatterAttr
// Examine properties set on the attribute such that we can discern whether they were explicitly set or not.
// This is useful when we have assembly-level attributes or other environmentally-controlled defaults that the attribute may override either direction.
bool? suppressSourceGeneration = (bool?)contractAttr?.NamedArguments.FirstOrDefault(kvp => kvp.Key == Constants.SuppressSourceGenerationPropertyName).Value.Value;
+
+ // Do not source generate the formatter for this type if the attribute opted out.
+ if (suppressSourceGeneration is true)
+ {
+ // Skip any source generation
+ return null;
+ }
+
bool? allowPrivateAttribute = (bool?)contractAttr?.NamedArguments.FirstOrDefault(kvp => kvp.Key == Constants.AllowPrivatePropertyName).Value.Value;
if (contractAttr is null)
{
- ////this.reportDiagnostic?.Invoke(Diagnostic.Create(MsgPack00xMessagePackAnalyzer.TypeMustBeMessagePackObject, ((BaseTypeDeclarationSyntax)type.DeclaringSyntaxReferences[0].GetSyntax()).Identifier.GetLocation(), type.ToDisplayString(SymbolDisplayFormat.FullyQualifiedFormat)));
+ if (this.reportDiagnostic != null)
+ {
+ var diagnostics = Diagnostic.Create(MsgPack00xMessagePackAnalyzer.TypeMustBeMessagePackObject, ((BaseTypeDeclarationSyntax)formattedType.DeclaringSyntaxReferences[0].GetSyntax()).Identifier.GetLocation(), formattedType.ToDisplayString(SymbolDisplayFormat.FullyQualifiedFormat));
+ this.reportDiagnostic.Invoke(diagnostics);
+ }
+
+ return null;
}
bool isIntKey = true;
@@ -1365,13 +1389,6 @@ void ReportNonUniqueNameIfApplicable(ISymbol item, string stringKey)
}
}
- // Do not source generate the formatter for this type if the attribute opted out.
- if (suppressSourceGeneration is true)
- {
- // Skip any source generation
- return null;
- }
-
// If any property had a private setter and does not appear in the deserializing constructor signature,
// we'll need a nested formatter.
foreach (IPropertySymbol property in nestedFormatterRequiredIfPropertyIsNotSetByDeserializingCtor)
diff --git a/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/package.json b/src/MessagePack.UnityClient/Assets/Scripts/MessagePack/package.json
index 3458dec54..069d8de73 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.github.messagepack-csharp",
"displayName": "MessagePack",
- "version": "3.1.0",
+ "version": "3.1.1",
"unity": "2021.3",
"description": "Extremely Fast MessagePack Serializer for C#.",
"keywords": [
diff --git a/src/MessagePack/MessagePack.csproj b/src/MessagePack/MessagePack.csproj
index 20cfaebd3..df65b26a4 100644
--- a/src/MessagePack/MessagePack.csproj
+++ b/src/MessagePack/MessagePack.csproj
@@ -14,12 +14,6 @@
-
-
-
-
-
-
diff --git a/src/MessagePack/Resolvers/StandardResolver.cs b/src/MessagePack/Resolvers/StandardResolver.cs
index 35325f15a..cb6a8e92a 100644
--- a/src/MessagePack/Resolvers/StandardResolver.cs
+++ b/src/MessagePack/Resolvers/StandardResolver.cs
@@ -259,7 +259,7 @@ namespace MessagePack.Internal
internal static class StandardResolverHelper
{
public static readonly IFormatterResolver[] DefaultResolvers = DynamicAssembly.AvoidDynamicCode
- ? [BuiltinResolver.Instance, AttributeFormatterResolver.Instance, SourceGeneratedFormatterResolver.Instance, ImmutableCollection.ImmutableCollectionResolver.Instance, CompositeResolver.Create(ExpandoObjectFormatter.Instance)]
+ ? [BuiltinResolver.Instance, AttributeFormatterResolver.Instance, SourceGeneratedFormatterResolver.Instance, ImmutableCollection.ImmutableCollectionResolver.Instance, CompositeResolver.Create(ExpandoObjectFormatter.Instance), DynamicGenericResolver.Instance]
: [BuiltinResolver.Instance, AttributeFormatterResolver.Instance, SourceGeneratedFormatterResolver.Instance, ImmutableCollection.ImmutableCollectionResolver.Instance, CompositeResolver.Create(ExpandoObjectFormatter.Instance), DynamicGenericResolver.Instance, DynamicUnionResolver.Instance];
}
}
diff --git a/src/MessagePack/net472/PublicAPI.Shipped.txt b/src/MessagePack/net472/PublicAPI.Shipped.txt
deleted file mode 100644
index 28bbb5f11..000000000
--- a/src/MessagePack/net472/PublicAPI.Shipped.txt
+++ /dev/null
@@ -1,1299 +0,0 @@
-#nullable enable
-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