Пример #1
0
        public override IReadOnlyList <T> Deserialize(ref byte[] bytes, int offset, DirtyTracker tracker, out int byteSize)
        {
            var length = formatter.GetLength();

            if (length != null)
            {
                return(FixedListSegment <TTypeResolver, T> .Create(tracker, bytes, offset, out byteSize));
            }
            else
            {
                return(VariableListSegment <TTypeResolver, T> .Create(tracker, bytes, offset, out byteSize));
            }
        }
Пример #2
0
        FixedListSegment <DefaultResolver, int> CreateFixedList(DirtyTracker tracker)
        {
            byte[] bytes = null;
            BinaryUtil.WriteInt32(ref bytes, 0, 6); // length 4...
            BinaryUtil.WriteInt32(ref bytes, 4 * 1, 99);
            BinaryUtil.WriteInt32(ref bytes, 4 * 2, 55);
            BinaryUtil.WriteInt32(ref bytes, 4 * 3, 3);
            BinaryUtil.WriteInt32(ref bytes, 4 * 4, 9423423);
            BinaryUtil.WriteInt32(ref bytes, 4 * 5, -432423);
            BinaryUtil.WriteInt32(ref bytes, 4 * 6, 2423);

            int _;
            var list = FixedListSegment <DefaultResolver, int> .Create(tracker, bytes, 0, out _);

            return(list);
        }