public Type ReadDynamicType(Type baseType, DynamicSerializerDelegate typeResolver) { Type type = null; typeResolver(this, baseType, ref type); return(type); }
public MySerializeInfo(MyObjectFlags flags, MyPrimitiveFlags primitiveFlags, ushort fixedLength, DynamicSerializerDelegate dynamicSerializer, MySerializeInfo keyInfo, MySerializeInfo itemInfo) { Flags = flags; PrimitiveFlags = primitiveFlags; FixedLength = fixedLength; KeyInfo = keyInfo; ItemInfo = itemInfo; DynamicSerializer = dynamicSerializer; }
public MySerializeInfo(SerializeAttribute attribute, MySerializeInfo keyInfo, MySerializeInfo itemInfo) { if (attribute != null) { Flags = attribute.Flags; PrimitiveFlags = attribute.PrimitiveFlags; FixedLength = attribute.FixedLength; if (IsDynamic) { Debug.Assert(attribute.DynamicSerializerType != null, "DynamicSerializerType must be set when serializing dynamically!"); DynamicSerializer = ((IDynamicResolver)Activator.CreateInstance(attribute.DynamicSerializerType)).Serialize; } } KeyInfo = keyInfo; ItemInfo = itemInfo; }
public void WriteDynamicType(Type baseType, Type obj, DynamicSerializerDelegate typeResolver) { typeResolver(this, baseType, ref obj); }
public Type ReadDynamicType(Type baseType, DynamicSerializerDelegate typeResolver) { Type type = null; typeResolver(this, baseType, ref type); return type; }