Skip to content

Tiny/DOTS compatible message pack library

License

MIT, Unknown licenses found

Licenses found

MIT
LICENSE
Unknown
LICENSE.meta
Notifications You must be signed in to change notification settings

supron54321/com.tinyutils.msgpack

Repository files navigation

Tiny message pack library for unity

Repository contains small and fast message pack serialization library, for Unity DOTS runtime and WebGL.

This library provides only low level writers and readers. If you are interested in high level code generation, check JsInterop repository.

Usage

Reader

public int[] ReadIntArray(NativeArray<byte> buffer)
{
    MsgPackReader reader = new MsgPackReader(buffer);
    if(reader.ReadArrayHeader(out var arrayLength))
    {
        int[] array = new int[arrayLength];
        for(int i = 0; i < array.Length; i++)
        {
            array[i] = reader.ReadInt32();
        }
        return array;
    }
    return null;
}

Writer

public NativeArray<byte> WriteIntArray(int[] array, Allocator allocator)
{
    using(MsgPackWriter writer = new MsgPackWriter(Allocator.Temp))
    {
        if(array != null)
        {
            writer.WriteArrayHeader(array.Length);
            foreach(var value in array)
                writer.WriteInteger(value);
        }
        else{
            writer.WriteNil();
        }

        return writer.ToArray(allocator);
    }
}

About

Tiny/DOTS compatible message pack library

Resources

License

MIT, Unknown licenses found

Licenses found

MIT
LICENSE
Unknown
LICENSE.meta

Stars

Watchers

Forks

Packages

No packages published