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
KeyValuePairConverter.cs
Go to the documentation of this file.
1using System;
4
6{
7 // Token: 0x020000FC RID: 252
10 {
11 // Token: 0x06000A1D RID: 2589 RVA: 0x00018D6C File Offset: 0x00016F6C
13 {
14 return "Key";
15 }
16
17 // Token: 0x06000A1E RID: 2590 RVA: 0x00018DC8 File Offset: 0x00016FC8
18 public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
19 {
20 if (!true)
21 {
22 }
23 Type type = value.GetType();
24 if (serializer != null)
25 {
26 }
27 }
28
29 // Token: 0x06000A1F RID: 2591 RVA: 0x00018E04 File Offset: 0x00017004
30 public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer)
31 {
32 bool flag = ReflectionUtils.IsNullableType(objectType);
33 reader.ReadAndAssert();
34 bool flag2 = ReflectionUtils.IsNullableType(objectType);
36 reader.ReadAndAssert();
37 Type type;
38 return serializer.Deserialize(reader, type);
39 }
40
41 // Token: 0x06000A20 RID: 2592 RVA: 0x00018EB0 File Offset: 0x000170B0
42 public override bool CanConvert(Type objectType)
43 {
44 /*
45An exception occurred when decompiling this method (06000A20)
46
47ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Boolean Newtonsoft.Json.Converters.KeyValuePairConverter::CanConvert(System.Type)
48
49 ---> System.Exception: Basic block has to end with unconditional control flow.
50{
51 IL_0003:
52 stloc:bool(var_0_09, call:bool(ReflectionUtils::IsNullableType, ldloc:Type(objectType)))
53 stloc:Type(var_1_10, call:Type(Nullable::GetUnderlyingType, ldloc:Type(objectType)))
54 stloc:bool(var_2_17, call:bool(TypeExtensions::IsValueType, ldloc:Type(var_1_10)))
55 stloc:bool(var_3_1E, call:bool(TypeExtensions::IsGenericType, ldloc:Type(var_1_10)))
56}
57
58 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
59 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
60 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
61 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
62 --- End of inner exception stack trace ---
63 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
64 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
65*/;
66 }
67
68 // Token: 0x06000A21 RID: 2593 RVA: 0x00018EE0 File Offset: 0x000170E0
70 {
71 }
72
73 // Token: 0x06000A22 RID: 2594 RVA: 0x00018EF4 File Offset: 0x000170F4
74 // Note: this type is marked as 'beforefieldinit'.
76 {
77 }
78
79 // Token: 0x040003F6 RID: 1014
80 private const string KeyName = "Key";
81
82 // Token: 0x040003F7 RID: 1015
83 private const string ValueName = "Value";
84
85 // Token: 0x040003F8 RID: 1016
87 }
88}
class f__AnonymousType0<< Count > j__TPar
static readonly ThreadSafeStore< Type, ReflectionObject > ReflectionObjectPerType
override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
static ReflectionObject InitializeReflectionObject(Type t)
override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer)
static Type GetUnderlyingType(Type nullableType)
Definition Nullable.2.cs:9
new Type GetType()
Definition Type.cs:287