Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ InternalSerialize()

virtual void System.Runtime.Serialization.XmlObjectSerializerWriteContext.InternalSerialize ( XmlWriterDelegator xmlWriter,
object obj,
bool isDeclaredType,
bool writeXsiType,
int declaredTypeID,
RuntimeTypeHandle declaredTypeHandle )
inlinepackagevirtual

Reimplemented in System.Runtime.Serialization.XmlObjectSerializerWriteContextComplex.

Definition at line 100 of file XmlObjectSerializerWriteContext.cs.

101 {
102 if (writeXsiType)
103 {
104 Type typeOfObject = Globals.TypeOfObject;
105 SerializeWithXsiType(xmlWriter, obj, obj.GetType().TypeHandle, null, -1, typeOfObject.TypeHandle, typeOfObject);
106 return;
107 }
108 if (isDeclaredType)
109 {
112 return;
113 }
114 RuntimeTypeHandle typeHandle = obj.GetType().TypeHandle;
115 if (declaredTypeHandle.GetHashCode() == typeHandle.GetHashCode())
116 {
119 }
120 else
121 {
123 }
124 }
void SerializeWithoutXsiType(DataContract dataContract, XmlWriterDelegator xmlWriter, object obj, RuntimeTypeHandle declaredTypeHandle)
virtual void SerializeWithXsiType(XmlWriterDelegator xmlWriter, object obj, RuntimeTypeHandle objectTypeHandle, Type objectType, int declaredTypeID, RuntimeTypeHandle declaredTypeHandle, Type declaredType)

References System.Runtime.Serialization.XmlObjectSerializerContext.GetDataContract(), System.Type.GetTypeFromHandle(), System.obj, System.Runtime.Serialization.XmlObjectSerializerWriteContext.SerializeWithoutXsiType(), System.Runtime.Serialization.XmlObjectSerializerWriteContext.SerializeWithXsiType(), and System.Runtime.Serialization.Globals.TypeOfObject.

Referenced by System.Runtime.Serialization.XmlObjectSerializerWriteContext.InternalSerializeReference(), System.Runtime.Serialization.ReflectionClassWriter.ReflectionInternalSerialize(), System.Runtime.Serialization.XmlObjectSerializerWriteContext.TryWriteDeserializedExtensionData(), and System.Runtime.Serialization.XmlObjectSerializerWriteContext.WriteExtensionDataValue().