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

◆ ReflectionReadMembers()

override void System.Runtime.Serialization.ReflectionXmlReader.ReflectionReadMembers ( XmlReaderDelegator xmlReader,
XmlObjectSerializerReadContext context,
XmlDictionaryString[] memberNames,
XmlDictionaryString[] memberNamespaces,
ClassDataContract classContract,
ref object obj )
inlineprotected

Definition at line 10 of file ReflectionXmlReader.cs.

11 {
12 int num = classContract.MemberNames.Length;
13 context.IncrementItemCount(num);
14 int num2 = -1;
16 bool flag = firstRequiredMember < num;
17 int requiredIndex = (flag ? firstRequiredMember : (-1));
18 DataMember[] array = new DataMember[num];
20 ExtensionDataObject extensionData = null;
21 if (classContract.HasExtensionData)
22 {
23 extensionData = new ExtensionDataObject();
24 ((IExtensibleDataObject)obj).ExtensionData = extensionData;
25 }
26 while (XmlObjectSerializerReadContext.MoveToNextElement(xmlReader))
27 {
28 num2 = ((!flag) ? context.GetMemberIndex(xmlReader, memberNames, memberNamespaces, num2, extensionData) : context.GetMemberIndexWithRequiredMembers(xmlReader, memberNames, memberNamespaces, num2, requiredIndex, extensionData));
29 if (num2 < array.Length)
30 {
32 requiredIndex = num2 + 1;
33 }
34 }
35 }
int ReflectionGetMembers(ClassDataContract classContract, DataMember[] members)
void ReflectionReadMember(XmlReaderDelegator xmlReader, XmlObjectSerializerReadContext context, ClassDataContract classContract, ref object obj, int memberIndex, DataMember[] members)
bool[] GetRequiredMembers(ClassDataContract contract, out int firstRequiredMember)

References System.array, System.Runtime.Serialization.Dictionary, System.Runtime.Serialization.XmlObjectSerializerReadContext.GetMemberIndex(), System.Runtime.Serialization.XmlObjectSerializerReadContext.GetMemberIndexWithRequiredMembers(), System.Runtime.Serialization.ReflectionXmlReader.GetRequiredMembers(), System.Runtime.Serialization.XmlObjectSerializerContext.IncrementItemCount(), System.Runtime.Serialization.XmlObjectSerializerReadContext.MoveToNextElement(), System.obj, System.Runtime.Serialization.ReflectionReader.ReflectionGetMembers(), and System.Runtime.Serialization.ReflectionReader.ReflectionReadMember().