public static WritePrimitive ( Stream stream, System.DateTime value ) : void | ||
stream | Stream | |
value | System.DateTime | |
return | void |
public static void Serialize(Serializer serializer, Stream stream, object ob) { if (ob == null) { Primitives.WritePrimitive(stream, (uint)0); return; } var type = ob.GetType(); serializer.Settings.BeforeSerializingObjectOfType?.Invoke(type); SerializeDelegate <object> del; uint id = serializer.GetTypeIdAndSerializer(type, out del); Primitives.WritePrimitive(stream, id); if (id == Serializer.ObjectTypeId) { return; } del(serializer, stream, ob); }
public void Serialize(Serializer serializer, Type staticType, Stream stream, object ob) { string value = (string)ob; if (value == null) { Primitives.WritePrimitive(stream, (uint)0); return; } else if (value.Length == 0) { Primitives.WritePrimitive(stream, (uint)1); return; } int len = encoding.GetByteCount(value); Primitives.WritePrimitive(stream, (uint)len + 1); Primitives.WritePrimitive(stream, (uint)value.Length); var buf = new byte[len]; encoding.GetBytes(value, 0, value.Length, buf, 0); stream.Write(buf, 0, len); }
public void Serialize(Serializer serializer, Type staticType, Stream stream, object ob) { if (ob == null) { Primitives.WritePrimitive(stream, (uint)0); return; } var type = ob.GetType(); TypeData typeData = serializer.GetTypeData(type); var id = typeData.TypeID; Primitives.WritePrimitive(stream, id); if (id == Serializer.ObjectTypeId) { return; } var fields = Helpers.GetFieldInfos(type); foreach (FieldInfo fieldInfo in fields) { object value = fieldInfo.GetValue(ob); Type fieldType = fieldInfo.FieldType; TypeData subTypeData = serializer.GetTypeData(fieldType); subTypeData.TypeSerializer.Serialize(serializer, fieldType, stream, value); } }
public void Serialize(Serializer serializer, Type staticType, Stream stream, object ob) { if (ob == null) { Primitives.WritePrimitive(stream, (uint)0); } else { IDictionary valueDict = (IDictionary)ob; int length = valueDict.Count; Primitives.WritePrimitive(stream, (uint)length + 1); Type[] genericArguments = staticType.GetGenericArguments(); Type keyType = genericArguments[0]; Type valueType = genericArguments[1]; TypeData keyTypeData = serializer.GetTypeData(keyType); TypeData valueTypeData = serializer.GetTypeData(valueType); foreach (DictionaryEntry entry in valueDict) { keyTypeData.TypeSerializer.Serialize(serializer, keyType, stream, entry.Key); valueTypeData.TypeSerializer.Serialize(serializer, valueType, stream, entry.Value); } } }
public static void Serialize(Serializer serializer, Stream stream, object ob) { if (ob == null) { Primitives.WritePrimitive(stream, (uint)0); return; } var type = ob.GetType(); SerializeDelegate <object> del; uint id = serializer.GetTypeIdAndSerializer(type, out del); Primitives.WritePrimitive(stream, id); del(serializer, stream, ob); }
public void Serialize(Serializer serializer, Type staticType, Stream stream, object ob) { if (ob == null) { Primitives.WritePrimitive(stream, (uint)0); } else { Type elementType = ob.GetType().GetElementType(); Array array = (Array)ob; int length = array.Length; Primitives.WritePrimitive(stream, (uint)length + 1); IStaticTypeSerializer typeSerializer = serializer.GetTypeData(elementType).TypeSerializer; foreach (object element in array) { typeSerializer.Serialize(serializer, elementType, stream, element); } } }
static void Serialize(Serializer serializer, Stream stream, object ob) { if (ob == null) { Primitives.WritePrimitive(stream, 0); return; } var type = ob.GetType(); ushort id; if (serializer.m_typeIDMap.TryGetValue(type, out id) == false) { throw new InvalidOperationException(String.Format("Unknown type {0}", type.FullName)); } Primitives.WritePrimitive(stream, id); serializer.m_serializerTrampolines[id](serializer, stream, ob); }
public void Serialize(Serializer serializer, Type staticType, Stream stream, object ob) { if (ob == null) { Primitives.WritePrimitive(stream, (uint)0); } else { IList value = (IList)ob; int length = value.Count; Primitives.WritePrimitive(stream, (uint)length + 1); Type[] genericArguments = staticType.GetGenericArguments(); Type elementType = genericArguments[0]; TypeData elementTypeData = serializer.GetTypeData(elementType); foreach (object element in value) { elementTypeData.TypeSerializer.Serialize(serializer, elementType, stream, element); } } }
public void Serialize(Serializer serializer, Type staticType, Stream stream, object ob) { Primitives.WritePrimitive(stream, (long) ob); }