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

◆ WriteDerivedTypes()

void System.Xml.Serialization.XmlSerializationReaderILGen.WriteDerivedTypes ( StructMapping mapping,
bool isTypedReturn,
string returnTypeName )
inlineprivate

Definition at line 981 of file XmlSerializationReaderILGen.cs.

982 {
983 for (StructMapping structMapping = mapping.DerivedMappings; structMapping != null; structMapping = structMapping.NextDerivedMapping)
984 {
985 ilg.InitElseIf();
986 WriteQNameEqual("xsiType", structMapping.TypeName, structMapping.Namespace);
987 ilg.AndIf();
989 List<Type> list = new List<Type>();
990 ilg.Ldarg(0);
991 if (structMapping.TypeDesc.IsNullable)
992 {
993 ilg.Ldarg("isNullable");
994 list.Add(typeof(bool));
995 }
997 list.Add(typeof(bool));
1004 }
1005 }
void Add(TKey key, TValue value)
void ConvertValue(Type source, Type target)
void Call(MethodInfo methodInfo)
void Stloc(Type type, string name)
MethodBuilder EnsureMethodBuilder(TypeBuilder typeBuilder, string methodName, MethodAttributes attributes, Type returnType, Type[] parameterTypes)
void WriteDerivedTypes(StructMapping mapping, bool isTypedReturn, string returnTypeName)
void WriteQNameEqual(string source, string name, string ns)

References System.Collections.Generic.Dictionary< TKey, TValue >.Add(), System.Xml.Serialization.CodeGenerator.AndIf(), System.Xml.Serialization.CodeGenerator.Br(), System.Xml.Serialization.CodeGenerator.Call(), System.Xml.Serialization.CodeGenerator.ConvertValue(), System.Xml.Dictionary, System.Xml.Serialization.XmlSerializationILGen.EnsureMethodBuilder(), System.Xml.Serialization.XmlSerializationILGen.ilg, System.Xml.Serialization.CodeGenerator.InitElseIf(), System.Xml.Serialization.CodeGenerator.Ldarg(), System.Xml.Serialization.CodeGenerator.Ldc(), System.list, System.Reflection.Emit.LocalBuilder.LocalType, System.Xml.Serialization.XmlSerializationILGen.ReferenceMapping(), System.Xml.Serialization.CodeGenerator.ReturnLabel, System.Xml.Serialization.CodeGenerator.ReturnLocal, System.Xml.Serialization.CodeGenerator.Stloc(), System.Xml.Serialization.XmlSerializationILGen.typeBuilder, System.Xml.Serialization.XmlSerializationReaderILGen.WriteDerivedTypes(), and System.Xml.Serialization.XmlSerializationReaderILGen.WriteQNameEqual().

Referenced by System.Xml.Serialization.XmlSerializationReaderILGen.WriteDerivedTypes(), and System.Xml.Serialization.XmlSerializationReaderILGen.WriteLiteralStructMethod().