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
DateTimeParser.cs
Go to the documentation of this file.
1using System;
4
6{
7 // Token: 0x0200003F RID: 63
9 internal struct DateTimeParser
10 {
11 // Token: 0x060002AF RID: 687 RVA: 0x0000873C File Offset: 0x0000693C
13 {
14 }
15
16 // Token: 0x060002B0 RID: 688 RVA: 0x0000874C File Offset: 0x0000694C
17 public bool Parse(char[] text, int startIndex, int length)
18 {
19 /*
20An exception occurred when decompiling this method (060002B0)
21
22ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Boolean Newtonsoft.Json.Utilities.DateTimeParser::Parse(System.Char[],System.Int32,System.Int32)
23
24 ---> System.Exception: Basic block has to end with unconditional control flow.
25{
26 IL_001B:
27 stloc:int32(var_2_21, ldfld:int32(DateTimeParser::_end, ldloc:valuetype Newtonsoft.Json.Utilities.DateTimeParser&(this)))
28 stloc:char[](var_3_28, ldfld:char[](DateTimeParser::_text, ldloc:valuetype Newtonsoft.Json.Utilities.DateTimeParser&(this)))
29 stloc:bool(var_4_30, call:bool(DateTimeParser::ParseTimeAndZoneAndWhitespace, ldloc:valuetype Newtonsoft.Json.Utilities.DateTimeParser&(this), ldloc:int32(startIndex)))
30}
31
32 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
33 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
34 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
35 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
36 --- End of inner exception stack trace ---
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 92
38 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
39*/;
40 }
41
42 // Token: 0x060002B1 RID: 689 RVA: 0x00008790 File Offset: 0x00006990
43 private bool ParseDate(int start)
44 {
45 /*
46An exception occurred when decompiling this method (060002B1)
47
48ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Boolean Newtonsoft.Json.Utilities.DateTimeParser::ParseDate(System.Int32)
49
50 ---> System.Exception: Basic block has to end with unconditional control flow.
51{
52 IL_0003:
53 stloc:int32(var_1_09, ldfld:int32(DateTimeParser::_end, ldloc:valuetype Newtonsoft.Json.Utilities.DateTimeParser&(this)))
54 stloc:char[](var_2_10, ldfld:char[](DateTimeParser::_text, ldloc:valuetype Newtonsoft.Json.Utilities.DateTimeParser&(this)))
55 stloc:char[](var_3_17, ldfld:char[](DateTimeParser::_text, ldloc:valuetype Newtonsoft.Json.Utilities.DateTimeParser&(this)))
56 stloc:int32(var_4_1E, ldfld:int32(DateTimeParser::_end, ldloc:valuetype Newtonsoft.Json.Utilities.DateTimeParser&(this)))
57 stloc:char[](var_5_26, ldfld:char[](DateTimeParser::_text, ldloc:valuetype Newtonsoft.Json.Utilities.DateTimeParser&(this)))
58 stloc:int32(var_6_2E, ldfld:int32(DateTimeParser::_end, ldloc:valuetype Newtonsoft.Json.Utilities.DateTimeParser&(this)))
59 stloc:char[](var_7_36, ldfld:char[](DateTimeParser::_text, ldloc:valuetype Newtonsoft.Json.Utilities.DateTimeParser&(this)))
60 stloc:int32(var_8_3E, ldfld:int32(DateTimeParser::Year, ldloc:valuetype Newtonsoft.Json.Utilities.DateTimeParser&(this)))
61 stloc:int32(var_9_46, ldfld:int32(DateTimeParser::Day, ldloc:valuetype Newtonsoft.Json.Utilities.DateTimeParser&(this)))
62 stloc:int32(var_10_51, call:int32(DateTime::DaysInMonth, ldloc:int32(var_8_3E), ldloc:int32(var_9_46)))
63}
64
65 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
66 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
67 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
68 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
69 --- End of inner exception stack trace ---
70 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
71 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
72*/;
73 }
74
75 // Token: 0x060002B2 RID: 690 RVA: 0x000087F8 File Offset: 0x000069F8
77 {
78 bool flag = this.ParseTime(start);
79 return this.ParseZone(start);
80 }
81
82 // Token: 0x060002B3 RID: 691 RVA: 0x00008818 File Offset: 0x00006A18
83 private bool ParseTime(int start)
84 {
85 /*
86An exception occurred when decompiling this method (060002B3)
87
88ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Boolean Newtonsoft.Json.Utilities.DateTimeParser::ParseTime(System.Int32)
89
90 ---> System.Exception: Basic block has to end with unconditional control flow.
91{
92 IL_00D6:
93 stloc:int32(var_23_DC, ldfld:int32(DateTimeParser::Hour, ldloc:valuetype Newtonsoft.Json.Utilities.DateTimeParser&(this)))
94 brtrue(IL_0000, ldfld:int32[exp:bool](DateTimeParser::Fraction, ldloc:valuetype Newtonsoft.Json.Utilities.DateTimeParser&(this)))
95}
96
97 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
98 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
99 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
100 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
101 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
102 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
103 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
104 --- End of inner exception stack trace ---
105 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
106 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
107*/;
108 }
109
110 // Token: 0x060002B4 RID: 692 RVA: 0x00008910 File Offset: 0x00006B10
111 private bool ParseZone(int start)
112 {
113 /*
114An exception occurred when decompiling this method (060002B4)
115
116ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Boolean Newtonsoft.Json.Utilities.DateTimeParser::ParseZone(System.Int32)
117
118 ---> System.Exception: Basic block has to end with unconditional control flow.
119{
120 IL_0021:
121 stloc:char[](var_4_27, ldfld:char[](DateTimeParser::_text, ldloc:valuetype Newtonsoft.Json.Utilities.DateTimeParser&(this)))
122 stfld:int32(DateTimeParser::ZoneHour, ldloc:valuetype Newtonsoft.Json.Utilities.DateTimeParser&(this), ldloc:char[][exp:int32](var_4_27))
123 stloc:int32(var_6_3B, ldfld:int32(DateTimeParser::_end, ldloc:valuetype Newtonsoft.Json.Utilities.DateTimeParser&(this)))
124 stloc:char[](var_7_43, ldfld:char[](DateTimeParser::_text, ldloc:valuetype Newtonsoft.Json.Utilities.DateTimeParser&(this)))
125 stfld:int32(DateTimeParser::ZoneMinute, ldloc:valuetype Newtonsoft.Json.Utilities.DateTimeParser&(this), ldloc:char[][exp:int32](var_7_43))
126 stfld:int32(DateTimeParser::ZoneMinute, ldloc:valuetype Newtonsoft.Json.Utilities.DateTimeParser&(this), ldloc:int32(var_2_0F))
127 stloc:int32(var_8_55, ldc.i4:int32(3))
128 stfld:ParserTimeZone(DateTimeParser::Zone, ldloc:valuetype Newtonsoft.Json.Utilities.DateTimeParser&(this), ldloc:int32[exp:ParserTimeZone](var_8_55))
129 brtrue(IL_0000, ldloc:int32[exp:bool](var_8_55))
130}
131
132 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
133 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
134 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
135 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
136 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
137 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
138 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
139 --- End of inner exception stack trace ---
140 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
141 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
142*/;
143 }
144
145 // Token: 0x060002B5 RID: 693 RVA: 0x00008980 File Offset: 0x00006B80
146 private bool Parse4Digit(int start, [Out] int num)
147 {
148 /*
149An exception occurred when decompiling this method (060002B5)
150
151ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Boolean Newtonsoft.Json.Utilities.DateTimeParser::Parse4Digit(System.Int32,System.Int32)
152
153 ---> System.Exception: Basic block has to end with unconditional control flow.
154{
155 Block_0:
156 stloc:int32(var_0_06, ldfld:int32(DateTimeParser::_end, ldloc:valuetype Newtonsoft.Json.Utilities.DateTimeParser&(this)))
157 stloc:char[](var_1_0D, ldfld:char[](DateTimeParser::_text, ldloc:valuetype Newtonsoft.Json.Utilities.DateTimeParser&(this)))
158 stloc:int64(var_3_11, ldc.i4:int64(0))
159 stfld:int32(int32::m_value, ldloc:int32[exp:int32&](num), ldloc:int64[exp:int32](var_3_11))
160}
161
162 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
163 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
164 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
165 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
166 --- End of inner exception stack trace ---
167 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
168 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
169*/;
170 }
171
172 // Token: 0x060002B6 RID: 694 RVA: 0x000089A8 File Offset: 0x00006BA8
173 private bool Parse2Digit(int start, [Out] int num)
174 {
175 /*
176An exception occurred when decompiling this method (060002B6)
177
178ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Boolean Newtonsoft.Json.Utilities.DateTimeParser::Parse2Digit(System.Int32,System.Int32)
179
180 ---> System.Exception: Basic block has to end with unconditional control flow.
181{
182 Block_0:
183 stloc:int32(var_0_06, ldfld:int32(DateTimeParser::_end, ldloc:valuetype Newtonsoft.Json.Utilities.DateTimeParser&(this)))
184 stloc:char[](var_1_0D, ldfld:char[](DateTimeParser::_text, ldloc:valuetype Newtonsoft.Json.Utilities.DateTimeParser&(this)))
185 stloc:int64(var_3_11, ldc.i4:int64(0))
186 stfld:int32(int32::m_value, ldloc:int32[exp:int32&](num), ldloc:int64[exp:int32](var_3_11))
187}
188
189 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
190 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
191 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
192 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
193 --- End of inner exception stack trace ---
194 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
195 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
196*/;
197 }
198
199 // Token: 0x060002B7 RID: 695 RVA: 0x000089D0 File Offset: 0x00006BD0
200 private bool ParseChar(int start, char ch)
201 {
202 /*
203An exception occurred when decompiling this method (060002B7)
204
205ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Boolean Newtonsoft.Json.Utilities.DateTimeParser::ParseChar(System.Int32,System.Char)
206
207 ---> System.Exception: Basic block has to end with unconditional control flow.
208{
209 Block_0:
210 stloc:int32(var_0_06, ldfld:int32(DateTimeParser::_end, ldloc:valuetype Newtonsoft.Json.Utilities.DateTimeParser&(this)))
211 stloc:char[](var_1_0D, ldfld:char[](DateTimeParser::_text, ldloc:valuetype Newtonsoft.Json.Utilities.DateTimeParser&(this)))
212}
213
214 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
215 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
216 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
217 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
218 --- End of inner exception stack trace ---
219 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
220 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
221*/;
222 }
223
224 // Token: 0x04000156 RID: 342
225 public int Year;
226
227 // Token: 0x04000157 RID: 343
228 public int Month;
229
230 // Token: 0x04000158 RID: 344
231 public int Day;
232
233 // Token: 0x04000159 RID: 345
234 public int Hour;
235
236 // Token: 0x0400015A RID: 346
237 public int Minute;
238
239 // Token: 0x0400015B RID: 347
240 public int Second;
241
242 // Token: 0x0400015C RID: 348
243 public int Fraction;
244
245 // Token: 0x0400015D RID: 349
246 public int ZoneHour;
247
248 // Token: 0x0400015E RID: 350
249 public int ZoneMinute;
250
251 // Token: 0x0400015F RID: 351
253
254 // Token: 0x04000160 RID: 352
255 private char[] _text;
256
257 // Token: 0x04000161 RID: 353
258 private int _end;
259
260 // Token: 0x04000162 RID: 354
261 private static readonly int[] Power10;
262
263 // Token: 0x04000163 RID: 355
264 private static readonly int Lzyyyy;
265
266 // Token: 0x04000164 RID: 356
267 private static readonly int Lzyyyy_;
268
269 // Token: 0x04000165 RID: 357
270 private static readonly int Lzyyyy_MM;
271
272 // Token: 0x04000166 RID: 358
273 private static readonly int Lzyyyy_MM_;
274
275 // Token: 0x04000167 RID: 359
276 private static readonly int Lzyyyy_MM_dd;
277
278 // Token: 0x04000168 RID: 360
279 private static readonly int Lzyyyy_MM_ddT;
280
281 // Token: 0x04000169 RID: 361
282 private static readonly int LzHH;
283
284 // Token: 0x0400016A RID: 362
285 private static readonly int LzHH_;
286
287 // Token: 0x0400016B RID: 363
288 private static readonly int LzHH_mm;
289
290 // Token: 0x0400016C RID: 364
291 private static readonly int LzHH_mm_;
292
293 // Token: 0x0400016D RID: 365
294 private static readonly int LzHH_mm_ss;
295
296 // Token: 0x0400016E RID: 366
297 private static readonly int Lz_;
298
299 // Token: 0x0400016F RID: 367
300 private static readonly int Lz_zz;
301
302 // Token: 0x04000170 RID: 368
303 private const short MaxFractionDigits = 7;
304 }
305}
class f__AnonymousType0<< Count > j__TPar
bool Parse2Digit(int start, [Out] int num)
bool Parse4Digit(int start, [Out] int num)
bool Parse(char[] text, int startIndex, int length)