public static T Unpack <T>(byte[] bytes, Serializers customSerializers, T objectToOverwrite) where T : class { var packer = Serializer.SetupDefaultPacker(bytes, customSerializers); new GenericSerializer().Unpack(packer, objectToOverwrite); customSerializers.Dispose(); packer.serializers.Dispose(); return(objectToOverwrite); }
public static T Unpack <T>(Serializers allSerializers, byte[] bytes) { var packer = Serializer.SetupDefaultPacker(allSerializers, bytes); var serializer = new GenericSerializer(); var instance = (T)serializer.Unpack(packer, typeof(T)); allSerializers.Dispose(); return(instance); }
public static T Unpack <T>(byte[] bytes, Serializers customSerializers) { var packer = Serializer.SetupDefaultPacker(bytes, customSerializers); var serializer = new GenericSerializer(); var instance = (T)serializer.Unpack(packer, typeof(T)); customSerializers.Dispose(); packer.serializers.Dispose(); return(instance); }
public static byte[] Pack <T>(Serializers allSerializers, T obj) { byte[] bytes = null; var packer = new Packer(allSerializers, new System.IO.MemoryStream()); var serializer = new GenericSerializer(); serializer.Pack(packer, obj, typeof(T)); bytes = packer.ToArray(); allSerializers.Dispose(); return(bytes); }
public static Packer SetupDefaultPacker(byte[] bytes, Serializers customSerializers) { var serializersInternal = Serializer.GetInternalSerializers(); var serializers = Serializer.GetDefaultSerializers(); serializers.Add(serializersInternal); serializers.Add(customSerializers); serializersInternal.Dispose(); customSerializers.Dispose(); System.IO.MemoryStream stream; if (bytes == null) { stream = new System.IO.MemoryStream(); } else { stream = new System.IO.MemoryStream(bytes); } return(Packer.FromStream(serializers, stream)); }
public static byte[] Pack <T>(T obj, Serializers customSerializers) { var serializersInternal = Serializer.GetInternalSerializers(); var serializers = Serializer.GetDefaultSerializers(); serializers.Add(serializersInternal); serializers.Add(customSerializers); serializersInternal.Dispose(); customSerializers.Dispose(); var packer = new Packer(serializers, new System.IO.MemoryStream()); var serializer = new GenericSerializer(); serializer.Pack(packer, obj, typeof(T)); var bytes = packer.ToArray(); serializers.Dispose(); return(bytes); }