private JsonToken(JsonToken.TokenType type, string stringValue = null, double numberValue = 0.0) { while (true) { IL_5A: uint arg_3E_0 = 2482964016u; while (true) { uint num; switch ((num = (arg_3E_0 ^ 3449118601u)) % 4u) { case 0u: this.numberValue = numberValue; arg_3E_0 = (num * 3564385074u ^ 1989645462u); continue; case 1u: this.type = type; this.stringValue = stringValue; arg_3E_0 = (num * 2560805287u ^ 1189576714u); continue; case 2u: goto IL_5A; } return; } } }
private static void EnsureTokenType(JsonToken.TokenType tokenType, JsonToken.TokenType expectToken) { if ((tokenType & expectToken) == 0) { ThrowHelper.Throw(string.Format("Parse error, invalid Token. expectToken = {0} but get = {1}", expectToken, tokenType)); } }
private void Match(JsonToken.TokenType jtExpected) { if (jtExpected == m_jtCurToken.Type) { m_jtCurToken = m_jtTokenizer.GetNextToken(); } else { throw new ApplicationException("Expected " + jtExpected.ToString() + ", got " + m_jtCurToken.Type.ToString()); } }
private static JsonArray ParseAsArray(Queue <JsonToken> tokens) { JsonArray jsonArray = new JsonArray(); JsonToken.TokenType expectedToken = JsonToken.TokenType.BeginArray | JsonToken.TokenType.EndArray | JsonToken.TokenType.BeginObject | JsonToken.TokenType.Null | JsonToken.TokenType.Number | JsonToken.TokenType.Boolean | JsonToken.TokenType.String; while (tokens.Count > 0) { JsonToken jsonToken = tokens.Dequeue(); JsonToken.TokenType tokenType = jsonToken.tokenType; switch (tokenType) { case JsonToken.TokenType.BeginObject: EnsureTokenType(tokenType, expectedToken); JsonObject embeddedJsonObject = ParseAsObject(tokens); jsonArray.Add(embeddedJsonObject); expectedToken = JsonToken.TokenType.SepComma | JsonToken.TokenType.EndArray; break; case JsonToken.TokenType.BeginArray: EnsureTokenType(tokenType, expectedToken); JsonArray embeddedJsonArray = ParseAsArray(tokens); jsonArray.Add(embeddedJsonArray); expectedToken = JsonToken.TokenType.SepComma | JsonToken.TokenType.EndArray; break; case JsonToken.TokenType.EndArray: EnsureTokenType(tokenType, expectedToken); return(jsonArray); case JsonToken.TokenType.Null: EnsureTokenType(tokenType, expectedToken); jsonArray.Add(jsonToken.Value); expectedToken = JsonToken.TokenType.SepComma | JsonToken.TokenType.EndArray; break; case JsonToken.TokenType.Number: EnsureTokenType(tokenType, expectedToken); jsonArray.Add(jsonToken.Value); expectedToken = JsonToken.TokenType.SepComma | JsonToken.TokenType.EndArray; break; case JsonToken.TokenType.Boolean: EnsureTokenType(tokenType, expectedToken); jsonArray.Add(jsonToken.Value); expectedToken = JsonToken.TokenType.SepComma | JsonToken.TokenType.EndArray; break; case JsonToken.TokenType.String: EnsureTokenType(tokenType, expectedToken); jsonArray.Add(jsonToken.Value); expectedToken = JsonToken.TokenType.SepComma | JsonToken.TokenType.EndArray; break; case JsonToken.TokenType.SepComma: EnsureTokenType(tokenType, expectedToken); expectedToken = JsonToken.TokenType.String | JsonToken.TokenType.Null | JsonToken.TokenType.Number | JsonToken.TokenType.Boolean | JsonToken.TokenType.BeginArray | JsonToken.TokenType.BeginObject; break; default: ThrowHelper.Throw("Unexpected Token."); break; } } ThrowHelper.Throw("Parse error, invalid Token."); return(null); }
private static JsonObject ParseAsObject(Queue <JsonToken> tokens) { JsonObject jsonObject = new JsonObject(); JsonToken.TokenType expectedToken = JsonToken.TokenType.String | JsonToken.TokenType.EndObject; string key = null; while (tokens.Count > 0) { JsonToken jsonToken = tokens.Dequeue(); JsonToken.TokenType tokenType = jsonToken.tokenType; switch (tokenType) { case JsonToken.TokenType.BeginObject: EnsureTokenType(tokenType, expectedToken); JsonObject embeddedJO = ParseAsObject(tokens); SafeAddValue(jsonObject, ref key, embeddedJO); expectedToken = JsonToken.TokenType.SepComma | JsonToken.TokenType.EndObject; break; case JsonToken.TokenType.EndObject: EnsureTokenType(tokenType, expectedToken); return(jsonObject); case JsonToken.TokenType.BeginArray: EnsureTokenType(tokenType, expectedToken); JsonArray embeddedArray = ParseAsArray(tokens); jsonObject.Add(key, embeddedArray); key = null; expectedToken = JsonToken.TokenType.SepComma | JsonToken.TokenType.EndObject; break; case JsonToken.TokenType.Null: EnsureTokenType(tokenType, expectedToken); SafeAddValue(jsonObject, ref key, jsonToken.Value); expectedToken = JsonToken.TokenType.SepComma | JsonToken.TokenType.EndObject; break; case JsonToken.TokenType.Number: EnsureTokenType(tokenType, expectedToken); SafeAddValue(jsonObject, ref key, jsonToken.Value); expectedToken = JsonToken.TokenType.SepComma | JsonToken.TokenType.EndObject; break; case JsonToken.TokenType.Boolean: EnsureTokenType(tokenType, expectedToken); SafeAddValue(jsonObject, ref key, jsonToken.Value); expectedToken = JsonToken.TokenType.SepComma | JsonToken.TokenType.EndObject; break; case JsonToken.TokenType.String: EnsureTokenType(tokenType, expectedToken); if (key != null) { SafeAddValue(jsonObject, ref key, jsonToken.Value); expectedToken = JsonToken.TokenType.SepComma | JsonToken.TokenType.EndObject; } else { key = jsonToken.Value.GetStringValue(); expectedToken = JsonToken.TokenType.SepColon; } break; case JsonToken.TokenType.SepColon: EnsureTokenType(tokenType, expectedToken); expectedToken = JsonToken.TokenType.Null | JsonToken.TokenType.Number | JsonToken.TokenType.Boolean | JsonToken.TokenType.String | JsonToken.TokenType.BeginObject | JsonToken.TokenType.BeginArray; break; case JsonToken.TokenType.SepComma: EnsureTokenType(tokenType, expectedToken); expectedToken = JsonToken.TokenType.String; break; default: ThrowHelper.Throw("unhandled token type" + tokenType); break; } } ThrowHelper.Throw("object not closed!"); return(null); }
public JsonToken(string sInitText, JsonToken.TokenType jtInitType) { m_jtType = jtInitType; m_sText = sInitText; }
public void SetGoal(JsonToken.TokenType type) { GoalType = type; GoalExternalySet = true; }
public override string ToString() { JsonToken.TokenType tokenType = this.type; while (true) { IL_AB: uint arg_5F_0 = 2682264506u; while (true) { uint num; switch ((num = (arg_5F_0 ^ 4241128215u)) % 15u) { case 0u: goto IL_C8; case 1u: goto IL_BD; case 2u: goto IL_E8; case 3u: goto IL_B2; case 4u: arg_5F_0 = (num * 3627266443u ^ 1115301066u); continue; case 5u: switch (tokenType) { case JsonToken.TokenType.Null: goto IL_B2; case JsonToken.TokenType.False: goto IL_144; case JsonToken.TokenType.True: goto IL_BD; case JsonToken.TokenType.StringValue: goto IL_16F; case JsonToken.TokenType.Number: goto IL_F3; case JsonToken.TokenType.Name: goto IL_C8; case JsonToken.TokenType.StartObject: goto IL_123; case JsonToken.TokenType.EndObject: goto IL_139; case JsonToken.TokenType.StartArray: goto IL_12E; case JsonToken.TokenType.EndArray: goto IL_E8; case JsonToken.TokenType.EndDocument: goto IL_118; default: arg_5F_0 = (num * 2433619620u ^ 3405509361u); continue; } break; case 6u: goto IL_AB; case 7u: goto IL_F3; case 8u: goto IL_118; case 9u: goto IL_123; case 10u: goto IL_12E; case 11u: goto IL_139; case 12u: goto IL_144; case 14u: goto IL_16F; } goto Block_2; } } Block_2: goto IL_14F; IL_B2: return(Module.smethod_34 <string>(854952751u)); IL_BD: return(Module.smethod_33 <string>(2183097496u)); IL_C8: return(JsonToken.smethod_2(Module.smethod_35 <string>(2827822917u), this.stringValue, Module.smethod_36 <string>(472157920u))); IL_E8: return(Module.smethod_36 <string>(1155181364u)); IL_F3: return(JsonToken.smethod_3(Module.smethod_34 <string>(1106698670u), this.numberValue, Module.smethod_33 <string>(4291034649u))); IL_118: return(Module.smethod_34 <string>(985298691u)); IL_123: return(Module.smethod_34 <string>(2110138035u)); IL_12E: return(Module.smethod_33 <string>(3370785385u)); IL_139: return(Module.smethod_34 <string>(891562079u)); IL_144: return(Module.smethod_34 <string>(1042425975u)); IL_14F: throw JsonToken.smethod_4(JsonToken.smethod_0(Module.smethod_34 <string>(1266508527u), this.type)); IL_16F: return(JsonToken.smethod_2(Module.smethod_35 <string>(743299430u), this.stringValue, Module.smethod_37 <string>(988941460u))); }