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

◆ OnHandleReference()

override bool System.Runtime.Serialization.XmlObjectSerializerWriteContextComplex.OnHandleReference ( XmlWriterDelegator xmlWriter,
object obj,
bool canContainCyclicReference )
inlinepackagevirtualinherited

Reimplemented from System.Runtime.Serialization.XmlObjectSerializerWriteContext.

Definition at line 161 of file XmlObjectSerializerWriteContextComplex.cs.

162 {
164 {
165 bool newId = true;
166 int id = base.SerializedObjects.GetId(obj, ref newId);
167 if (newId)
168 {
169 xmlWriter.WriteAttributeInt("z", DictionaryGlobals.IdLocalName, DictionaryGlobals.SerializationNamespace, id);
170 }
171 else
172 {
173 xmlWriter.WriteAttributeInt("z", DictionaryGlobals.RefLocalName, DictionaryGlobals.SerializationNamespace, id);
174 xmlWriter.WriteAttributeBool("i", DictionaryGlobals.XsiNilLocalName, DictionaryGlobals.SchemaInstanceNamespace, value: true);
175 }
176 return !newId;
177 }
178 return base.OnHandleReference(xmlWriter, obj, canContainCyclicReference);
179 }

References System.Runtime.Serialization.Dictionary, System.Runtime.Serialization.DictionaryGlobals.IdLocalName, System.Runtime.Serialization.XmlObjectSerializerWriteContext.IsGetOnlyCollection, System.obj, System.Runtime.Serialization.XmlObjectSerializerWriteContext.preserveObjectReferences, System.Runtime.Serialization.DictionaryGlobals.RefLocalName, System.Runtime.Serialization.DictionaryGlobals.SchemaInstanceNamespace, System.Runtime.Serialization.DictionaryGlobals.SerializationNamespace, System.value, and System.Runtime.Serialization.DictionaryGlobals.XsiNilLocalName.

Referenced by System.Runtime.Serialization.XmlObjectSerializerWriteContextComplex.WriteAnyType(), System.Runtime.Serialization.XmlObjectSerializerWriteContextComplex.WriteBase64(), System.Runtime.Serialization.XmlObjectSerializerWriteContextComplex.WriteBase64(), System.Runtime.Serialization.XmlObjectSerializerWriteContextComplex.WriteQName(), System.Runtime.Serialization.XmlObjectSerializerWriteContextComplex.WriteQName(), System.Runtime.Serialization.XmlObjectSerializerWriteContextComplex.WriteString(), System.Runtime.Serialization.XmlObjectSerializerWriteContextComplex.WriteString(), System.Runtime.Serialization.XmlObjectSerializerWriteContextComplex.WriteUri(), and System.Runtime.Serialization.XmlObjectSerializerWriteContextComplex.WriteUri().