| 525 | } |
| 526 | |
| 527 | template <typename Context, typename Iter> bool _parse_array(Context &ctx, input<Iter> &in) |
| 528 | { |
| 529 | if (!ctx.parse_array_start()) { |
| 530 | return false; |
| 531 | } |
| 532 | size_t idx = 0; |
| 533 | if (in.expect(']')) { |
| 534 | return ctx.parse_array_stop(idx); |
| 535 | } |
| 536 | do { |
| 537 | if (!ctx.parse_array_item(in, idx)) { |
| 538 | return false; |
| 539 | } |
| 540 | idx++; |
| 541 | } while (in.expect(',')); |
| 542 | return in.expect(']') && ctx.parse_array_stop(idx); |
| 543 | } |
| 544 | |
| 545 | template <typename Context, typename Iter> bool _parse_object(Context &ctx, input<Iter> &in) |
| 546 | { |
no test coverage detected