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
HashSetConverter.cs
Go to the documentation of this file.
1using System;
4
6{
7 // Token: 0x020000FB RID: 251
9 {
10 // Token: 0x06000A18 RID: 2584 RVA: 0x00018CC0 File Offset: 0x00016EC0
11 public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
12 {
13 }
14
15 // Token: 0x06000A19 RID: 2585 RVA: 0x00018CD0 File Offset: 0x00016ED0
16 public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer)
17 {
18 if (existingValue != null)
19 {
20 }
21 object obj = Activator.CreateInstance(objectType);
22 MethodInfo method = objectType.GetMethod("Add");
23 JArray jarray = JArray.Load(reader);
24 int count = jarray.Count;
25 long num = 0L;
26 JsonReader jsonReader = jarray[(int)num].CreateReader();
27 object obj2;
28 if (obj2 == null || obj2 != null)
29 {
30 int count2 = jarray.Count;
31 return obj;
32 }
34 }
35
36 // Token: 0x06000A1A RID: 2586 RVA: 0x00018D30 File Offset: 0x00016F30
37 public override bool CanConvert(Type objectType)
38 {
39 /*
40An exception occurred when decompiling this method (06000A1A)
41
42ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Boolean Newtonsoft.Json.Converters.HashSetConverter::CanConvert(System.Type)
43
44 ---> System.Exception: Basic block has to end with unconditional control flow.
45{
46 Block_0:
47 stloc:bool(var_0_06, call:bool(TypeExtensions::IsGenericType, ldloc:Type(objectType)))
48}
49
50 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
51 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
52 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
53 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
54 --- End of inner exception stack trace ---
55 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
56 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
57*/;
58 }
59
60 // Token: 0x170001CE RID: 462
61 // (get) Token: 0x06000A1B RID: 2587 RVA: 0x00018D48 File Offset: 0x00016F48
62 public override bool CanWrite
63 {
64 get
65 {
66 }
67 }
68
69 // Token: 0x06000A1C RID: 2588 RVA: 0x00018D58 File Offset: 0x00016F58
71 {
72 }
73 }
74}
class f__AnonymousType0<< Count > j__TPar
override bool CanConvert(Type objectType)
override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer)
override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
static new JArray Load(JsonReader reader)
Definition JArray.cs:89
static object CreateInstance(Type type, BindingFlags bindingAttr, Binder binder, object[] args, CultureInfo culture)
Definition Activator.cs:15
MethodInfo GetMethod(string name)
Definition Type.cs:945