| 893 | } |
| 894 | |
| 895 | ParserBuilder* ParserBuilder::lua_or (ParserFunctor *other1, ParserFunctor *other2, |
| 896 | ParserFunctor *other3, ParserFunctor *other4) |
| 897 | { |
| 898 | if (_result) |
| 899 | _result = _ctx-> p_or (_result, other1); |
| 900 | else |
| 901 | _result = other1; |
| 902 | if (other2) |
| 903 | _result = _ctx-> p_or (_result, other2); |
| 904 | if (other3) |
| 905 | _result = _ctx-> p_or (_result, other3); |
| 906 | if (other4) |
| 907 | _result = _ctx-> p_or (_result, other4); |
| 908 | return this; |
| 909 | } |
| 910 | |
| 911 | ParseResult FailureParserFunctor::tryParse(Input &input, size_t skip_end_size, bool optional) { |
| 912 | _ctx->set_last_match_token(input.read()); |