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

◆ ImportMembersMapping() [5/5]

MembersMapping System.Xml.Serialization.XmlReflectionImporter.ImportMembersMapping ( XmlReflectionMember[] xmlReflectionMembers,
string ns,
bool hasWrapperElement,
bool rpc,
bool openModel,
RecursionLimiter limiter )
inlineprivate

Definition at line 1265 of file XmlReflectionImporter.cs.

1266 {
1267 MembersMapping membersMapping = new MembersMapping();
1269 MemberMapping[] array = new MemberMapping[xmlReflectionMembers.Length];
1270 NameTable elements = new NameTable();
1271 NameTable attributes = new NameTable();
1272 TextAccessor textAccessor = null;
1273 bool flag = false;
1274 for (int i = 0; i < array.Length; i++)
1275 {
1276 try
1277 {
1279 if (!hasWrapperElement && memberMapping.Attribute != null)
1280 {
1281 if (rpc)
1282 {
1284 }
1286 }
1287 if (rpc && xmlReflectionMembers[i].IsReturnValue)
1288 {
1289 if (i > 0)
1290 {
1292 }
1294 }
1296 flag |= memberMapping.IsSequence;
1297 if (!xmlReflectionMembers[i].XmlAttributes.XmlIgnore)
1298 {
1299 AddUniqueAccessor(memberMapping, elements, attributes, flag);
1300 }
1302 if (memberMapping.Text != null)
1303 {
1304 if (textAccessor != null)
1305 {
1307 }
1309 }
1310 if (memberMapping.Xmlns != null)
1311 {
1312 if (membersMapping.XmlnsMember != null)
1313 {
1315 }
1317 }
1318 }
1319 catch (Exception ex)
1320 {
1321 if (ex is OutOfMemoryException)
1322 {
1323 throw;
1324 }
1326 }
1327 }
1328 if (flag)
1329 {
1331 }
1334 return membersMapping;
1335 }
static string XmlIllegalMultipleTextMembers
Definition SR.cs:1672
static string Format(string resourceFormat, object p1)
Definition SR.cs:118
static string XmlInvalidReturnPosition
Definition SR.cs:1594
static string XmlSequenceMembers
Definition SR.cs:1740
static string XmlRpcLitAttributeAttributes
Definition SR.cs:1736
static string XmlMultipleXmlnsMembers
Definition SR.cs:1690
static string XmlInvalidAttributeType
Definition SR.cs:1602
Definition SR.cs:7
TypeDesc GetTypeDesc(string name, string ns)
Definition TypeScope.cs:224
static void AddUniqueAccessor(INameScope scope, Accessor accessor)
MemberMapping ImportMemberMapping(XmlReflectionMember xmlReflectionMember, string ns, XmlReflectionMember[] xmlReflectionMembers, bool rpc, bool openModel, RecursionLimiter limiter)
Exception CreateReflectionException(string context, Exception e)

References System.Xml.Serialization.XmlReflectionImporter._typeScope, System.Xml.Serialization.XmlReflectionImporter.AddUniqueAccessor(), System.array, System.Xml.Serialization.XmlReflectionImporter.CreateReflectionException(), System.Xml.Dictionary, System.SR.Format(), System.Xml.Serialization.TypeScope.GetTypeDesc(), System.Xml.Serialization.XmlReflectionImporter.ImportMemberMapping(), System.Xml.Serialization.XmlAttributes.XmlIgnore, System.SR.XmlIllegalMultipleTextMembers, System.SR.XmlInvalidAttributeType, System.SR.XmlInvalidReturnPosition, System.SR.XmlMultipleXmlnsMembers, System.SR.XmlRpcLitAttributeAttributes, and System.SR.XmlSequenceMembers.