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
GCHandle.cs
Go to the documentation of this file.
1using System;
3
5{
6 // Token: 0x0200044F RID: 1103
7 [ComVisible(true)]
8 public struct GCHandle
9 {
10 // Token: 0x06002194 RID: 8596 RVA: 0x0004C450 File Offset: 0x0004A650
11 private GCHandle(IntPtr h)
12 {
13 this.handle = h;
14 }
15
16 // Token: 0x06002195 RID: 8597 RVA: 0x0004C464 File Offset: 0x0004A664
17 private GCHandle(object obj)
18 {
20 }
21
22 // Token: 0x06002196 RID: 8598 RVA: 0x0004C478 File Offset: 0x0004A678
23 internal GCHandle(object value, GCHandleType type)
24 {
26 }
27
28 // Token: 0x1700045C RID: 1116
29 // (get) Token: 0x06002197 RID: 8599 RVA: 0x0004C48C File Offset: 0x0004A68C
30 public bool IsAllocated
31 {
32 get
33 {
34 bool flag;
35 return flag;
36 }
37 }
38
39 // Token: 0x1700045D RID: 1117
40 // (get) Token: 0x06002198 RID: 8600 RVA: 0x0004C49C File Offset: 0x0004A69C
41 // (set) Token: 0x06002199 RID: 8601 RVA: 0x0004C4B0 File Offset: 0x0004A6B0
42 public object Target
43 {
44 get
45 {
46 /*
47An exception occurred when decompiling this method (06002198)
48
49ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Object System.Runtime.InteropServices.GCHandle::get_Target()
50
51 ---> System.Exception: Basic block has to end with unconditional control flow.
52{
53 Block_0:
54 stloc:bool(var_0_06, callgetter:bool(GCHandle::get_IsAllocated, ldloc:valuetype System.Runtime.InteropServices.GCHandle&(this)))
55}
56
57 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
58 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
59 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
60 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
61 --- End of inner exception stack trace ---
62 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
63 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
64*/;
65 }
66 set
67 {
69 }
70 }
71
72 // Token: 0x0600219A RID: 8602 RVA: 0x0004C4C4 File Offset: 0x0004A6C4
74 {
75 /*
76An exception occurred when decompiling this method (0600219A)
77
78ICSharpCode.Decompiler.DecompilerException: Error decompiling System.IntPtr System.Runtime.InteropServices.GCHandle::AddrOfPinnedObject()
79
80 ---> System.Exception: Basic block has to end with unconditional control flow.
81{
82 Block_0:
83 stloc:native int(var_2_06, call:native int(native int::op_Explicit, ldloc:bool[exp:int32](var_1)))
84}
85
86 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
87 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
88 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
89 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
90 --- End of inner exception stack trace ---
91 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
92 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
93*/;
94 }
95
96 // Token: 0x0600219B RID: 8603 RVA: 0x0000207A File Offset: 0x0000027A
97 public static GCHandle Alloc(object value)
98 {
99 throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
100 }
101
102 // Token: 0x0600219C RID: 8604 RVA: 0x0000207A File Offset: 0x0000027A
103 public static GCHandle Alloc(object value, GCHandleType type)
104 {
105 throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
106 }
107
108 // Token: 0x0600219D RID: 8605 RVA: 0x0004C4D8 File Offset: 0x0004A6D8
109 public void Free()
110 {
111 }
112
113 // Token: 0x0600219E RID: 8606 RVA: 0x0000207A File Offset: 0x0000027A
114 public static explicit operator IntPtr(GCHandle value)
115 {
116 throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
117 }
118
119 // Token: 0x0600219F RID: 8607 RVA: 0x0000207A File Offset: 0x0000027A
120 public static explicit operator GCHandle(IntPtr value)
121 {
122 throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
123 }
124
125 // Token: 0x060021A0 RID: 8608 RVA: 0x0000207A File Offset: 0x0000027A
126 private static bool CheckCurrentDomain(IntPtr handle)
127 {
128 throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
129 }
130
131 // Token: 0x060021A1 RID: 8609 RVA: 0x0000207A File Offset: 0x0000027A
132 private static object GetTarget(IntPtr handle)
133 {
134 throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
135 }
136
137 // Token: 0x060021A2 RID: 8610 RVA: 0x0000207A File Offset: 0x0000027A
138 private static IntPtr GetTargetHandle(object obj, IntPtr handle, GCHandleType type)
139 {
140 throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
141 }
142
143 // Token: 0x060021A3 RID: 8611 RVA: 0x0004C4E8 File Offset: 0x0004A6E8
144 private static void FreeHandle(IntPtr handle)
145 {
146 }
147
148 // Token: 0x060021A4 RID: 8612 RVA: 0x0000207A File Offset: 0x0000027A
150 {
151 throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
152 }
153
154 // Token: 0x060021A5 RID: 8613 RVA: 0x0004C4F8 File Offset: 0x0004A6F8
155 public static bool operator ==(GCHandle a, GCHandle b)
156 {
157 bool flag;
158 return flag;
159 }
160
161 // Token: 0x060021A6 RID: 8614 RVA: 0x0004C508 File Offset: 0x0004A708
162 public override bool Equals(object o)
163 {
164 if (o != null)
165 {
166 }
167 bool flag;
168 return flag;
169 }
170
171 // Token: 0x060021A7 RID: 8615 RVA: 0x0004C51C File Offset: 0x0004A71C
172 public override int GetHashCode()
173 {
174 int num;
175 return num;
176 }
177
178 // Token: 0x060021A8 RID: 8616 RVA: 0x0004C52C File Offset: 0x0004A72C
180 {
182 return gchandle;
183 }
184
185 // Token: 0x060021A9 RID: 8617 RVA: 0x0000207A File Offset: 0x0000027A
187 {
188 throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
189 }
190
191 // Token: 0x04001283 RID: 4739
192 private IntPtr handle;
193 }
194}
class f__AnonymousType0<< Count > j__TPar
static IntPtr ToIntPtr(GCHandle value)
Definition GCHandle.cs:186
static bool operator==(GCHandle a, GCHandle b)
Definition GCHandle.cs:155
GCHandle(object value, GCHandleType type)
Definition GCHandle.cs:23
override bool Equals(object o)
Definition GCHandle.cs:162
static IntPtr GetTargetHandle(object obj, IntPtr handle, GCHandleType type)
Definition GCHandle.cs:138
static GCHandle Alloc(object value, GCHandleType type)
Definition GCHandle.cs:103
static IntPtr GetAddrOfPinnedObject(IntPtr handle)
Definition GCHandle.cs:149
static bool CheckCurrentDomain(IntPtr handle)
Definition GCHandle.cs:126
static GCHandle Alloc(object value)
Definition GCHandle.cs:97
static void FreeHandle(IntPtr handle)
Definition GCHandle.cs:144
static object GetTarget(IntPtr handle)
Definition GCHandle.cs:132
static GCHandle FromIntPtr(IntPtr value)
Definition GCHandle.cs:179