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
StackTrace.cs
Go to the documentation of this file.
1using System;
5using System.Text;
8
9namespace System.Diagnostics
10{
11 // Token: 0x020005D4 RID: 1492
12 [ComVisible(true)]
13 [MonoTODO("Serialized objects are not compatible with .NET")]
15 public class StackTrace
16 {
17 // Token: 0x06002D6A RID: 11626 RVA: 0x00064758 File Offset: 0x00062958
18 public StackTrace()
19 {
20 long num = 0L;
21 long num2 = 0L;
22 this.init_frames((int)num, num2 != 0L);
23 }
24
25 // Token: 0x06002D6B RID: 11627 RVA: 0x00064778 File Offset: 0x00062978
27 {
28 }
29
30 // Token: 0x06002D6C RID: 11628 RVA: 0x0006478C File Offset: 0x0006298C
32 {
33 this.init_frames(skipFrames, fNeedFileInfo);
34 }
35
36 // Token: 0x06002D6D RID: 11629 RVA: 0x000647A8 File Offset: 0x000629A8
37 private void init_frames(int skipFrames, bool fNeedFileInfo)
38 {
39 }
40
41 // Token: 0x06002D6E RID: 11630 RVA: 0x0000207A File Offset: 0x0000027A
42 private static StackFrame[] get_trace(Exception e, int skipFrames, bool fNeedFileInfo)
43 {
44 throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
45 }
46
47 // Token: 0x06002D6F RID: 11631 RVA: 0x000647B8 File Offset: 0x000629B8
49 {
50 }
51
52 // Token: 0x06002D70 RID: 11632 RVA: 0x000647C8 File Offset: 0x000629C8
54 {
55 if (e != null)
56 {
57 this.frames = e;
60 return;
61 }
62 }
63
64 // Token: 0x06002D71 RID: 11633 RVA: 0x000647F4 File Offset: 0x000629F4
65 [MonoLimitation("Not possible to create StackTraces from other threads")]
66 [Obsolete]
68 {
70 long num = 0L;
71 this.init_frames((int)num, needFileInfo);
72 }
73
74 // Token: 0x170006E8 RID: 1768
75 // (get) Token: 0x06002D72 RID: 11634 RVA: 0x0006481C File Offset: 0x00062A1C
76 public virtual int FrameCount
77 {
78 get
79 {
80 StackFrame[] array = this.frames;
81 if (array != null)
82 {
83 long methodAddress = array.methodAddress;
84 return;
85 }
86 }
87 }
88
89 // Token: 0x06002D73 RID: 11635 RVA: 0x0006483C File Offset: 0x00062A3C
90 public virtual StackFrame GetFrame(int index)
91 {
92 /*
93An exception occurred when decompiling this method (06002D73)
94
95ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Diagnostics.StackFrame System.Diagnostics.StackTrace::GetFrame(System.Int32)
96
97 ---> System.Exception: Basic block has to end with unconditional control flow.
98{
99 Block_0:
100 stloc:uint32(var_0_0B, ldfld:uint32(StackFrame::methodIndex, ldfld:class System.Diagnostics.StackFrame[][exp:StackFrame](StackTrace::frames, ldloc:StackTrace(this))))
101}
102
103 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
104 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
105 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
106 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
107 --- End of inner exception stack trace ---
108 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
109 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
110*/;
111 }
112
113 // Token: 0x06002D74 RID: 11636 RVA: 0x00064858 File Offset: 0x00062A58
114 private static string GetAotId()
115 {
116 string text;
117 if (RuntimeAssembly.GetAotId() != null)
118 {
119 return text;
120 }
121 return text;
122 }
123
124 // Token: 0x06002D75 RID: 11637 RVA: 0x00064874 File Offset: 0x00062A74
125 private bool AddFrames(StringBuilder sb, bool separator, [Out] bool isAsync)
126 {
127 /*
128An exception occurred when decompiling this method (06002D75)
129
130ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Boolean System.Diagnostics.StackTrace::AddFrames(System.Text.StringBuilder,System.Boolean,System.Boolean)
131
132 ---> System.Exception: Basic block has to end with unconditional control flow.
133{
134 IL_0075:
135 stloc:string(var_18_81, call:string(string::Format, ldstr:string("<{0}>"), ldloc:string[exp:object](var_15)))
136}
137
138 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
139 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
140 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
141 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
142 --- End of inner exception stack trace ---
143 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
144 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
145*/;
146 }
147
148 // Token: 0x06002D76 RID: 11638 RVA: 0x00064904 File Offset: 0x00062B04
150 {
151 }
152
153 // Token: 0x06002D77 RID: 11639 RVA: 0x000649F0 File Offset: 0x00062BF0
155 {
156 IEnumerable enumerable;
157 if (enumerable != null)
158 {
159 return;
160 }
161 }
162
163 // Token: 0x06002D78 RID: 11640 RVA: 0x00064A48 File Offset: 0x00062C48
164 public override string ToString()
165 {
166 /*
167An exception occurred when decompiling this method (06002D78)
168
169ICSharpCode.Decompiler.DecompilerException: Error decompiling System.String System.Diagnostics.StackTrace::ToString()
170
171 ---> System.Exception: Basic block has to end with unconditional control flow.
172{
173 Block_1:
174 stloc:string(var_5_1E, callgetter:string(Environment::get_NewLine))
175 stloc:string(var_9_28, callgetter:string(Environment::get_NewLine))
176}
177
178 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
179 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
180 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
181 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
182 --- End of inner exception stack trace ---
183 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
184 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
185*/;
186 }
187
188 // Token: 0x06002D79 RID: 11641 RVA: 0x0000207A File Offset: 0x0000027A
190 {
191 throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
192 }
193
194 // Token: 0x0400196A RID: 6506
195 public const int METHODS_TO_SKIP = 0;
196
197 // Token: 0x0400196B RID: 6507
198 private const string prefix = " at ";
199
200 // Token: 0x0400196C RID: 6508
202
203 // Token: 0x0400196D RID: 6509
205
206 // Token: 0x0400196E RID: 6510
207 private bool debug_info;
208
209 // Token: 0x0400196F RID: 6511
210 private static bool isAotidSet;
211
212 // Token: 0x04001970 RID: 6512
213 private static string aotid;
214
215 // Token: 0x020005D5 RID: 1493
216 internal enum TraceFormat
217 {
218 // Token: 0x04001972 RID: 6514
219 Normal,
220 // Token: 0x04001973 RID: 6515
222 // Token: 0x04001974 RID: 6516
224 }
225 }
226}
class f__AnonymousType0<< Count > j__TPar
static StackFrame[] get_trace(Exception e, int skipFrames, bool fNeedFileInfo)
Definition StackTrace.cs:42
bool AddFrames(StringBuilder sb, bool separator, [Out] bool isAsync)
string ToString(StackTrace.TraceFormat traceFormat)
readonly StackTrace[] captured_traces
StackTrace(Exception e, int skipFrames, bool fNeedFileInfo)
Definition StackTrace.cs:53
override string ToString()
virtual StackFrame GetFrame(int index)
Definition StackTrace.cs:90
StackTrace(int skipFrames, bool fNeedFileInfo)
Definition StackTrace.cs:31
StackTrace(Thread targetThread, bool needFileInfo)
Definition StackTrace.cs:67
void GetFullNameForStackTrace(StringBuilder sb, MethodBase mi, bool needsNewLine, [Out] bool skipped, [Out] bool isAsync)
StackTrace(bool fNeedFileInfo)
Definition StackTrace.cs:26
void init_frames(int skipFrames, bool fNeedFileInfo)
Definition StackTrace.cs:37
static void ConvertAsyncStateMachineMethod(MethodBase method, Type declaringType)
StackTrace(Exception e, bool fNeedFileInfo)
Definition StackTrace.cs:48
StackTrace[] captured_traces
Definition Exception.cs:449
static Thread CurrentThread
Definition Thread.cs:381