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

◆ ChangeListType()

override object System.Xml.Schema.XmlListConverter.ChangeListType ( object value,
Type destinationType,
IXmlNamespaceResolver nsResolver )
inlineprotectedvirtual

Reimplemented from System.Xml.Schema.XmlBaseConverter.

Reimplemented in System.Xml.Schema.XmlUntypedConverter.

Definition at line 59 of file XmlListConverter.cs.

60 {
61 Type type = value.GetType();
62 if (destinationType == XmlBaseConverter.ObjectType)
63 {
64 destinationType = base.DefaultClrType;
65 }
67 {
69 }
70 if (destinationType == XmlBaseConverter.StringType)
71 {
72 if (type == XmlBaseConverter.StringType)
73 {
74 return value;
75 }
77 }
78 if (type == XmlBaseConverter.StringType)
79 {
80 value = StringAsList((string)value);
81 }
82 if (destinationType.IsArray)
83 {
84 Type elementType = destinationType.GetElementType();
85 if (elementType == XmlBaseConverter.ObjectType)
86 {
88 }
89 if (type == destinationType)
90 {
91 return value;
92 }
93 if (elementType == XmlBaseConverter.BooleanType)
94 {
96 }
97 if (elementType == XmlBaseConverter.ByteType)
98 {
100 }
101 if (elementType == XmlBaseConverter.ByteArrayType)
102 {
104 }
105 if (elementType == XmlBaseConverter.DateTimeType)
106 {
108 }
109 if (elementType == XmlBaseConverter.DateTimeOffsetType)
110 {
112 }
113 if (elementType == XmlBaseConverter.DecimalType)
114 {
116 }
117 if (elementType == XmlBaseConverter.DoubleType)
118 {
120 }
121 if (elementType == XmlBaseConverter.Int16Type)
122 {
124 }
125 if (elementType == XmlBaseConverter.Int32Type)
126 {
128 }
129 if (elementType == XmlBaseConverter.Int64Type)
130 {
132 }
133 if (elementType == XmlBaseConverter.SByteType)
134 {
136 }
137 if (elementType == XmlBaseConverter.SingleType)
138 {
140 }
141 if (elementType == XmlBaseConverter.StringType)
142 {
144 }
145 if (elementType == XmlBaseConverter.TimeSpanType)
146 {
148 }
149 if (elementType == XmlBaseConverter.UInt16Type)
150 {
152 }
153 if (elementType == XmlBaseConverter.UInt32Type)
154 {
156 }
157 if (elementType == XmlBaseConverter.UInt64Type)
158 {
160 }
161 if (elementType == XmlBaseConverter.UriType)
162 {
164 }
165 if (elementType == XmlBaseConverter.XmlAtomicValueType)
166 {
168 }
169 if (elementType == XmlBaseConverter.XmlQualifiedNameType)
170 {
172 }
173 if (elementType == XmlBaseConverter.XPathItemType)
174 {
176 }
177 if (elementType == XmlBaseConverter.XPathNavigatorType)
178 {
180 }
182 }
183 if (type == base.DefaultClrType && type != XmlBaseConverter.ObjectArrayType)
184 {
185 return value;
186 }
187 return ToList(value, nsResolver);
188 }
XmlBaseConverter(XmlSchemaType schemaType)
new Exception CreateInvalidClrMappingException(Type sourceType, Type destinationType)
List< string > StringAsList(string value)
IList ToList(object list, IXmlNamespaceResolver nsResolver)
string ListAsString(IEnumerable list, IXmlNamespaceResolver nsResolver)

References System.Xml.Schema.XmlBaseConverter.BooleanType, System.Xml.Schema.XmlBaseConverter.ByteArrayType, System.Xml.Schema.XmlBaseConverter.ByteType, System.Xml.Schema.XmlListConverter.CreateInvalidClrMappingException(), System.Xml.Schema.XmlBaseConverter.DateTimeOffsetType, System.Xml.Schema.XmlBaseConverter.DateTimeType, System.Xml.Schema.XmlBaseConverter.DecimalType, System.Xml.Dictionary, System.Xml.Schema.XmlBaseConverter.DoubleType, System.elementType, System.Type.GetType(), System.Xml.Schema.XmlBaseConverter.Int16Type, System.Xml.Schema.XmlBaseConverter.Int32Type, System.Xml.Schema.XmlBaseConverter.Int64Type, System.Xml.Schema.XmlListConverter.IsListType(), System.Xml.Schema.XmlListConverter.ListAsString(), System.Xml.Schema.XmlBaseConverter.ObjectArrayType, System.Xml.Schema.XmlBaseConverter.ObjectType, System.Xml.Schema.XmlBaseConverter.SByteType, System.Xml.Schema.XmlBaseConverter.SingleType, System.Xml.Schema.XmlListConverter.StringAsList(), System.Xml.Schema.XmlBaseConverter.StringType, System.Xml.Schema.XmlBaseConverter.TimeSpanType, System.Xml.Schema.XmlListConverter.ToList(), System.type, System.Xml.Schema.XmlBaseConverter.UInt16Type, System.Xml.Schema.XmlBaseConverter.UInt32Type, System.Xml.Schema.XmlBaseConverter.UInt64Type, System.Xml.Schema.XmlBaseConverter.UriType, System.value, System.Xml.Schema.XmlBaseConverter.XmlAtomicValueType, System.Xml.Schema.XmlBaseConverter.XmlQualifiedNameType, System.Xml.Schema.XmlBaseConverter.XPathItemType, and System.Xml.Schema.XmlBaseConverter.XPathNavigatorType.

Referenced by System.Xml.Schema.XmlAnyListConverter.ChangeType(), and System.Xml.Schema.XmlListConverter.ChangeType().