Exemplo n.º 1
0
 private T ReadObjectHelper <T>(Type type, BinaryReader reader)
 {
     if (context.IsReservedType(type))
     {
         return((T)ReadReservedType(type, reader));
     }
     else
     {
         var instance = (IPortableObject)Activator.CreateInstance(type);
         instance.Deserialize(new PofReader(context, SlotSourceFactory.CreateFromBinaryReader(reader)));
         return((T)instance);
     }
 }
Exemplo n.º 2
0
 private object ReadObjectWithoutTypeDescription(Type type, BinaryReader reader)
 {
     if (context.IsReservedType(type))
     {
         return(ReadReservedType(type, reader));
     }
     else
     {
         var instance = context.CreateInstance(type);
         instance.Deserialize(new PofReader(context, slotSourceFactory.CreateFromBinaryReader(reader)));
         if (instance is SpecialTypes.Base)
         {
             return(((SpecialTypes.Base)instance).Unwrap());
         }
         else
         {
             return(instance);
         }
     }
 }