| 416 | |
| 417 | template<class Stream> |
| 418 | bool JsonSkipper<Stream>::SkipValue() { |
| 419 | // Please note that in standard JSON, the special values null, true, and false must all |
| 420 | // be in lowercase form. Any other cases will be considered invalid values, which is |
| 421 | // consistent with the behavior of rapidjson. |
| 422 | switch (s_.Peek()) { |
| 423 | case 'n': RETURN_IF_FALSE(SkipNull()); break; |
| 424 | case 't': RETURN_IF_FALSE(SkipTrue()); break; |
| 425 | case 'f': RETURN_IF_FALSE(SkipFalse()); break; |
| 426 | case '"': RETURN_IF_FALSE(SkipString()); break; |
| 427 | case '{': RETURN_IF_FALSE(SkipObject()); break; |
| 428 | case '[': RETURN_IF_FALSE(SkipArray()); break; |
| 429 | default: RETURN_IF_FALSE(SkipNumber()); break; |
| 430 | } |
| 431 | return true; |
| 432 | } |
| 433 | |
| 434 | template class impala::JsonParser<SimpleJsonScanner>; |
| 435 | template class impala::JsonParser<HdfsJsonScanner>; |