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
ExecutionContext.cs
Go to the documentation of this file.
1using System;
9
10namespace System.Threading
11{
12 // Token: 0x020001EC RID: 492
15 {
16 // Token: 0x170001A2 RID: 418
17 // (get) Token: 0x06001182 RID: 4482 RVA: 0x0002544C File Offset: 0x0002364C
18 // (set) Token: 0x06001183 RID: 4483 RVA: 0x00025460 File Offset: 0x00023660
19 internal bool isNewCapture
20 {
21 get
22 {
23 /*
24An exception occurred when decompiling this method (06001182)
25
26ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Boolean System.Threading.ExecutionContext::get_isNewCapture()
27
28 ---> System.Exception: Basic block has to end with unconditional control flow.
29{
30 Block_0:
31 stloc:Flags(var_0_06, ldfld:Flags(ExecutionContext::_flags, ldloc:ExecutionContext(this)))
32}
33
34 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
35 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
36 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
37 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
38 --- End of inner exception stack trace ---
39 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
40 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
41*/;
42 }
43 set
44 {
45 ExecutionContext.Flags flags = this._flags;
46 this._flags = flags;
47 }
48 }
49
50 // Token: 0x170001A3 RID: 419
51 // (get) Token: 0x06001184 RID: 4484 RVA: 0x0002547C File Offset: 0x0002367C
52 // (set) Token: 0x06001185 RID: 4485 RVA: 0x00025490 File Offset: 0x00023690
53 internal bool isFlowSuppressed
54 {
55 get
56 {
57 /*
58An exception occurred when decompiling this method (06001184)
59
60ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Boolean System.Threading.ExecutionContext::get_isFlowSuppressed()
61
62 ---> System.Exception: Basic block has to end with unconditional control flow.
63{
64 Block_0:
65 stloc:Flags(var_0_06, ldfld:Flags(ExecutionContext::_flags, ldloc:ExecutionContext(this)))
66}
67
68 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
69 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
70 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
71 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
72 --- End of inner exception stack trace ---
73 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
74 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
75*/;
76 }
77 set
78 {
79 ExecutionContext.Flags flags = this._flags;
80 this._flags = flags;
81 }
82 }
83
84 // Token: 0x170001A4 RID: 420
85 // (get) Token: 0x06001186 RID: 4486 RVA: 0x000254AC File Offset: 0x000236AC
87 {
88 get
89 {
90 /*
91An exception occurred when decompiling this method (06001186)
92
93ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Boolean System.Threading.ExecutionContext::get_IsPreAllocatedDefault()
94
95 ---> System.Exception: Basic block has to end with unconditional control flow.
96{
97 Block_0:
98 stloc:Flags(var_0_06, ldfld:Flags(ExecutionContext::_flags, ldloc:ExecutionContext(this)))
99}
100
101 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
102 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
103 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
104 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
105 --- End of inner exception stack trace ---
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 92
107 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
108*/;
109 }
110 }
111
112 // Token: 0x06001187 RID: 4487 RVA: 0x000254C0 File Offset: 0x000236C0
113 [ReliabilityContract(Consistency.WillNotCorruptState, Cer.Success)]
115 {
116 }
117
118 // Token: 0x06001188 RID: 4488 RVA: 0x000254D4 File Offset: 0x000236D4
119 [ReliabilityContract(Consistency.WillNotCorruptState, Cer.Success)]
121 {
122 this._flags = ExecutionContext.Flags.IsPreAllocatedDefault;
123 }
124
125 // Token: 0x06001189 RID: 4489 RVA: 0x000254F0 File Offset: 0x000236F0
126 internal static void SetLocalValue(IAsyncLocal local, object newValue, bool needChangeNotifications)
127 {
129 if (mutableExecutionContext._localValues != null)
130 {
131 return;
132 }
133 if (mutableExecutionContext._localValues != null)
134 {
135 return;
136 }
137 if (mutableExecutionContext._localChangeNotifications != null)
138 {
139 return;
140 }
141 }
142
143 // Token: 0x0600118A RID: 4490 RVA: 0x00025528 File Offset: 0x00023728
146 {
147 if (previous != null)
148 {
149 if (previous._localChangeNotifications != null)
150 {
151 if (previous._localValues != null)
152 {
153 }
154 if (current != null && current._localValues != null)
155 {
156 return;
157 }
158 return;
159 }
160 }
161 if (current == null || current._localChangeNotifications == null)
162 {
163 return;
164 }
165 if (previous == null || previous._localValues != null)
166 {
167 }
168 if (current._localValues != null)
169 {
170 return;
171 }
172 }
173
174 // Token: 0x170001A5 RID: 421
175 // (get) Token: 0x0600118B RID: 4491 RVA: 0x000255D4 File Offset: 0x000237D4
176 // (set) Token: 0x0600118C RID: 4492 RVA: 0x000255E8 File Offset: 0x000237E8
178 {
179 get
180 {
181 /*
182An exception occurred when decompiling this method (0600118B)
183
184ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Runtime.Remoting.Messaging.LogicalCallContext System.Threading.ExecutionContext::get_LogicalCallContext()
185
186 ---> System.Exception: Basic block has to end with unconditional control flow.
187{
188 IL_0000:
189 brtrue(IL_0000, ldfld:LogicalCallContext[exp:bool](ExecutionContext::_logicalCallContext, ldloc:ExecutionContext(this)))
190}
191
192 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
193 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
194 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
195 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
196 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
197 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
198 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
199 --- End of inner exception stack trace ---
200 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
201 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
202*/;
203 }
204 set
205 {
207 }
208 }
209
210 // Token: 0x170001A6 RID: 422
211 // (get) Token: 0x0600118D RID: 4493 RVA: 0x000255FC File Offset: 0x000237FC
212 // (set) Token: 0x0600118E RID: 4494 RVA: 0x00025610 File Offset: 0x00023810
214 {
215 get
216 {
217 /*
218An exception occurred when decompiling this method (0600118D)
219
220ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Runtime.Remoting.Messaging.IllogicalCallContext System.Threading.ExecutionContext::get_IllogicalCallContext()
221
222 ---> System.Exception: Basic block has to end with unconditional control flow.
223{
224 IL_0000:
225 brtrue(IL_0000, ldfld:IllogicalCallContext[exp:bool](ExecutionContext::_illogicalCallContext, ldloc:ExecutionContext(this)))
226}
227
228 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
229 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
230 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
231 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
232 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
233 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
234 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
235 --- End of inner exception stack trace ---
236 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
237 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
238*/;
239 }
240 set
241 {
243 }
244 }
245
246 // Token: 0x170001A7 RID: 423
247 // (get) Token: 0x0600118F RID: 4495 RVA: 0x00025624 File Offset: 0x00023824
248 // (set) Token: 0x06001190 RID: 4496 RVA: 0x00025638 File Offset: 0x00023838
250 {
251 [ReliabilityContract(Consistency.WillNotCorruptState, Cer.Success)]
252 get
253 {
254 return this._syncContext;
255 }
256 [ReliabilityContract(Consistency.WillNotCorruptState, Cer.Success)]
257 set
258 {
260 }
261 }
262
263 // Token: 0x170001A8 RID: 424
264 // (get) Token: 0x06001191 RID: 4497 RVA: 0x0002564C File Offset: 0x0002384C
265 // (set) Token: 0x06001192 RID: 4498 RVA: 0x00025660 File Offset: 0x00023860
267 {
268 [ReliabilityContract(Consistency.WillNotCorruptState, Cer.Success)]
269 get
270 {
271 return this._syncContextNoFlow;
272 }
273 [ReliabilityContract(Consistency.WillNotCorruptState, Cer.Success)]
274 set
275 {
277 }
278 }
279
280 // Token: 0x06001193 RID: 4499 RVA: 0x00025674 File Offset: 0x00023874
281 public void Dispose()
282 {
283 }
284
285 // Token: 0x06001194 RID: 4500 RVA: 0x00025684 File Offset: 0x00023884
286 public static void Run(ExecutionContext executionContext, ContextCallback callback, object state)
287 {
288 if (executionContext != null)
289 {
291 long num = 0L;
292 ExecutionContext.Run(executionContext, callback, state, num != 0L);
293 return;
294 }
295 }
296
297 // Token: 0x06001195 RID: 4501 RVA: 0x000256B4 File Offset: 0x000238B4
299 internal static void Run(ExecutionContext executionContext, ContextCallback callback, object state, bool preserveSyncCtx)
300 {
301 if (!true)
302 {
303 }
305 }
306
307 // Token: 0x06001196 RID: 4502 RVA: 0x000256D0 File Offset: 0x000238D0
308 internal static void RunInternal(ExecutionContext executionContext, ContextCallback callback, object state)
309 {
310 if (!true)
311 {
312 }
313 long num = 0L;
315 }
316
317 // Token: 0x06001197 RID: 4503 RVA: 0x000256EC File Offset: 0x000238EC
320 {
326 if (executionContext2 != null)
327 {
328 }
329 if (executionContext2 != null)
330 {
332 return;
333 }
335 if (executionContext._flags == ExecutionContext.Flags.None)
336 {
337 }
338 IntPtr method_code = callback.method_code;
339 IntPtr invoke_impl = callback.invoke_impl;
340 IntPtr method = callback.method;
341 }
342
343 // Token: 0x06001198 RID: 4504 RVA: 0x00025784 File Offset: 0x00023984
354
355 // Token: 0x06001199 RID: 4505 RVA: 0x000257C4 File Offset: 0x000239C4
365
366 // Token: 0x0600119A RID: 4506 RVA: 0x000257FC File Offset: 0x000239FC
393
394 // Token: 0x0600119B RID: 4507 RVA: 0x0002586C File Offset: 0x00023A6C
396 {
397 ExecutionContext.Flags flags = this._flags;
398 if (this._syncContext != null)
399 {
400 }
401 if (this._logicalCallContext == null || this.LogicalCallContext.Clone() != null)
402 {
403 }
404 string resourceString = Environment.GetResourceString("Only newly captured contexts can be copied");
405 throw new InvalidCastException();
406 }
407
408 // Token: 0x0600119C RID: 4508 RVA: 0x000258B0 File Offset: 0x00023AB0
410 {
412 if (this._logicalCallContext == null || this.LogicalCallContext.Clone() != null)
413 {
414 }
415 if (this._illogicalCallContext != null)
416 {
418 }
419 ExecutionContext.Flags flags = this._flags;
420 throw new InvalidCastException();
421 }
422
423 // Token: 0x0600119D RID: 4509 RVA: 0x000258FC File Offset: 0x00023AFC
424 public static bool IsFlowSuppressed()
425 {
427 if (executionContext != null)
428 {
430 return;
431 }
432 }
433
434 // Token: 0x0600119E RID: 4510 RVA: 0x00025920 File Offset: 0x00023B20
435 public static ExecutionContext Capture()
436 {
437 if (!true)
438 {
439 }
441 return executionContext;
442 }
443
444 // Token: 0x0600119F RID: 4511 RVA: 0x00025934 File Offset: 0x00023B34
447 {
448 if (!true)
449 {
450 }
452 return executionContext;
453 }
454
455 // Token: 0x060011A0 RID: 4512 RVA: 0x00025948 File Offset: 0x00023B48
457 {
458 /*
459An exception occurred when decompiling this method (060011A0)
460
461ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Threading.ExecutionContext System.Threading.ExecutionContext::Capture(System.Threading.StackCrawlMark,System.Threading.ExecutionContext/CaptureOptions)
462
463 ---> System.Exception: Basic block has to end with unconditional control flow.
464{
465 Block_4:
466 brtrue(IL_0000, ldloc:class System.Collections.Generic.Dictionary`2<class System.Threading.IAsyncLocal, object>[exp:bool](var_7_34))
467}
468
469 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
470 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
471 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
472 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
473 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
474 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
475 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
476 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
477 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
478 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
479 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
480 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
481 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
482 --- End of inner exception stack trace ---
483 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
484 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
485*/;
486 }
487
488 // Token: 0x060011A1 RID: 4513 RVA: 0x000259B4 File Offset: 0x00023BB4
490 {
491 while (info == null)
492 {
493 }
495 if (logicalCallContext != null)
496 {
497 Type type;
498 info.AddValue("LogicalCallContext", logicalCallContext, type);
499 return;
500 }
501 }
502
503 // Token: 0x060011A2 RID: 4514 RVA: 0x000259DC File Offset: 0x00023BDC
505 {
506 SerializationInfoEnumerator enumerator = info.GetEnumerator();
507 bool flag = enumerator.MoveNext();
508 bool flag2 = enumerator.Name.Equals("LogicalCallContext");
509 object value = enumerator.Value;
510 if (value != null)
511 {
513 return;
514 }
515 bool flag3 = enumerator.MoveNext();
516 }
517
518 // Token: 0x060011A3 RID: 4515 RVA: 0x00025A30 File Offset: 0x00023C30
520 {
521 if (this._syncContext == null)
522 {
524 if (logicalCallContext != null)
525 {
527 }
529 if (illogicalCallContext != null)
530 {
532 }
533 }
534 return true;
535 }
536
537 // Token: 0x060011A4 RID: 4516 RVA: 0x00025A6C File Offset: 0x00023C6C
538 // Note: this type is marked as 'beforefieldinit'.
540 {
541 }
542
543 // Token: 0x0400097A RID: 2426
545
546 // Token: 0x0400097B RID: 2427
548
549 // Token: 0x0400097C RID: 2428
551
552 // Token: 0x0400097D RID: 2429
554
555 // Token: 0x0400097E RID: 2430
557
558 // Token: 0x0400097F RID: 2431
560
561 // Token: 0x04000980 RID: 2432
563
564 // Token: 0x04000981 RID: 2433
566
567 // Token: 0x04000982 RID: 2434
569
570 // Token: 0x020001ED RID: 493
571 private enum Flags
572 {
573 // Token: 0x04000984 RID: 2436
574 None,
575 // Token: 0x04000985 RID: 2437
577 // Token: 0x04000986 RID: 2438
579 // Token: 0x04000987 RID: 2439
581 }
582
583 // Token: 0x020001EE RID: 494
584 internal struct Reader
585 {
586 // Token: 0x060011A5 RID: 4517 RVA: 0x00025A7C File Offset: 0x00023C7C
588 {
589 this.m_ec = ec;
590 }
591
592 // Token: 0x060011A6 RID: 4518 RVA: 0x0000207A File Offset: 0x0000027A
594 {
595 throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
596 }
597
598 // Token: 0x170001A9 RID: 425
599 // (get) Token: 0x060011A7 RID: 4519 RVA: 0x0000207A File Offset: 0x0000027A
600 public bool IsNull
601 {
602 get
603 {
604 throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
605 }
606 }
607
608 // Token: 0x060011A8 RID: 4520 RVA: 0x00025A90 File Offset: 0x00023C90
610 {
611 bool flag;
612 return flag;
613 }
614
615 // Token: 0x170001AA RID: 426
616 // (get) Token: 0x060011A9 RID: 4521 RVA: 0x00025AA0 File Offset: 0x00023CA0
618 {
619 get
620 {
621 }
622 }
623
624 // Token: 0x170001AB RID: 427
625 // (get) Token: 0x060011AA RID: 4522 RVA: 0x00025AB0 File Offset: 0x00023CB0
627 {
628 get
629 {
630 }
631 }
632
633 // Token: 0x170001AC RID: 428
634 // (get) Token: 0x060011AB RID: 4523 RVA: 0x0000207A File Offset: 0x0000027A
636 {
637 get
638 {
639 throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
640 }
641 }
642
643 // Token: 0x170001AD RID: 429
644 // (get) Token: 0x060011AC RID: 4524 RVA: 0x0000207A File Offset: 0x0000027A
646 {
647 get
648 {
649 throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
650 }
651 }
652
653 // Token: 0x060011AD RID: 4525 RVA: 0x00025AC0 File Offset: 0x00023CC0
655 {
656 if (other != null)
657 {
659 return;
660 }
661 }
662
663 // Token: 0x04000988 RID: 2440
665 }
666
667 // Token: 0x020001EF RID: 495
668 [Flags]
669 internal enum CaptureOptions
670 {
671 // Token: 0x0400098A RID: 2442
672 None = 0,
673 // Token: 0x0400098B RID: 2443
674 IgnoreSyncCtx = 1,
675 // Token: 0x0400098C RID: 2444
677 }
678 }
679}
class f__AnonymousType0<< Count > j__TPar
IntPtr method_code
Definition Delegate.cs:386
IntPtr invoke_impl
Definition Delegate.cs:371
static string GetResourceString(string key)
static ExecutionContext FastCapture()
static void Run(ExecutionContext executionContext, ContextCallback callback, object state, bool preserveSyncCtx)
IllogicalCallContext _illogicalCallContext
static void RunInternal(ExecutionContext executionContext, ContextCallback callback, object state, bool preserveSyncCtx)
List< IAsyncLocal > _localChangeNotifications
bool IsDefaultFTContext(bool ignoreSyncCtx)
static void EstablishCopyOnWriteScope(ExecutionContextSwitcher ecsw)
static void RunInternal(ExecutionContext executionContext, ContextCallback callback, object state)
static void OnAsyncLocalContextChanged(ExecutionContext previous, ExecutionContext current)
static readonly ExecutionContext Default
static ExecutionContext Capture()
ExecutionContext(SerializationInfo info, StreamingContext context)
static ExecutionContextSwitcher SetExecutionContext(ExecutionContext executionContext, bool preserveSyncCtx)
static void SetLocalValue(IAsyncLocal local, object newValue, bool needChangeNotifications)
SynchronizationContext _syncContextNoFlow
static ExecutionContext Capture(StackCrawlMark stackMark, ExecutionContext.CaptureOptions options)
SynchronizationContext SynchronizationContextNoFlow
static void EstablishCopyOnWriteScope(Thread currentThread, bool knownNullWindowsIdentity, ExecutionContextSwitcher ecsw)
SynchronizationContext _syncContext
Dictionary< IAsyncLocal, object > _localValues
static void Run(ExecutionContext executionContext, ContextCallback callback, object state)
ExecutionContext(bool isPreAllocatedDefault)
static readonly ExecutionContext s_dummyDefaultEC
void GetObjectData(SerializationInfo info, StreamingContext context)
ExecutionContext m_ExecutionContext
Definition Thread.cs:767
static Thread CurrentThread
Definition Thread.cs:381
ExecutionContext GetMutableExecutionContext()
Definition Thread.cs:139
SynchronizationContext SynchronizationContextNoFlow
bool HasSameLocalValues(ExecutionContext other)