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

◆ Rehash()

void System.Runtime.Serialization.ObjectToIdCache.Rehash ( )
inlineprivate

Definition at line 144 of file ObjectToIdCache.cs.

145 {
146 int prime = GetPrime(m_objs.Length + 1);
147 int[] ids = m_ids;
148 object[] objs = m_objs;
149 m_ids = new int[prime];
150 m_objs = new object[prime];
151 m_isWrapped = new bool[prime];
152 for (int i = 0; i < objs.Length; i++)
153 {
154 object obj = objs[i];
155 if (obj != null)
156 {
157 bool isEmpty;
158 bool isWrapped;
159 int num = FindElement(obj, out isEmpty, out isWrapped);
160 m_objs[num] = obj;
161 m_ids[num] = ids[i];
162 m_isWrapped[num] = isWrapped;
163 }
164 }
165 }
int FindElement(object obj, out bool isEmpty, out bool isWrapped)

References System.Runtime.Serialization.Dictionary, System.Runtime.Serialization.ObjectToIdCache.FindElement(), System.Runtime.Serialization.ObjectToIdCache.GetPrime(), System.Runtime.Serialization.ObjectToIdCache.m_ids, System.Runtime.Serialization.ObjectToIdCache.m_isWrapped, System.Runtime.Serialization.ObjectToIdCache.m_objs, and System.obj.

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