terraria-cpp2il-methodrecon v1.4.4.9
Terraria mobile dump, with reconstructed method body. Dump with CallAnalysis: https://infinitynichto.github.io/terraria-cpp2il
Loading...
Searching...
No Matches
ListDictionaryInternal.cs
Go to the documentation of this file.
1using System;
3
4namespace System.Collections
5{
6 // Token: 0x020005ED RID: 1517
9 {
10 // Token: 0x06002DCA RID: 11722 RVA: 0x00064E7C File Offset: 0x0006307C
12 {
13 }
14
15 // Token: 0x17000705 RID: 1797
16 public object this[object key]
17 {
18 get
19 {
20 while (key == null)
21 {
22 }
25 if (dictionaryNode != null)
26 {
27 object key2 = dictionaryNode.key;
28 next = dictionaryNode.next;
29 while (next != null)
30 {
31 }
32 }
33 return next.value;
34 }
35 set
36 {
37 for (;;)
38 {
39 if (key != null)
40 {
42 if (dictionaryNode == null)
43 {
44 goto IL_001D;
45 }
46 object key2 = dictionaryNode.key;
47 if (dictionaryNode.next == null)
48 {
49 break;
50 }
51 }
52 }
53 return;
54 IL_001D:
55 int num = this.count;
56 this.count = num;
57 }
58 }
59
60 // Token: 0x17000706 RID: 1798
61 // (get) Token: 0x06002DCD RID: 11725 RVA: 0x00064F00 File Offset: 0x00063100
62 public int Count
63 {
64 get
65 {
66 return this.count;
67 }
68 }
69
70 // Token: 0x17000707 RID: 1799
71 // (get) Token: 0x06002DCE RID: 11726 RVA: 0x0000207A File Offset: 0x0000027A
73 {
74 get
75 {
76 throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
77 }
78 }
79
80 // Token: 0x17000708 RID: 1800
81 // (get) Token: 0x06002DCF RID: 11727 RVA: 0x00064F14 File Offset: 0x00063114
82 public bool IsReadOnly
83 {
84 get
85 {
86 }
87 }
88
89 // Token: 0x17000709 RID: 1801
90 // (get) Token: 0x06002DD0 RID: 11728 RVA: 0x00064F24 File Offset: 0x00063124
91 public bool IsFixedSize
92 {
93 get
94 {
95 }
96 }
97
98 // Token: 0x1700070A RID: 1802
99 // (get) Token: 0x06002DD1 RID: 11729 RVA: 0x00064F34 File Offset: 0x00063134
100 public bool IsSynchronized
101 {
102 get
103 {
104 }
105 }
106
107 // Token: 0x1700070B RID: 1803
108 // (get) Token: 0x06002DD2 RID: 11730 RVA: 0x00064F44 File Offset: 0x00063144
109 public object SyncRoot
110 {
111 get
112 {
113 /*
114An exception occurred when decompiling this method (06002DD2)
115
116ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Object System.Collections.ListDictionaryInternal::get_SyncRoot()
117
118 ---> System.Exception: Basic block has to end with unconditional control flow.
119{
120 IL_0000:
121 brtrue(IL_0000, ldfld:object[exp:bool](ListDictionaryInternal::_syncRoot, ldloc:ListDictionaryInternal(this)))
122}
123
124 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1852
125 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
126 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
127 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846
128 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.Optimize(DecompilerContext context, ILBlock method, AutoPropertyProvider autoPropertyProvider, StateMachineKind& stateMachineKind, MethodDef& inlinedMethod, AsyncMethodDebugInfo& asyncInfo, ILAstOptimizationStep abortBeforeStep) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 355
129 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(IEnumerable`1 parameters, MethodDebugInfoBuilder& builder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 123
130 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 88
131 --- End of inner exception stack trace ---
132 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 92
133 at ICSharpCode.Decompiler.Ast.AstBuilder.AddMethodBody(EntityDeclaration methodNode, EntityDeclaration& updatedNode, MethodDef method, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, MethodKind methodKind) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstBuilder.cs:line 1683
134*/;
135 }
136 }
137
138 // Token: 0x1700070C RID: 1804
139 // (get) Token: 0x06002DD3 RID: 11731 RVA: 0x0000207A File Offset: 0x0000027A
141 {
142 get
143 {
144 throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
145 }
146 }
147
148 // Token: 0x06002DD4 RID: 11732 RVA: 0x00064F58 File Offset: 0x00063158
149 public void Add(object key, object value)
150 {
151 for (;;)
152 {
153 if (key != null)
154 {
156 if (dictionaryNode == null)
157 {
158 goto IL_001D;
159 }
160 object key2 = dictionaryNode.key;
161 if (dictionaryNode.next == null)
162 {
163 break;
164 }
165 }
166 }
167 return;
168 IL_001D:
169 int num = this.count;
170 this.count = num;
171 }
172
173 // Token: 0x06002DD5 RID: 11733 RVA: 0x00064FA0 File Offset: 0x000631A0
174 public void Clear()
175 {
176 int num = this.version;
177 this.version = num;
178 }
179
180 // Token: 0x06002DD6 RID: 11734 RVA: 0x00064FBC File Offset: 0x000631BC
181 public bool Contains(object key)
182 {
183 for (;;)
184 {
185 if (key != null)
186 {
188 if (dictionaryNode == null)
189 {
190 break;
191 }
192 object key2 = dictionaryNode.key;
193 if (dictionaryNode.next == null)
194 {
195 break;
196 }
197 }
198 }
199 return true;
200 }
201
202 // Token: 0x06002DD7 RID: 11735 RVA: 0x00064FE8 File Offset: 0x000631E8
203 public void CopyTo(Array array, int index)
204 {
205 while (array != null)
206 {
207 int rank = array.Rank;
208 int length = array.Length;
209 int num = this.count;
211 if (dictionaryNode != null)
212 {
213 object key = dictionaryNode.key;
214 object value = dictionaryNode.value;
215 if (dictionaryNode.next != null)
216 {
217 continue;
218 }
219 }
220 return;
221 }
222 }
223
224 // Token: 0x06002DD8 RID: 11736 RVA: 0x00065034 File Offset: 0x00063234
226 {
227 /*
228An exception occurred when decompiling this method (06002DD8)
229
230ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Collections.IDictionaryEnumerator System.Collections.ListDictionaryInternal::GetEnumerator()
231
232 ---> System.Exception: Basic block has to end with unconditional control flow.
233{
234 Block_0:
235 stloc:int32(var_0_06, ldfld:int32(ListDictionaryInternal::version, ldloc:ListDictionaryInternal(this)))
236}
237
238 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1852
239 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.Optimize(DecompilerContext context, ILBlock method, AutoPropertyProvider autoPropertyProvider, StateMachineKind& stateMachineKind, MethodDef& inlinedMethod, AsyncMethodDebugInfo& asyncInfo, ILAstOptimizationStep abortBeforeStep) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 355
240 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(IEnumerable`1 parameters, MethodDebugInfoBuilder& builder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 123
241 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 88
242 --- End of inner exception stack trace ---
243 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 92
244 at ICSharpCode.Decompiler.Ast.AstBuilder.AddMethodBody(EntityDeclaration methodNode, EntityDeclaration& updatedNode, MethodDef method, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, MethodKind methodKind) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstBuilder.cs:line 1683
245*/;
246 }
247
248 // Token: 0x06002DD9 RID: 11737 RVA: 0x00065048 File Offset: 0x00063248
250 {
251 /*
252An exception occurred when decompiling this method (06002DD9)
253
254ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Collections.IEnumerator System.Collections.ListDictionaryInternal::System.Collections.IEnumerable.GetEnumerator()
255
256 ---> System.Exception: Basic block has to end with unconditional control flow.
257{
258 Block_0:
259 stloc:int32(var_0_06, ldfld:int32(ListDictionaryInternal::version, ldloc:ListDictionaryInternal(this)))
260}
261
262 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1852
263 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.Optimize(DecompilerContext context, ILBlock method, AutoPropertyProvider autoPropertyProvider, StateMachineKind& stateMachineKind, MethodDef& inlinedMethod, AsyncMethodDebugInfo& asyncInfo, ILAstOptimizationStep abortBeforeStep) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 355
264 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(IEnumerable`1 parameters, MethodDebugInfoBuilder& builder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 123
265 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 88
266 --- End of inner exception stack trace ---
267 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 92
268 at ICSharpCode.Decompiler.Ast.AstBuilder.AddMethodBody(EntityDeclaration methodNode, EntityDeclaration& updatedNode, MethodDef method, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, MethodKind methodKind) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstBuilder.cs:line 1683
269*/;
270 }
271
272 // Token: 0x06002DDA RID: 11738 RVA: 0x0006505C File Offset: 0x0006325C
273 public void Remove(object key)
274 {
275 while (key == null)
276 {
277 }
279 if (dictionaryNode != null)
280 {
281 object key2 = dictionaryNode.key;
282 return;
283 }
284 }
285
286 // Token: 0x040019A3 RID: 6563
288
289 // Token: 0x040019A4 RID: 6564
290 private int version;
291
292 // Token: 0x040019A5 RID: 6565
293 private int count;
294
295 // Token: 0x040019A6 RID: 6566
297 private object _syncRoot;
298
299 // Token: 0x020005EE RID: 1518
301 {
302 // Token: 0x06002DDB RID: 11739 RVA: 0x000650B0 File Offset: 0x000632B0
304 {
305 this.list = list;
306 int num = list.version;
307 this.start = true;
308 this.version = num;
309 }
310
311 // Token: 0x1700070D RID: 1805
312 // (get) Token: 0x06002DDC RID: 11740 RVA: 0x000650E0 File Offset: 0x000632E0
313 public object Current
314 {
315 get
316 {
317 /*
318An exception occurred when decompiling this method (06002DDC)
319
320ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Object System.Collections.ListDictionaryInternal/NodeEnumerator::get_Current()
321
322 ---> System.Exception: Basic block has to end with unconditional control flow.
323{
324 Block_0:
325 stloc:DictionaryEntry(var_0_06, callgetter:DictionaryEntry(NodeEnumerator::get_Entry, ldloc:NodeEnumerator(this)))
326}
327
328 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1852
329 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.Optimize(DecompilerContext context, ILBlock method, AutoPropertyProvider autoPropertyProvider, StateMachineKind& stateMachineKind, MethodDef& inlinedMethod, AsyncMethodDebugInfo& asyncInfo, ILAstOptimizationStep abortBeforeStep) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 355
330 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(IEnumerable`1 parameters, MethodDebugInfoBuilder& builder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 123
331 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 88
332 --- End of inner exception stack trace ---
333 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 92
334 at ICSharpCode.Decompiler.Ast.AstBuilder.AddMethodBody(EntityDeclaration methodNode, EntityDeclaration& updatedNode, MethodDef method, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, MethodKind methodKind) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstBuilder.cs:line 1683
335*/;
336 }
337 }
338
339 // Token: 0x1700070E RID: 1806
340 // (get) Token: 0x06002DDD RID: 11741 RVA: 0x000650F4 File Offset: 0x000632F4
342 {
343 get
344 {
345 /*
346An exception occurred when decompiling this method (06002DDD)
347
348ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Collections.DictionaryEntry System.Collections.ListDictionaryInternal/NodeEnumerator::get_Entry()
349
350 ---> System.Exception: Basic block has to end with unconditional control flow.
351{
352 Block_0:
353 stloc:object(var_1_10, ldfld:object(DictionaryNode::key, ldloc:DictionaryNode(var_0_06)))
354 stloc:object(var_2_17, ldfld:object(DictionaryNode::value, ldloc:DictionaryNode(var_0_06)))
355}
356
357 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1852
358 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.Optimize(DecompilerContext context, ILBlock method, AutoPropertyProvider autoPropertyProvider, StateMachineKind& stateMachineKind, MethodDef& inlinedMethod, AsyncMethodDebugInfo& asyncInfo, ILAstOptimizationStep abortBeforeStep) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 355
359 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(IEnumerable`1 parameters, MethodDebugInfoBuilder& builder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 123
360 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 88
361 --- End of inner exception stack trace ---
362 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 92
363 at ICSharpCode.Decompiler.Ast.AstBuilder.AddMethodBody(EntityDeclaration methodNode, EntityDeclaration& updatedNode, MethodDef method, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, MethodKind methodKind) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstBuilder.cs:line 1683
364*/;
365 }
366 }
367
368 // Token: 0x1700070F RID: 1807
369 // (get) Token: 0x06002DDE RID: 11742 RVA: 0x00065118 File Offset: 0x00063318
370 public object Key
371 {
372 get
373 {
375 do
376 {
377 dictionaryNode = this.current;
378 }
379 while (dictionaryNode == null);
380 return dictionaryNode.key;
381 }
382 }
383
384 // Token: 0x17000710 RID: 1808
385 // (get) Token: 0x06002DDF RID: 11743 RVA: 0x00065138 File Offset: 0x00063338
386 public object Value
387 {
388 get
389 {
391 do
392 {
393 dictionaryNode = this.current;
394 }
395 while (dictionaryNode == null);
396 return dictionaryNode.value;
397 }
398 }
399
400 // Token: 0x06002DE0 RID: 11744 RVA: 0x00065158 File Offset: 0x00063358
401 public bool MoveNext()
402 {
403 /*
404An exception occurred when decompiling this method (06002DE0)
405
406ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Boolean System.Collections.ListDictionaryInternal/NodeEnumerator::MoveNext()
407
408 ---> System.Exception: Basic block has to end with unconditional control flow.
409{
410 Block_1:
411 stloc:DictionaryNode(var_5_37, ldfld:DictionaryNode(DictionaryNode::next, ldloc:DictionaryNode(var_4_2A)))
412 stfld:DictionaryNode(NodeEnumerator::current, ldloc:NodeEnumerator(this), ldloc:DictionaryNode(var_5_37))
413}
414
415 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1852
416 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.Optimize(DecompilerContext context, ILBlock method, AutoPropertyProvider autoPropertyProvider, StateMachineKind& stateMachineKind, MethodDef& inlinedMethod, AsyncMethodDebugInfo& asyncInfo, ILAstOptimizationStep abortBeforeStep) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 355
417 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(IEnumerable`1 parameters, MethodDebugInfoBuilder& builder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 123
418 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 88
419 --- End of inner exception stack trace ---
420 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 92
421 at ICSharpCode.Decompiler.Ast.AstBuilder.AddMethodBody(EntityDeclaration methodNode, EntityDeclaration& updatedNode, MethodDef method, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, MethodKind methodKind) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstBuilder.cs:line 1683
422*/;
423 }
424
425 // Token: 0x06002DE1 RID: 11745 RVA: 0x000651A8 File Offset: 0x000633A8
426 public void Reset()
427 {
429 int num = this.version;
430 int num2 = listDictionaryInternal.version;
431 this.start = true;
432 }
433
434 // Token: 0x040019A7 RID: 6567
436
437 // Token: 0x040019A8 RID: 6568
439
440 // Token: 0x040019A9 RID: 6569
441 private int version;
442
443 // Token: 0x040019AA RID: 6570
444 private bool start;
445 }
446
447 // Token: 0x020005EF RID: 1519
449 {
450 // Token: 0x06002DE2 RID: 11746 RVA: 0x000651D4 File Offset: 0x000633D4
455
456 // Token: 0x06002DE3 RID: 11747 RVA: 0x000651F0 File Offset: 0x000633F0
458 {
459 while (array != null)
460 {
461 long num = 0L;
462 int length = array.Length;
464 int count = listDictionaryInternal.count;
466 if (head != null)
467 {
468 bool flag = this.isKeys;
469 array.SetValue(num, index);
470 if (head.next != null)
471 {
472 continue;
473 }
474 }
475 return;
476 }
477 }
478
479 // Token: 0x17000711 RID: 1809
480 // (get) Token: 0x06002DE4 RID: 11748 RVA: 0x00065240 File Offset: 0x00063440
482 {
483 get
484 {
485 for (;;)
486 {
488 if (head == null || head.next == null)
489 {
490 return;
491 }
492 }
493 }
494 }
495
496 // Token: 0x17000712 RID: 1810
497 // (get) Token: 0x06002DE5 RID: 11749 RVA: 0x00065268 File Offset: 0x00063468
499 {
500 get
501 {
502 }
503 }
504
505 // Token: 0x17000713 RID: 1811
506 // (get) Token: 0x06002DE6 RID: 11750 RVA: 0x00065278 File Offset: 0x00063478
508 {
509 get
510 {
511 return this.list.SyncRoot;
512 }
513 }
514
515 // Token: 0x06002DE7 RID: 11751 RVA: 0x00065290 File Offset: 0x00063490
517 {
518 /*
519An exception occurred when decompiling this method (06002DE7)
520
521ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Collections.IEnumerator System.Collections.ListDictionaryInternal/NodeKeyValueCollection::System.Collections.IEnumerable.GetEnumerator()
522
523 ---> System.Exception: Basic block has to end with unconditional control flow.
524{
525 Block_0:
526 stloc:ListDictionaryInternal(var_0_06, ldfld:ListDictionaryInternal(NodeKeyValueCollection::list, ldloc:NodeKeyValueCollection(this)))
527 stloc:bool(var_1_0D, ldfld:bool(NodeKeyValueCollection::isKeys, ldloc:NodeKeyValueCollection(this)))
528 stloc:int32(var_2_14, ldfld:int32(ListDictionaryInternal::version, ldloc:ListDictionaryInternal(var_0_06)))
529}
530
531 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1852
532 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.Optimize(DecompilerContext context, ILBlock method, AutoPropertyProvider autoPropertyProvider, StateMachineKind& stateMachineKind, MethodDef& inlinedMethod, AsyncMethodDebugInfo& asyncInfo, ILAstOptimizationStep abortBeforeStep) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 355
533 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(IEnumerable`1 parameters, MethodDebugInfoBuilder& builder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 123
534 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 88
535 --- End of inner exception stack trace ---
536 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 92
537 at ICSharpCode.Decompiler.Ast.AstBuilder.AddMethodBody(EntityDeclaration methodNode, EntityDeclaration& updatedNode, MethodDef method, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, MethodKind methodKind) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstBuilder.cs:line 1683
538*/;
539 }
540
541 // Token: 0x040019AB RID: 6571
543
544 // Token: 0x040019AC RID: 6572
545 private bool isKeys;
546
547 // Token: 0x020005F0 RID: 1520
549 {
550 // Token: 0x06002DE8 RID: 11752 RVA: 0x0001B05E File Offset: 0x0001925E
554
555 // Token: 0x17000714 RID: 1812
556 // (get) Token: 0x06002DE9 RID: 11753 RVA: 0x000273E5 File Offset: 0x000255E5
557 public object Current
558 {
559 get
560 {
561 return null;
562 }
563 }
564
565 // Token: 0x06002DEA RID: 11754 RVA: 0x000652B4 File Offset: 0x000634B4
566 public bool MoveNext()
567 {
568 return default(bool);
569 }
570
571 // Token: 0x06002DEB RID: 11755 RVA: 0x0001B05E File Offset: 0x0001925E
572 public void Reset()
573 {
574 }
575
576 // Token: 0x040019AD RID: 6573
578
579 // Token: 0x040019AE RID: 6574
581
582 // Token: 0x040019AF RID: 6575
583 private int version;
584
585 // Token: 0x040019B0 RID: 6576
586 private bool isKeys;
587
588 // Token: 0x040019B1 RID: 6577
589 private bool start;
590 }
591 }
592
593 // Token: 0x020005F1 RID: 1521
594 [Serializable]
595 private class DictionaryNode
596 {
597 // Token: 0x06002DEC RID: 11756 RVA: 0x000652CC File Offset: 0x000634CC
599 {
600 }
601
602 // Token: 0x040019B2 RID: 6578
603 public object key;
604
605 // Token: 0x040019B3 RID: 6579
606 public object value;
607
608 // Token: 0x040019B4 RID: 6580
610 }
611 }
612}
class f__AnonymousType0<< Count > j__TPar
void SetValue(object value, long index)
Definition Array.cs:513
ListDictionaryInternal.DictionaryNode head
void CopyTo(Array array, int index)