Пример #1
0
     public unsafe static DeSerializeResult deSerialize <valueType>(this valueType value, byte *data, int size, DeSerializeConfig config = null)
     {
         if (data == null)
         {
             return new DeSerializeResult {
                        State = DeSerializeState.UnknownData
             }
         }
         ;
         return(DeSerializer.DeSerialize <valueType>(null, data, size, ref value, config));
     }
 }
Пример #2
0
        public unsafe static DeSerializeResult deSerialize <valueType>(this valueType value, ref LeftArray <byte> data, DeSerializeConfig config = null)
        {
            if (data.Length == 0)
            {
                return new DeSerializeResult {
                           State = DeSerializeState.UnknownData
                }
            }
            ;

            fixed(byte *dataFixed = data.Array) return(DeSerializer.DeSerialize <valueType>(data.Array, dataFixed, data.Length, ref value, config));
        }
        private void Connection_OnMessage(string obj)
        {
            var message = DeSerializer.DeSerialize(obj);

            ConsoleDebugWriter.OutputObjectToConsole(obj, "Message from server");
            if (string.IsNullOrEmpty(ClientCode))
            {
                ClientCode = message?.content?.clientCode;
            }
            else
            {
                new MessageReceivedMessage(message);
            }
        }
Пример #4
0
        private void button5_Click(object sender, EventArgs e)
        {
            byte[] bytes = new byte[6] {
                1, 2, 3, 4, 5, 6
            };

            Serializer serializer = new Serializer();

            byte[] b = serializer.Serialize(bytes);

            DeSerializer deSerializer = new DeSerializer();

            byte[] bytes2 = deSerializer.DeSerialize <byte[]>(b);



            sbyte[] sbytes = new sbyte[6] {
                -3, -2, -1, 0, 1, 2
            };

            b = serializer.Serialize(sbytes);

            sbyte[] sbytes2 = deSerializer.DeSerialize <sbyte[]>(b);
        }
Пример #5
0
        private void button7_Click(object sender, EventArgs e)
        {
            try
            {
                TestObj3 o = new TestObj3();

                Serializer serializer = new Serializer();
                byte[]     b          = serializer.Serialize(o);

                DeSerializer deSerializer = new DeSerializer();
                TestObj3     o2           = deSerializer.DeSerialize <TestObj3>(b);
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.ToString());
            }
        }
Пример #6
0
        private void button1_Click(object sender, EventArgs e)
        {
            TestObj o = new TestObj();

            o.i   = 2;
            o.d   = 3.14;
            o.f   = 1.22f; //  未加 [S] 标记的 Field 不会序列化
            o.Dt  = DateTime.Now;
            o.Str = "Hello world .";
            o.de  = 6.6666667M; //  未加 [S] 标记的 Property 不会序列化


            Serializer serializer = new Serializer();

            byte[] b = serializer.Serialize(o);

            DeSerializer deSerializer = new DeSerializer();
            TestObj      o2           = deSerializer.DeSerialize <TestObj>(b);
        }
Пример #7
0
 public static ConfigV3 Read(byte[] ar, int magic)
 {
     return(DeSerializer.DeSerialize <ConfigV3>(ar));
 }
Пример #8
0
 public static DeSerializeResult deSerialize <valueType>(this valueType value, byte[] data, DeSerializeConfig config = null)
 {
     return(DeSerializer.DeSerialize(data, ref value, config));
 }