parse terminal
| 502 | |
| 503 | // parse terminal |
| 504 | virtual bool parse_term(_context& con) const override { |
| 505 | // if parsing of the first fails, restore the context and stop |
| 506 | _state st(con); |
| 507 | if (!m_expr->parse_term(con)) { |
| 508 | con.restore(st); |
| 509 | return true; |
| 510 | } |
| 511 | |
| 512 | // parse the rest until no more parsing is possible |
| 513 | for (;;) { |
| 514 | _state st(con); |
| 515 | if (!m_expr->parse_term(con)) { |
| 516 | con.restore(st); |
| 517 | break; |
| 518 | } |
| 519 | } |
| 520 | |
| 521 | return true; |
| 522 | } |
| 523 | }; |
| 524 | |
| 525 | // loop 1 |
nothing calls this directly
no test coverage detected