Skip to content

SubnauticaNitrox/BinaryPack

Repository files navigation

"Nitrox Subnautica Multiplayer Mod"

Nitrox BinaryPack

build and test NuGet Discord License: MIT

A fork of the official BinaryPack. It has a few additional features and provides support for net472.

Supported properties

Here is a list of the property types currently supported by the library:

✅ Primitive types (except object): string, bool, int, uint, float, double, etc.

✅ Nullable value types: Nullable<T> or T? for short, where T : struct

✅ Unmanaged types: eg. System.Numerics.Vector2, and all unmanaged value types

✅ Unions: eg. abstract classes

✅ .NET arrays: T[], T[,], T[,,], etc.

✅ .NET collections: List<T>, IList<T>, ICollection<T>, IEnumerable<T>, etc.

✅ .NET dictionaries: Dictionary<TKey, TValue>, IDictionary<TKey, TValue> and IReadOnlyDictionary<TKey, TValue>

✅ Other .NET types: BitArray

Benchmarks

Here are benchmarks executed with the benchmark sample (JsonResponseModel) included in this repository. You can click here for a detailed version.

"BinaryPack Product Benchmark" "BinaryPack Framework Benchmark"

Requirements

This BinaryPack fork requires NetFramework 4.7.2, NetStandard 2.0 or Net 7

The test and benchmark projects require Net 7