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
BitStack.cs
Go to the documentation of this file.
1using System;
2
3namespace System.Xml
4{
5 // Token: 0x02000009 RID: 9
6 internal class BitStack
7 {
8 // Token: 0x06000011 RID: 17 RVA: 0x000022BC File Offset: 0x000004BC
9 public BitStack()
10 {
11 this.curr = 1U;
12 }
13
14 // Token: 0x06000012 RID: 18 RVA: 0x000022D8 File Offset: 0x000004D8
15 public void PushBit(bool bit)
16 {
17 uint num = this.curr;
18 this.PushCurr();
19 uint num2 = this.curr;
20 this.curr = (bit ? 1U : 0U);
21 }
22
23 // Token: 0x06000013 RID: 19 RVA: 0x00002300 File Offset: 0x00000500
24 public bool PopBit()
25 {
26 /*
27An exception occurred when decompiling this method (06000013)
28
29ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Boolean System.Xml.BitStack::PopBit()
30
31 ---> System.Exception: Basic block has to end with unconditional control flow.
32{
33 Block_0:
34 stloc:uint32(var_0_06, ldfld:uint32(BitStack::curr, ldloc:BitStack(this)))
35 stloc:int32(var_1_0D, ldfld:int32(BitStack::stackPos, ldloc:BitStack(this)))
36 stloc:uint32[](var_2_14, ldfld:uint32[](BitStack::bitStack, ldloc:BitStack(this)))
37 stfld:int32(BitStack::stackPos, ldloc:BitStack(this), ldloc:int32(var_1_0D))
38 stfld:uint32(BitStack::curr, ldloc:BitStack(this), ldloc:int32[exp:uint32](var_1_0D))
39}
40
41 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
42 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
43 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
44 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
45 --- End of inner exception stack trace ---
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 92
47 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
48*/;
49 }
50
51 // Token: 0x06000014 RID: 20 RVA: 0x00002330 File Offset: 0x00000530
52 public bool PeekBit()
53 {
54 /*
55An exception occurred when decompiling this method (06000014)
56
57ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Boolean System.Xml.BitStack::PeekBit()
58
59 ---> System.Exception: Basic block has to end with unconditional control flow.
60{
61 Block_0:
62 stloc:uint32(var_0_06, ldfld:uint32(BitStack::curr, ldloc:BitStack(this)))
63}
64
65 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
66 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
67 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
68 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
69 --- End of inner exception stack trace ---
70 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
71 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
72*/;
73 }
74
75 // Token: 0x06000015 RID: 21 RVA: 0x00002344 File Offset: 0x00000544
76 private void PushCurr()
77 {
78 if (this.bitStack == null)
79 {
80 }
81 int num = this.stackPos;
82 int num2 = 1;
83 this.curr = (uint)num2;
84 int num3 = this.stackPos;
85 uint[] array = this.bitStack;
86 }
87
88 // Token: 0x06000016 RID: 22 RVA: 0x0000237C File Offset: 0x0000057C
89 private void PopCurr()
90 {
91 uint[] array = this.bitStack;
92 }
93
94 // Token: 0x0400000F RID: 15
95 private uint[] bitStack;
96
97 // Token: 0x04000010 RID: 16
98 private int stackPos;
99
100 // Token: 0x04000011 RID: 17
101 private uint curr;
102 }
103}
class f__AnonymousType0<< Count > j__TPar
void PushBit(bool bit)
Definition BitStack.cs:15