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
MethodSequenceListItem.cs
Go to the documentation of this file.
1using System;
4
6{
7 // Token: 0x02000636 RID: 1590
9 {
10 // Token: 0x0600362D RID: 13869 RVA: 0x00212464 File Offset: 0x00210664
11 public MethodSequenceListItem(string name, Func<bool> method, [Optional] MethodSequenceListItem parent)
12 {
13 this.Parent = parent;
14 this.Method = method;
16 }
17
18 // Token: 0x0600362E RID: 13870 RVA: 0x0021248C File Offset: 0x0021068C
20 {
21 while (!this.Skip)
22 {
23 if (this.Parent == null)
24 {
25 return true;
26 }
27 }
28 }
29
30 // Token: 0x0600362F RID: 13871 RVA: 0x002124AC File Offset: 0x002106AC
31 public bool Act()
32 {
33 /*
34An exception occurred when decompiling this method (0600362F)
35
36ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Boolean Terraria.DataStructures.MethodSequenceListItem::Act()
37
38 ---> System.Exception: Basic block has to end with unconditional control flow.
39{
40 Block_0:
41 stloc:class [mscorlib]System.Func`1<bool>(var_0_06, ldfld:class [mscorlib]System.Func`1<bool>(MethodSequenceListItem::Method, ldloc:MethodSequenceListItem(this)))
42}
43
44 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
45 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
46 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
47 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
48 --- End of inner exception stack trace ---
49 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
50 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
51*/;
52 }
53
54 // Token: 0x06003630 RID: 13872 RVA: 0x002124C0 File Offset: 0x002106C0
58
59 // Token: 0x06003631 RID: 13873 RVA: 0x002124E4 File Offset: 0x002106E4
60 public override string ToString()
61 {
62 if ("name: " == null || "name: " != null)
63 {
64 string name = this.Name;
65 string text;
66 if ((name == null || name != null) && (" skip: " == null || " skip: " != null) && (text == null || text != null) && (" parent: " == null || " parent: " != null))
67 {
68 MethodSequenceListItem parent = this.Parent;
69 if (parent == null || parent == null || parent != null)
70 {
71 string text2;
72 return text2;
73 }
74 }
75 }
77 }
78
79 // Token: 0x040076EE RID: 30446
80 public string Name;
81
82 // Token: 0x040076EF RID: 30447
84
85 // Token: 0x040076F0 RID: 30448
87
88 // Token: 0x040076F1 RID: 30449
89 public bool Skip;
90 }
91}
class f__AnonymousType0<< Count > j__TPar
MethodSequenceListItem(string name, Func< bool > method, [Optional] MethodSequenceListItem parent)
static void ExecuteSequence(List< MethodSequenceListItem > sequence)
bool ShouldAct(List< MethodSequenceListItem > sequence)