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
UnknownDeviceControl.cs
Go to the documentation of this file.
1using System;
2using System.IO;
4
5namespace InControl
6{
7 // Token: 0x02000018 RID: 24
8 public struct UnknownDeviceControl : IEquatable<UnknownDeviceControl>
9 {
10 // Token: 0x0600010D RID: 269 RVA: 0x000041D0 File Offset: 0x000023D0
12 {
13 this.Control = control;
14 this.IsButton = sourceRange != InputRangeType.None;
15 if (!true)
16 {
17 }
18 bool flag = Utility.TargetIsButton(control);
19 this.IsButton = true;
20 this.IsAnalog = true;
21 }
22
23 // Token: 0x0600010E RID: 270 RVA: 0x00004204 File Offset: 0x00002404
24 internal float GetValue(InputDevice device)
25 {
26 /*
27An exception occurred when decompiling this method (0600010E)
28
29ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Single InControl.UnknownDeviceControl::GetValue(InControl.InputDevice)
30
31 ---> System.Exception: Basic block has to end with unconditional control flow.
32{
33 IL_0021:
34 stloc:InputRangeType(var_3_27, ldfld:InputRangeType(UnknownDeviceControl::SourceRange, ldloc:valuetype InControl.UnknownDeviceControl&(this)))
35 brtrue(IL_0000, ldloc:bool(var_1))
36}
37
38 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
39 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
40 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
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 1846
42 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
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 1878
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 1846
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: 0x17000048 RID: 72
55 // (get) Token: 0x0600010F RID: 271 RVA: 0x0000423C File Offset: 0x0000243C
56 public int Index
57 {
58 get
59 {
60 /*
61An exception occurred when decompiling this method (0600010F)
62
63ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Int32 InControl.UnknownDeviceControl::get_Index()
64
65 ---> System.Exception: Basic block has to end with unconditional control flow.
66{
67 Block_0:
68 stloc:bool(var_0_06, ldfld:bool(UnknownDeviceControl::IsButton, ldloc:valuetype InControl.UnknownDeviceControl&(this)))
69}
70
71 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
72 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
73 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
74 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
75 --- End of inner exception stack trace ---
76 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
77 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
78*/;
79 }
80 }
81
82 // Token: 0x06000110 RID: 272 RVA: 0x000025E1 File Offset: 0x000007E1
84 {
85 throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
86 }
87
88 // Token: 0x06000111 RID: 273 RVA: 0x00004250 File Offset: 0x00002450
90 {
91 /*
92An exception occurred when decompiling this method (06000111)
93
94ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Boolean InControl.UnknownDeviceControl::op_Inequality(InControl.UnknownDeviceControl,InControl.UnknownDeviceControl)
95
96 ---> System.Exception: Basic block has to end with unconditional control flow.
97{
98 IL_0000:
99 brtrue(IL_0000, ldc.i4:bool(1))
100}
101
102 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
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 1878
104 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
105 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
106 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
107 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
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 88
109 --- End of inner exception stack trace ---
110 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
111 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
112*/;
113 }
114
115 // Token: 0x06000112 RID: 274 RVA: 0x00004260 File Offset: 0x00002460
117 {
118 /*
119An exception occurred when decompiling this method (06000112)
120
121ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Boolean InControl.UnknownDeviceControl::Equals(InControl.UnknownDeviceControl)
122
123 ---> System.Exception: Basic block has to end with unconditional control flow.
124{
125 Block_0:
126 stloc:InputRangeType(var_0_06, ldfld:InputRangeType(UnknownDeviceControl::SourceRange, ldloc:valuetype InControl.UnknownDeviceControl&(this)))
127}
128
129 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
130 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
131 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
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 88
133 --- End of inner exception stack trace ---
134 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
135 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
136*/;
137 }
138
139 // Token: 0x06000113 RID: 275 RVA: 0x00004278 File Offset: 0x00002478
140 public override bool Equals(object other)
141 {
142 InputRangeType sourceRange = this.SourceRange;
143 throw new InvalidCastException();
144 }
145
146 // Token: 0x06000114 RID: 276 RVA: 0x00004294 File Offset: 0x00002494
147 public override int GetHashCode()
148 {
149 int num;
150 return num.GetHashCode();
151 }
152
153 // Token: 0x06000115 RID: 277 RVA: 0x000025E1 File Offset: 0x000007E1
154 public static implicit operator bool(UnknownDeviceControl control)
155 {
156 throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
157 }
158
159 // Token: 0x06000116 RID: 278 RVA: 0x000042A8 File Offset: 0x000024A8
160 public override string ToString()
161 {
162 InputRangeType sourceRange = this.SourceRange;
163 string text;
164 string text2;
165 return string.Format("UnknownDeviceControl( {0}, {1} )", text, text2);
166 }
167
168 // Token: 0x06000117 RID: 279 RVA: 0x000042C8 File Offset: 0x000024C8
169 internal void Save(BinaryWriter writer)
170 {
171 InputRangeType sourceRange = this.SourceRange;
172 }
173
174 // Token: 0x06000118 RID: 280 RVA: 0x000042DC File Offset: 0x000024DC
175 internal void Load(BinaryReader reader)
176 {
177 this.Control = reader;
178 this.SourceRange = reader;
179 }
180
181 // Token: 0x06000119 RID: 281 RVA: 0x000042F8 File Offset: 0x000024F8
182 // Note: this type is marked as 'beforefieldinit'.
184 {
185 }
186
187 // Token: 0x0400010A RID: 266
189
190 // Token: 0x0400010B RID: 267
192
193 // Token: 0x0400010C RID: 268
195
196 // Token: 0x0400010D RID: 269
197 public bool IsButton;
198
199 // Token: 0x0400010E RID: 270
200 public bool IsAnalog;
201 }
202}
class f__AnonymousType0<< Count > j__TPar
static bool TargetIsButton(InputControlType target)
Definition Utility.cs:147
UnknownDeviceControl(InputControlType control, InputRangeType sourceRange)
override bool Equals(object other)
static bool operator!=(UnknownDeviceControl a, UnknownDeviceControl b)
bool Equals(UnknownDeviceControl other)
float GetValue(InputDevice device)
static readonly UnknownDeviceControl None
static bool operator==(UnknownDeviceControl a, UnknownDeviceControl b)