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

◆ RemoveAt()

void System.Runtime.Serialization.ObjectToIdCache.RemoveAt ( int position)
inlineprivate

Definition at line 108 of file ObjectToIdCache.cs.

109 {
110 int num = m_objs.Length;
111 int num2 = position;
112 for (int i = ((position != num - 1) ? (position + 1) : 0); i != position; i++)
113 {
114 if (m_objs[i] == null)
115 {
116 m_objs[num2] = null;
117 m_ids[num2] = 0;
118 m_isWrapped[num2] = false;
119 return;
120 }
122 bool flag = i < position && !m_isWrapped[i];
123 bool flag2 = num2 < position;
124 if ((num3 <= num2 && (!flag || flag2)) || (flag2 && !flag))
125 {
126 m_objs[num2] = m_objs[i];
127 m_ids[num2] = m_ids[i];
129 num2 = i;
130 }
131 if (i == num - 1)
132 {
133 i = -1;
134 }
135 }
136 throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(XmlObjectSerializer.CreateSerializationException(System.SR.ObjectTableOverflow));
137 }
static string ObjectTableOverflow
Definition SR.cs:224
Definition SR.cs:7

References System.Runtime.Serialization.ObjectToIdCache.ComputeStartPosition(), System.Runtime.Serialization.XmlObjectSerializer.CreateSerializationException(), System.Runtime.Serialization.Dictionary, System.Runtime.Serialization.ObjectToIdCache.m_ids, System.Runtime.Serialization.ObjectToIdCache.m_isWrapped, System.Runtime.Serialization.ObjectToIdCache.m_objs, System.SR.ObjectTableOverflow, and System.Runtime.Serialization.DiagnosticUtility.ExceptionUtility.ThrowHelperError().

Referenced by System.Runtime.Serialization.ObjectToIdCache.ReassignId().