| 781 | } |
| 782 | |
| 783 | static bool |
| 784 | parser_parse_object(parser_t *parser) { |
| 785 | assert_d_eq(parser->token.token_type, TOKEN_TYPE_LBRACE, |
| 786 | "Object should start with {"); |
| 787 | if (parser_tokenize(parser)) { |
| 788 | return true; |
| 789 | } |
| 790 | switch (parser->token.token_type) { |
| 791 | case TOKEN_TYPE_STRING: |
| 792 | return parser_parse_pairs(parser); |
| 793 | case TOKEN_TYPE_RBRACE: |
| 794 | return false; |
| 795 | default: |
| 796 | return true; |
| 797 | } |
| 798 | not_reached(); |
| 799 | } |
| 800 | |
| 801 | static bool |
| 802 | parser_parse(parser_t *parser) { |
no test coverage detected