13 template<
typename Parser>
19 template<concepts::ParserContext Context,
typename Value = meta::ParserValue<Context, Parser>>
23 return (m_parser.parse(context) |
if_error([&](
auto&&) {
24 context.advance(begin_save);
34 template<concepts::DecayConstructible Parser>
43template<concepts::DecayConstructible Parser>
45constexpr auto operator-(Parser&&
parser) {
Definition parser_base.h:5
constexpr auto parse(Context &context) const -> meta::ParserContextResult< Optional< Value >, Context >
Definition optional.h:21
constexpr OptionalParser(InPlace, P &&parser)
Definition optional.h:17
Definition operations.h:114
constexpr auto begin
Definition begin.h:44
Definition zstring_parser.h:10
Definition zstring_parser.h:9
constexpr auto optional
Definition optional.h:41
constexpr auto if_error
Definition if_error.h:28
constexpr auto in_place
Definition in_place.h:8
constexpr auto operator()(Parser &&parser) const
Definition optional.h:35