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
CompareInfo.cs
Go to the documentation of this file.
1using System;
7
9{
10 // Token: 0x02000582 RID: 1410
13 {
14 // Token: 0x06002A62 RID: 10850 RVA: 0x0005BFB0 File Offset: 0x0005A1B0
15 internal static int InvariantIndexOf(string source, string value, int startIndex, int count, bool ignoreCase)
16 {
17 int num = 1;
19 if (source != null)
20 {
22 }
23 int stringLength = source._stringLength;
24 if (num == 0)
25 {
26 }
27 int num2;
28 return num2;
29 }
30
31 // Token: 0x06002A63 RID: 10851 RVA: 0x0005BFE0 File Offset: 0x0005A1E0
32 internal static int InvariantLastIndexOf(string source, string value, int startIndex, int count, bool ignoreCase)
33 {
34 int num = 1;
36 if (source != null)
37 {
39 }
40 int stringLength = source._stringLength;
41 if (num == 0)
42 {
43 }
44 int num2;
45 return num2;
46 }
47
48 // Token: 0x06002A64 RID: 10852 RVA: 0x0005C010 File Offset: 0x0005A210
49 private unsafe static int InvariantFindString(char* source, int sourceCount, char* value, int valueCount, bool ignoreCase, bool start)
50 {
51 int num = 1;
52 if (value != null)
53 {
54 }
55 if (num == 0)
56 {
57 }
58 if (num == 0)
59 {
60 }
61 if (num == 0)
62 {
63 }
64 if (num == 0)
65 {
66 return;
67 }
68 }
69
70 // Token: 0x06002A65 RID: 10853 RVA: 0x0000207A File Offset: 0x0000027A
71 private static char InvariantToUpper(char c)
72 {
73 throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
74 }
75
76 // Token: 0x06002A66 RID: 10854 RVA: 0x0005C03C File Offset: 0x0005A23C
78 {
79 /*
80An exception occurred when decompiling this method (06002A66)
81
82ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Globalization.SortKey System.Globalization.CompareInfo::InvariantCreateSortKey(System.String,System.Globalization.CompareOptions)
83
84 ---> System.Exception: Basic block has to end with unconditional control flow.
85{
86 IL_0013:
87 stloc:int32(var_2_19, ldfld:int32(string::_stringLength, ldloc:string(source)))
88 stloc:int64(var_3_1B, ldc.i4:int64(0))
89 stloc:char(var_4_23, callgetter:char(string::get_Chars, ldloc:string(source), ldloc:int64[exp:int32](var_3_1B)))
90}
91
92 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
93 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
94 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
95 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
96 --- End of inner exception stack trace ---
97 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
98 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
99*/;
100 }
101
102 // Token: 0x06002A67 RID: 10855 RVA: 0x0005C070 File Offset: 0x0005A270
104 {
105 string name = culture.m_name;
108 }
109
110 // Token: 0x06002A68 RID: 10856 RVA: 0x0000207A File Offset: 0x0000027A
111 public static CompareInfo GetCompareInfo(string name)
112 {
113 throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
114 }
115
116 // Token: 0x06002A69 RID: 10857 RVA: 0x0005C098 File Offset: 0x0005A298
119 {
120 }
121
122 // Token: 0x06002A6A RID: 10858 RVA: 0x0005C0A8 File Offset: 0x0005A2A8
127
128 // Token: 0x06002A6B RID: 10859 RVA: 0x0005C0BC File Offset: 0x0005A2BC
131 {
132 this.OnDeserialized();
133 }
134
135 // Token: 0x06002A6C RID: 10860 RVA: 0x0005C0D0 File Offset: 0x0005A2D0
136 private void OnDeserialized()
137 {
138 string name = this.m_name;
139 if (name != null)
140 {
142 return;
143 }
145 }
146
147 // Token: 0x06002A6D RID: 10861 RVA: 0x0005C100 File Offset: 0x0005A300
154
155 // Token: 0x17000619 RID: 1561
156 // (get) Token: 0x06002A6E RID: 10862 RVA: 0x0005C114 File Offset: 0x0005A314
157 public virtual string Name
158 {
159 get
160 {
161 /*
162An exception occurred when decompiling this method (06002A6E)
163
164ICSharpCode.Decompiler.DecompilerException: Error decompiling System.String System.Globalization.CompareInfo::get_Name()
165
166 ---> System.Exception: Basic block has to end with unconditional control flow.
167{
168 Block_0:
169 stloc:bool(var_0_0F, call:bool(string::op_Equality, ldstr:string("zh-CHS"), ldstr:string("zh-CHT")))
170 stloc:bool(var_1_20, call:bool(string::op_Equality, ldfld:string(CompareInfo::m_name, ldloc:CompareInfo(this)), ldstr:string("zh-CHS")))
171}
172
173 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
174 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
175 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
176 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
177 --- End of inner exception stack trace ---
178 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
179 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
180*/;
181 }
182 }
183
184 // Token: 0x06002A6F RID: 10863 RVA: 0x0000207A File Offset: 0x0000027A
185 public virtual int Compare(string string1, string string2)
186 {
187 throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
188 }
189
190 // Token: 0x06002A70 RID: 10864 RVA: 0x0005C144 File Offset: 0x0005A344
191 public virtual int Compare(string string1, string string2, CompareOptions options)
192 {
193 return string.Compare(string1, string2, StringComparison.OrdinalIgnoreCase);
194 }
195
196 // Token: 0x06002A71 RID: 10865 RVA: 0x0005C198 File Offset: 0x0005A398
198 {
199 if (options != CompareOptions.None)
200 {
201 if (options == CompareOptions.None)
202 {
203 return 1;
204 }
205 if (65504 == 0)
206 {
207 }
208 if (!true)
209 {
210 }
211 if (!true)
212 {
213 int num;
214 return num;
215 }
216 if (options == CompareOptions.None)
217 {
218 int num2;
219 return num2;
220 }
221 while (options != CompareOptions.None)
222 {
223 }
224 }
225 if (!true)
226 {
227 }
228 int num3;
229 return num3;
230 }
231
232 // Token: 0x06002A72 RID: 10866 RVA: 0x0005C1DC File Offset: 0x0005A3DC
234 {
235 int num = 1;
236 int num2;
237 if (string2 != null)
238 {
239 if (num == 0)
240 {
241 }
242 if (!true)
243 {
244 }
246 return num2;
247 }
248 return num2;
249 }
250
251 // Token: 0x06002A73 RID: 10867 RVA: 0x0005C204 File Offset: 0x0005A404
252 public virtual int Compare(string string1, int offset1, string string2, int offset2, CompareOptions options)
253 {
254 /*
255An exception occurred when decompiling this method (06002A73)
256
257ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Int32 System.Globalization.CompareInfo::Compare(System.String,System.Int32,System.String,System.Int32,System.Globalization.CompareOptions)
258
259 ---> System.Exception: Basic block has to end with unconditional control flow.
260{
261 IL_0014:
262 brtrue(IL_0014, ldloc:string[exp:bool](string2))
263}
264
265 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
266 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
267 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
268 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
269 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
270 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
271 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
272 --- End of inner exception stack trace ---
273 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
274 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
275*/;
276 }
277
278 // Token: 0x06002A74 RID: 10868 RVA: 0x0005C228 File Offset: 0x0005A428
279 public virtual int Compare(string string1, int offset1, int length1, string string2, int offset2, int length2, CompareOptions options)
280 {
281 int num;
282 while (num != 0)
283 {
284 }
285 return num;
286 }
287
288 // Token: 0x06002A75 RID: 10869 RVA: 0x0005C2BC File Offset: 0x0005A4BC
289 internal static int CompareOrdinalIgnoreCase(string strA, int indexA, int lengthA, string strB, int indexB, int lengthB)
290 {
291 if (true)
292 {
293 }
294 int num = 1;
295 if (lengthA != 0)
296 {
297 }
298 if (num != 0)
299 {
300 }
301 if (num == 0)
302 {
303 }
304 int num2;
305 return num2;
306 }
307
308 // Token: 0x06002A76 RID: 10870 RVA: 0x0005C2EC File Offset: 0x0005A4EC
310 {
311 if (!true)
312 {
313 }
314 if ("QuickBuff" == null)
315 {
316 }
317 if ("QuickBuff" == null)
318 {
319 }
320 int num;
321 if (num != 0)
322 {
323 while (num != 0)
324 {
325 }
326 }
327 return 41607168;
328 }
329
330 // Token: 0x06002A77 RID: 10871 RVA: 0x0005C320 File Offset: 0x0005A520
331 public virtual bool IsPrefix(string source, string prefix, CompareOptions options)
332 {
333 while (prefix == null || source == null)
334 {
335 }
336 if (prefix._stringLength == 0 || source._stringLength != 0)
337 {
338 return true;
339 }
340 if (4096 == 0)
341 {
342 }
343 if (!true)
344 {
345 }
346 if (true)
347 {
348 return source.StartsWith(prefix, StringComparison.Ordinal);
349 }
350 return this.StartsWith(source, prefix, options);
351 }
352
353 // Token: 0x06002A78 RID: 10872 RVA: 0x0005C368 File Offset: 0x0005A568
354 public virtual bool IsSuffix(string source, string suffix, CompareOptions options)
355 {
356 while (suffix == null || source == null)
357 {
358 }
359 if (suffix._stringLength == 0 || source._stringLength != 0)
360 {
361 return true;
362 }
363 if (4096 == 0)
364 {
365 }
366 if (!true)
367 {
368 }
369 if (true)
370 {
371 return source.EndsWith(suffix, StringComparison.Ordinal);
372 }
373 return this.EndsWith(source, suffix, options);
374 }
375
376 // Token: 0x06002A79 RID: 10873 RVA: 0x0005C3B0 File Offset: 0x0005A5B0
378 {
379 return this.EndsWith(source, suffix, options);
380 }
381
382 // Token: 0x06002A7A RID: 10874 RVA: 0x0005C3C8 File Offset: 0x0005A5C8
383 public virtual int IndexOf(string source, string value, int startIndex, int count, CompareOptions options)
384 {
385 while (source != null)
386 {
387 if (value != null)
388 {
389 if (source._stringLength != 0)
390 {
391 }
392 int stringLength = value._stringLength;
393 if (16384 == 0)
394 {
395 }
396 if (!true)
397 {
398 }
399 int num;
400 return num;
401 }
402 }
403 return "source";
404 }
405
406 // Token: 0x06002A7B RID: 10875 RVA: 0x0005C41C File Offset: 0x0005A61C
407 internal int IndexOfOrdinal(string source, string value, int startIndex, int count, bool ignoreCase)
408 {
409 if (!true)
410 {
411 }
412 if (!true)
413 {
414 }
416 }
417
418 // Token: 0x06002A7C RID: 10876 RVA: 0x0005C440 File Offset: 0x0005A640
419 public virtual int LastIndexOf(string source, string value, int startIndex, int count, CompareOptions options)
420 {
421 while (source != null)
422 {
423 if (value != null)
424 {
425 if (source._stringLength == 0)
426 {
427 int stringLength = value._stringLength;
428 return 43155456;
429 }
430 if (value._stringLength == 0)
431 {
432 return 43155456;
433 }
434 int num;
435 return num;
436 }
437 }
438 return "source";
439 }
440
441 // Token: 0x06002A7D RID: 10877 RVA: 0x0005C4CC File Offset: 0x0005A6CC
442 internal int LastIndexOfOrdinal(string source, string value, int startIndex, int count, bool ignoreCase)
443 {
444 if (!true)
445 {
446 }
447 if (!true)
448 {
449 }
451 }
452
453 // Token: 0x06002A7E RID: 10878 RVA: 0x0005C4F0 File Offset: 0x0005A6F0
455 {
456 if (!true)
457 {
458 }
459 if (!true)
460 {
461 }
462 if (true)
463 {
464 return this.InvariantCreateSortKey(source, options);
465 }
466 return this.CreateSortKey(source, options);
467 }
468
469 // Token: 0x06002A7F RID: 10879 RVA: 0x0005C518 File Offset: 0x0005A718
470 public override bool Equals(object value)
471 {
472 if (value != null)
473 {
474 }
475 bool flag;
476 return flag;
477 }
478
479 // Token: 0x06002A80 RID: 10880 RVA: 0x0000207A File Offset: 0x0000027A
480 public override int GetHashCode()
481 {
482 throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
483 }
484
485 // Token: 0x06002A81 RID: 10881 RVA: 0x0005C52C File Offset: 0x0005A72C
486 internal static int GetIgnoreCaseHash(string source)
487 {
488 int num = 1;
489 if (num != 0)
490 {
491 if (num == 0)
492 {
493 }
494 if (num == 0)
495 {
496 }
497 }
498 long num2 = 0L;
500 if (!true)
501 {
502 }
504 !0 reference = MemoryMarshal.GetReference(readOnlySpan);
505 if (num2 != 0L)
506 {
507 }
508 int num3;
509 return num3;
510 }
511
512 // Token: 0x06002A82 RID: 10882 RVA: 0x0005C57C File Offset: 0x0005A77C
514 {
515 while (source == null)
516 {
517 }
518 if (!true)
519 {
520 }
521 if (!true)
522 {
523 }
524 if (true)
525 {
526 }
528 }
529
530 // Token: 0x06002A83 RID: 10883 RVA: 0x0005C59C File Offset: 0x0005A79C
531 public virtual int GetHashCode(string source, CompareOptions options)
532 {
533 while (source == null)
534 {
535 }
537 }
538
539 // Token: 0x06002A84 RID: 10884 RVA: 0x0005C5BC File Offset: 0x0005A7BC
540 public override string ToString()
541 {
542 string text;
543 return text;
544 }
545
546 // Token: 0x1700061A RID: 1562
547 // (get) Token: 0x06002A85 RID: 10885 RVA: 0x0005C5CC File Offset: 0x0005A7CC
548 private static bool UseManagedCollation
549 {
550 get
551 {
552 /*
553An exception occurred when decompiling this method (06002A85)
554
555ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Boolean System.Globalization.CompareInfo::get_UseManagedCollation()
556
557 ---> System.Exception: Basic block has to end with unconditional control flow.
558{
559 IL_0025:
560 brtrue(IL_0000, ldc.i4:bool(1))
561}
562
563 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
564 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
565 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
566 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
567 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
568 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
569 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
570 --- End of inner exception stack trace ---
571 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
572 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
573*/;
574 }
575 }
576
577 // Token: 0x06002A86 RID: 10886 RVA: 0x0005C600 File Offset: 0x0005A800
579 {
581 if (simpleCollator == null)
582 {
583 if (simpleCollator == null)
584 {
585 }
586 if (simpleCollator == null)
587 {
588 if (simpleCollator == null)
589 {
590 }
591 if (simpleCollator == null)
592 {
593 }
594 if (!true)
595 {
596 }
597 }
598 string sortName = this._sortName;
600 string sortName2 = this._sortName;
601 long num = 0L;
602 int num2 = 5;
603 if (num != 0L || num2 == 0)
604 {
605 }
606 }
607 throw new OutOfMemoryException();
608 }
609
610 // Token: 0x06002A87 RID: 10887 RVA: 0x0005C660 File Offset: 0x0005A860
612 {
613 /*
614An exception occurred when decompiling this method (06002A87)
615
616ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Globalization.SortKey System.Globalization.CompareInfo::CreateSortKeyCore(System.String,System.Globalization.CompareOptions)
617
618 ---> System.Exception: Basic block has to end with unconditional control flow.
619{
620 IL_0003:
621 stloc:bool(var_0_08, callgetter:bool(CompareInfo::get_UseManagedCollation))
622 stloc:ISimpleCollator(var_1_0F, call:ISimpleCollator(CompareInfo::GetCollator, ldloc:CompareInfo(this)))
623}
624
625 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
626 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
627 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
628 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
629 --- End of inner exception stack trace ---
630 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
631 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
632*/;
633 }
634
635 // Token: 0x06002A88 RID: 10888 RVA: 0x0005C67C File Offset: 0x0005A87C
636 private int internal_index_switch(string s1, int sindex, int count, string s2, CompareOptions opt, bool first)
637 {
638 return s1.IndexOfUnchecked(s2, sindex, count);
639 }
640
641 // Token: 0x06002A89 RID: 10889 RVA: 0x0005C6BC File Offset: 0x0005A8BC
642 private int internal_compare_switch(string str1, int offset1, int length1, string str2, int offset2, int length2, CompareOptions options)
643 {
644 if (!true)
645 {
646 }
649 }
650
651 // Token: 0x06002A8A RID: 10890 RVA: 0x0005C6F8 File Offset: 0x0005A8F8
652 private int internal_compare_managed(string str1, int offset1, int length1, string str2, int offset2, int length2, CompareOptions options)
653 {
654 /*
655An exception occurred when decompiling this method (06002A8A)
656
657ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Int32 System.Globalization.CompareInfo::internal_compare_managed(System.String,System.Int32,System.Int32,System.String,System.Int32,System.Int32,System.Globalization.CompareOptions)
658
659 ---> System.Exception: Basic block has to end with unconditional control flow.
660{
661 Block_0:
662 stloc:ISimpleCollator(var_0_06, call:ISimpleCollator(CompareInfo::GetCollator, ldloc:CompareInfo(this)))
663}
664
665 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
666 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
667 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
668 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
669 --- End of inner exception stack trace ---
670 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
671 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
672*/;
673 }
674
675 // Token: 0x06002A8B RID: 10891 RVA: 0x0005C70C File Offset: 0x0005A90C
676 private int internal_index_managed(string s1, int sindex, int count, string s2, CompareOptions opt, bool first)
677 {
678 /*
679An exception occurred when decompiling this method (06002A8B)
680
681ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Int32 System.Globalization.CompareInfo::internal_index_managed(System.String,System.Int32,System.Int32,System.String,System.Globalization.CompareOptions,System.Boolean)
682
683 ---> System.Exception: Basic block has to end with unconditional control flow.
684{
685 Block_0:
686 stloc:ISimpleCollator(var_0_06, call:ISimpleCollator(CompareInfo::GetCollator, ldloc:CompareInfo(this)))
687}
688
689 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
690 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
691 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
692 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
693 --- End of inner exception stack trace ---
694 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
695 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
696*/;
697 }
698
699 // Token: 0x06002A8C RID: 10892 RVA: 0x0000207A File Offset: 0x0000027A
700 private unsafe static int internal_compare_icall(char* str1, int length1, char* str2, int length2, CompareOptions options)
701 {
702 throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
703 }
704
705 // Token: 0x06002A8D RID: 10893 RVA: 0x0005C720 File Offset: 0x0005A920
706 private static int internal_compare(string str1, int offset1, int length1, string str2, int offset2, int length2, CompareOptions options)
707 {
708 /*
709An exception occurred when decompiling this method (06002A8D)
710
711ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Int32 System.Globalization.CompareInfo::internal_compare(System.String,System.Int32,System.Int32,System.String,System.Int32,System.Int32,System.Globalization.CompareOptions)
712
713 ---> System.Exception: Basic block has to end with unconditional control flow.
714{
715 IL_0016:
716 brtrue(IL_0000, ldloc:int32[exp:bool](var_0_01))
717}
718
719 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
720 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
721 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
722 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
723 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
724 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
725 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
726 --- End of inner exception stack trace ---
727 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
728 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
729*/;
730 }
731
732 // Token: 0x06002A8E RID: 10894 RVA: 0x0000207A File Offset: 0x0000027A
733 private unsafe static int internal_index_icall(char* source, int sindex, int count, char* value, int value_length, bool first)
734 {
735 throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
736 }
737
738 // Token: 0x06002A8F RID: 10895 RVA: 0x0005C748 File Offset: 0x0005A948
739 private static int internal_index(string source, int sindex, int count, string value, bool first)
740 {
741 /*
742An exception occurred when decompiling this method (06002A8F)
743
744ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Int32 System.Globalization.CompareInfo::internal_index(System.String,System.Int32,System.Int32,System.String,System.Boolean)
745
746 ---> System.Exception: Basic block has to end with unconditional control flow.
747{
748 IL_0015:
749 brtrue(IL_0000, ldloc:int32[exp:bool](var_0_01))
750}
751
752 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
753 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
754 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
755 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
756 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
757 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
758 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
759 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
760 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
761 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
762 --- End of inner exception stack trace ---
763 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
764 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
765*/;
766 }
767
768 // Token: 0x06002A90 RID: 10896 RVA: 0x0005C76C File Offset: 0x0005A96C
770 {
771 string name = culture.m_name;
773 }
774
775 // Token: 0x06002A91 RID: 10897 RVA: 0x0005C788 File Offset: 0x0005A988
776 private unsafe static int CompareStringOrdinalIgnoreCase(char* pString1, int length1, char* pString2, int length2)
777 {
778 if (!true)
779 {
780 }
782 return 1;
783 }
784
785 // Token: 0x06002A92 RID: 10898 RVA: 0x0005C7A4 File Offset: 0x0005A9A4
786 internal static int IndexOfOrdinalCore(string source, string value, int startIndex, int count, bool ignoreCase)
787 {
788 int num;
789 return num;
790 }
791
792 // Token: 0x06002A93 RID: 10899 RVA: 0x0005C7B4 File Offset: 0x0005A9B4
793 internal static int LastIndexOfOrdinalCore(string source, string value, int startIndex, int count, bool ignoreCase)
794 {
795 int num;
796 return num;
797 }
798
799 // Token: 0x06002A94 RID: 10900 RVA: 0x0005C7C4 File Offset: 0x0005A9C4
800 private int LastIndexOfCore(string source, string target, int startIndex, int count, CompareOptions options)
801 {
802 long num = 0L;
803 return this.internal_index_switch(source, startIndex, count, target, options, num != 0L);
804 }
805
806 // Token: 0x06002A95 RID: 10901 RVA: 0x0005C7E4 File Offset: 0x0005A9E4
807 private unsafe int IndexOfCore(string source, string target, int startIndex, int count, CompareOptions options, int* matchLengthPtr)
808 {
809 while (matchLengthPtr != null)
810 {
811 }
812 int num;
813 return num;
814 }
815
816 // Token: 0x06002A96 RID: 10902 RVA: 0x0005C7F8 File Offset: 0x0005A9F8
818 {
819 string text;
820 int stringLength = text._stringLength;
821 int num;
822 return num;
823 }
824
825 // Token: 0x06002A97 RID: 10903 RVA: 0x0005C810 File Offset: 0x0005AA10
827 {
828 string text;
829 int stringLength = text._stringLength;
830 string text2;
831 if (text2 != null)
832 {
833 char rawStringData = text2.GetRawStringData();
834 int stringLength2 = text2._stringLength;
835 }
836 int stringLength3 = text2._stringLength;
837 int num;
838 return num;
839 }
840
841 // Token: 0x06002A98 RID: 10904 RVA: 0x0005C84C File Offset: 0x0005AA4C
843 {
844 while (source == null)
845 {
846 }
847 return this.CreateSortKeyCore(source, options);
848 }
849
850 // Token: 0x06002A99 RID: 10905 RVA: 0x0005C864 File Offset: 0x0005AA64
851 private bool StartsWith(string source, string prefix, CompareOptions options)
852 {
853 /*
854An exception occurred when decompiling this method (06002A99)
855
856ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Boolean System.Globalization.CompareInfo::StartsWith(System.String,System.String,System.Globalization.CompareOptions)
857
858 ---> System.Exception: Basic block has to end with unconditional control flow.
859{
860 IL_0003:
861 stloc:bool(var_0_08, callgetter:bool(CompareInfo::get_UseManagedCollation))
862 stloc:ISimpleCollator(var_1_0F, call:ISimpleCollator(CompareInfo::GetCollator, ldloc:CompareInfo(this)))
863 stloc:int32(var_2_16, ldfld:int32(string::_stringLength, ldloc:string(source)))
864 stloc:int32(var_3_1D, ldfld:int32(string::_stringLength, ldloc:string(prefix)))
865}
866
867 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
868 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
869 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
870 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
871 --- End of inner exception stack trace ---
872 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
873 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
874*/;
875 }
876
877 // Token: 0x06002A9A RID: 10906 RVA: 0x0005C894 File Offset: 0x0005AA94
878 private bool EndsWith(string source, string suffix, CompareOptions options)
879 {
880 /*
881An exception occurred when decompiling this method (06002A9A)
882
883ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Boolean System.Globalization.CompareInfo::EndsWith(System.String,System.String,System.Globalization.CompareOptions)
884
885 ---> System.Exception: Basic block has to end with unconditional control flow.
886{
887 IL_0003:
888 stloc:bool(var_0_08, callgetter:bool(CompareInfo::get_UseManagedCollation))
889 stloc:ISimpleCollator(var_1_0F, call:ISimpleCollator(CompareInfo::GetCollator, ldloc:CompareInfo(this)))
890 stloc:int32(var_2_16, ldfld:int32(string::_stringLength, ldloc:string(source)))
891 stloc:int32(var_3_1D, ldfld:int32(string::_stringLength, ldloc:string(suffix)))
892}
893
894 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
895 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
896 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
897 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
898 --- End of inner exception stack trace ---
899 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
900 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
901*/;
902 }
903
904 // Token: 0x06002A9B RID: 10907 RVA: 0x0005C8C4 File Offset: 0x0005AAC4
906 {
907 bool flag;
908 return flag;
909 }
910
911 // Token: 0x06002A9C RID: 10908 RVA: 0x0000207A File Offset: 0x0000027A
913 {
914 throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
915 }
916
917 // Token: 0x06002A9D RID: 10909 RVA: 0x0005C8D8 File Offset: 0x0005AAD8
918 // Note: this type is marked as 'beforefieldinit'.
919 static CompareInfo()
920 {
921 if (!true)
922 {
923 }
925 }
926
927 // Token: 0x06002A9E RID: 10910 RVA: 0x0005C8F0 File Offset: 0x0005AAF0
928 internal CompareInfo()
929 {
930 throw new NotSupportedException();
931 }
932
933 // Token: 0x040016B6 RID: 5814
935
936 // Token: 0x040016B7 RID: 5815
938
939 // Token: 0x040016B8 RID: 5816
941
942 // Token: 0x040016B9 RID: 5817
944
945 // Token: 0x040016BA RID: 5818
947
948 // Token: 0x040016BB RID: 5819
949 [OptionalField(VersionAdded = 2)]
950 private string m_name;
951
952 // Token: 0x040016BC RID: 5820
954 private string _sortName;
955
956 // Token: 0x040016BD RID: 5821
957 [OptionalField(VersionAdded = 3)]
959
960 // Token: 0x040016BE RID: 5822
961 private int culture;
962
963 // Token: 0x040016BF RID: 5823
966
967 // Token: 0x040016C0 RID: 5824
969
970 // Token: 0x040016C1 RID: 5825
971 private static bool managedCollation;
972
973 // Token: 0x040016C2 RID: 5826
974 private static bool managedCollationChecked;
975 }
976}
class f__AnonymousType0<< Count > j__TPar
static int CompareOrdinalIgnoreCase(string strA, int indexA, int lengthA, string strB, int indexB, int lengthB)
bool StartsWith(string source, string prefix, CompareOptions options)
int CompareString(ReadOnlySpan< char > string1, ReadOnlySpan< char > string2, CompareOptions options)
static readonly CompareInfo Invariant
void OnSerializing(StreamingContext ctx)
static unsafe int InvariantFindString(char *source, int sourceCount, char *value, int valueCount, bool ignoreCase, bool start)
virtual int Compare(string string1, int offset1, int length1, string string2, int offset2, int length2, CompareOptions options)
static int GetIgnoreCaseHash(string source)
const CompareOptions ValidIndexMaskOffFlags
int GetHashCodeOfString(string source, CompareOptions options)
int IndexOfOrdinal(string source, string value, int startIndex, int count, bool ignoreCase)
virtual bool IsPrefix(string source, string prefix, CompareOptions options)
static int InvariantIndexOf(string source, string value, int startIndex, int count, bool ignoreCase)
static int IndexOfOrdinalCore(string source, string value, int startIndex, int count, bool ignoreCase)
static char InvariantToUpper(char c)
virtual SortKey GetSortKey(string source, CompareOptions options)
void OnDeserialized(StreamingContext ctx)
override bool Equals(object value)
static CompareInfo GetCompareInfo(string name)
int CompareString(ReadOnlySpan< char > string1, string string2, CompareOptions options)
SortKey InvariantCreateSortKey(string source, CompareOptions options)
virtual int Compare(string string1, string string2)
void OnDeserializing(StreamingContext ctx)
static unsafe int CompareStringOrdinalIgnoreCase(char *pString1, int length1, char *pString2, int length2)
static Dictionary< string, ISimpleCollator > collators
virtual int GetHashCode(string source, CompareOptions options)
virtual int Compare(string string1, int offset1, string string2, int offset2, CompareOptions options)
int internal_compare_managed(string str1, int offset1, int length1, string str2, int offset2, int length2, CompareOptions options)
int internal_index_managed(string s1, int sindex, int count, string s2, CompareOptions opt, bool first)
SortKey CreateSortKeyCore(string source, CompareOptions options)
static int internal_compare(string str1, int offset1, int length1, string str2, int offset2, int length2, CompareOptions options)
const CompareOptions ValidCompareMaskOffFlags
virtual int IndexOf(string source, string value, int startIndex, int count, CompareOptions options)
static int InvariantLastIndexOf(string source, string value, int startIndex, int count, bool ignoreCase)
const CompareOptions ValidSortkeyCtorMaskOffFlags
static unsafe int internal_index_icall(char *source, int sindex, int count, char *value, int value_length, bool first)
static int internal_index(string source, int sindex, int count, string value, bool first)
bool EndsWith(string source, string suffix, CompareOptions options)
int internal_compare_switch(string str1, int offset1, int length1, string str2, int offset2, int length2, CompareOptions options)
int CompareOptionIgnoreCase(ReadOnlySpan< char > string1, ReadOnlySpan< char > string2)
static int CompareOrdinalIgnoreCase(ReadOnlySpan< char > strA, ReadOnlySpan< char > strB)
virtual int LastIndexOf(string source, string value, int startIndex, int count, CompareOptions options)
bool EndsWith(ReadOnlySpan< char > source, ReadOnlySpan< char > suffix, CompareOptions options)
int LastIndexOfOrdinal(string source, string value, int startIndex, int count, bool ignoreCase)
virtual int Compare(string string1, string string2, CompareOptions options)
int GetHashCodeOfStringCore(string source, CompareOptions options)
static unsafe int internal_compare_icall(char *str1, int length1, char *str2, int length2, CompareOptions options)
void InitSort(CultureInfo culture)
const CompareOptions ValidHashCodeOfStringMaskOffFlags
CompareInfo(CultureInfo culture)
int LastIndexOfCore(string source, string target, int startIndex, int count, CompareOptions options)
static int LastIndexOfOrdinalCore(string source, string value, int startIndex, int count, bool ignoreCase)
SortKey CreateSortKey(string source, CompareOptions options)
int Compare(ReadOnlySpan< char > string1, string string2, CompareOptions options)
unsafe int IndexOfCore(string source, string target, int startIndex, int count, CompareOptions options, int *matchLengthPtr)
virtual bool IsSuffix(string source, string suffix, CompareOptions options)
int internal_index_switch(string s1, int sindex, int count, string s2, CompareOptions opt, bool first)
bool IsSuffix(ReadOnlySpan< char > source, ReadOnlySpan< char > suffix, CompareOptions options)
static CultureInfo InvariantCulture
static CultureInfo GetCultureInfo(int culture)
static void ThrowArgumentOutOfRangeException()