Beispiel #1
0
        public unsafe static T DeserializeUnsafeFBWithPtr <T>(Tuple <IntPtr, int> data)
        {
            byte *ptr    = (byte *)data.Item1.ToPointer();
            var   input  = new InputPtrBuffer(ptr, data.Item2);
            var   reader = new FastBinaryReader <InputPtrBuffer>(input);

            return(Deserialize <T> .From(reader));
        }
Beispiel #2
0
        public unsafe static To DeserializeUnsafeSPWithPtr <From, To>(Tuple <IntPtr, int> data)
        {
            byte *ptr          = (byte *)data.Item1.ToPointer();
            var   input        = new InputPtrBuffer(ptr, data.Item2);
            var   reader       = new SimpleBinaryReader <InputPtrBuffer>(input);
            var   deserializer = new Deserializer <SimpleBinaryReader <InputPtrBuffer> >(typeof(To), Schema <From> .RuntimeSchema);

            return(deserializer.Deserialize <To>(reader));
        }