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

◆ GenerateTypeElement()

string System.Xml.Serialization.XmlSerializationReaderCodeGen.GenerateTypeElement ( XmlTypeMapping xmlTypeMapping)
inlineprivate

Definition at line 801 of file XmlSerializationReaderCodeGen.cs.

802 {
803 ElementAccessor accessor = xmlTypeMapping.Accessor;
804 TypeMapping mapping = accessor.Mapping;
805 string text = NextMethodName(accessor.Name);
806 base.Writer.WriteLine();
807 base.Writer.Write("public object ");
808 base.Writer.Write(text);
809 base.Writer.WriteLine("() {");
810 base.Writer.Indent++;
811 base.Writer.WriteLine("object o = null;");
812 MemberMapping memberMapping = new MemberMapping();
814 memberMapping.Elements = new ElementAccessor[1] { accessor };
815 Member[] array = new Member[1]
816 {
817 new Member(this, "o", "o", "a", 0, memberMapping)
818 };
819 base.Writer.WriteLine("Reader.MoveToContent();");
820 string elseString = "UnknownNode(null, " + ExpectedElements(array) + ");";
821 WriteMemberElements(array, "throw CreateUnknownNodeException();", elseString, accessor.Any ? array[0] : null, null, null);
822 if (accessor.IsSoap)
823 {
824 base.Writer.WriteLine("Referenced(o);");
825 base.Writer.WriteLine("ReadReferencedElements();");
826 }
827 base.Writer.WriteLine("return (object)o;");
828 base.Writer.Indent--;
829 base.Writer.WriteLine("}");
830 return text;
831 }
void WriteMemberElements(Member[] members, string elementElseString, string elseString, Member anyElement, Member anyText, string checkTypeHrefsSource)

References System.array, System.Xml.Dictionary, System.Xml.Serialization.XmlSerializationReaderCodeGen.ExpectedElements(), System.Xml.Serialization.XmlSerializationReaderCodeGen.NextMethodName(), System.text, and System.Xml.Serialization.XmlSerializationReaderCodeGen.WriteMemberElements().

Referenced by System.Xml.Serialization.XmlSerializationReaderCodeGen.GenerateElement().