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
EncoderReplacementFallbackBuffer.cs
Go to the documentation of this file.
1using System;
2
3namespace System.Text
4{
5 // Token: 0x02000273 RID: 627
7 {
8 // Token: 0x0600151B RID: 5403 RVA: 0x0002BF8C File Offset: 0x0002A18C
15
16 // Token: 0x0600151C RID: 5404 RVA: 0x0002BFB8 File Offset: 0x0002A1B8
17 public override bool Fallback(char charUnknown, int index)
18 {
19 /*
20An exception occurred when decompiling this method (0600151C)
21
22ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Boolean System.Text.EncoderReplacementFallbackBuffer::Fallback(System.Char,System.Int32)
23
24 ---> System.Exception: Basic block has to end with unconditional control flow.
25{
26 IL_0008:
27 stloc:int64(var_0_09, ldc.i4:int64(0))
28 stloc:bool(var_1_10, call:bool(char::IsHighSurrogate, ldloc:char(charUnknown)))
29 stloc:int32(var_2_17, ldfld:int32(EncoderReplacementFallbackBuffer::_fallbackCount, ldloc:EncoderReplacementFallbackBuffer(this)))
30 stloc:int32(var_3_1E, ldfld:int32(EncoderReplacementFallbackBuffer::_fallbackIndex, ldloc:EncoderReplacementFallbackBuffer(this)))
31 stloc:char(var_4_2B, callgetter:char(string::get_Chars, ldfld:string(EncoderReplacementFallbackBuffer::_strDefault, ldloc:EncoderReplacementFallbackBuffer(this)), ldloc:int64[exp:int32](var_0_09)))
32 stloc:int64(var_5_2E, ldc.i4:int64(0))
33 stloc:bool(var_6_37, call:bool(char::IsLowSurrogate, ldloc:char(var_4_2B)))
34 stloc:int32(var_7_3F, ldfld:int32(EncoderReplacementFallbackBuffer::_fallbackIndex, ldloc:EncoderReplacementFallbackBuffer(this)))
35 stloc:char(var_8_4E, callgetter:char(string::get_Chars, ldfld:string(EncoderReplacementFallbackBuffer::_strDefault, ldloc:EncoderReplacementFallbackBuffer(this)), ldloc:int64[exp:int32](var_5_2E)))
36 stloc:int32(var_9_58, call:int32(char::ConvertToUtf32, ldloc:char(charUnknown), ldloc:char(var_8_4E)))
37 call:void(EncoderFallbackBuffer::ThrowLastCharRecursive, ldloc:EncoderReplacementFallbackBuffer[exp:EncoderFallbackBuffer](this), ldloc:int32(var_9_58))
38 call:void(EncoderFallbackBuffer::ThrowLastCharRecursive, ldloc:EncoderReplacementFallbackBuffer[exp:EncoderFallbackBuffer](this), ldloc:int32(var_9_58))
39 stloc:int32(var_10_75, ldfld:int32(string::_stringLength, ldfld:string(EncoderReplacementFallbackBuffer::_strDefault, ldloc:EncoderReplacementFallbackBuffer(this))))
40 stfld:int32(EncoderReplacementFallbackBuffer::_fallbackCount, ldloc:EncoderReplacementFallbackBuffer(this), ldloc:int32(var_10_75))
41}
42
43 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
44 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
45 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
46 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
47 --- End of inner exception stack trace ---
48 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
49 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
50*/;
51 }
52
53 // Token: 0x0600151D RID: 5405 RVA: 0x0002C044 File Offset: 0x0002A244
54 public override bool Fallback(char charUnknownHigh, char charUnknownLow, int index)
55 {
56 if (!true)
57 {
58 }
59 bool flag = char.IsHighSurrogate(charUnknownHigh);
60 if (!true)
61 {
62 }
63 bool flag2 = char.IsLowSurrogate(charUnknownLow);
64 if (this._fallbackCount == 0)
65 {
66 }
67 int num = char.ConvertToUtf32(charUnknownHigh, charUnknownLow);
68 base.ThrowLastCharRecursive(num);
69 int stringLength = this._strDefault._stringLength;
71 return "charUnknownHigh" != null;
72 }
73
74 // Token: 0x0600151E RID: 5406 RVA: 0x0002C094 File Offset: 0x0002A294
75 public override char GetNextChar()
76 {
80 char c;
81 return c;
82 }
83
84 // Token: 0x0600151F RID: 5407 RVA: 0x0002C0BC File Offset: 0x0002A2BC
85 public override bool MovePrevious()
86 {
87 /*
88An exception occurred when decompiling this method (0600151F)
89
90ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Boolean System.Text.EncoderReplacementFallbackBuffer::MovePrevious()
91
92 ---> System.Exception: Basic block has to end with unconditional control flow.
93{
94 Block_0:
95 stloc:int32(var_0_06, ldfld:int32(EncoderReplacementFallbackBuffer::_fallbackCount, ldloc:EncoderReplacementFallbackBuffer(this)))
96 stloc:int32(var_1_0D, ldfld:int32(EncoderReplacementFallbackBuffer::_fallbackIndex, ldloc:EncoderReplacementFallbackBuffer(this)))
97 stfld:int32(EncoderReplacementFallbackBuffer::_fallbackCount, ldloc:EncoderReplacementFallbackBuffer(this), ldloc:int32(var_0_06))
98}
99
100 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
101 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
102 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
103 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
104 --- End of inner exception stack trace ---
105 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
106 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
107*/;
108 }
109
110 // Token: 0x17000221 RID: 545
111 // (get) Token: 0x06001520 RID: 5408 RVA: 0x0002C0E4 File Offset: 0x0002A2E4
112 public override int Remaining
113 {
114 get
115 {
116 /*
117An exception occurred when decompiling this method (06001520)
118
119ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Int32 System.Text.EncoderReplacementFallbackBuffer::get_Remaining()
120
121 ---> System.Exception: Basic block has to end with unconditional control flow.
122{
123 Block_0:
124 stloc:int32(var_0_06, ldfld:int32(EncoderReplacementFallbackBuffer::_fallbackCount, ldloc:EncoderReplacementFallbackBuffer(this)))
125}
126
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 1852
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: 0x06001521 RID: 5409 RVA: 0x0002C0F8 File Offset: 0x0002A2F8
139 public override void Reset()
140 {
141 }
142
143 // Token: 0x04000B18 RID: 2840
144 private string _strDefault;
145
146 // Token: 0x04000B19 RID: 2841
147 private int _fallbackCount;
148
149 // Token: 0x04000B1A RID: 2842
150 private int _fallbackIndex;
151 }
152}
class f__AnonymousType0<< Count > j__TPar
override bool Fallback(char charUnknownHigh, char charUnknownLow, int index)
EncoderReplacementFallbackBuffer(EncoderReplacementFallback fallback)
override bool Fallback(char charUnknown, int index)