Match a rule, or the empty string
Synopsis
template<Rule R>
constexpr
/* implementation-defined */
optional_rule(R const& r);
Description
Optional BNF elements are denoted with square brackets. If the specified rule returns any error it is treated as if the rule did not match.
Value Type
using value_type = optional< typename Rule::value_type >;
Example
Rules are used with the function grammar::parse
.
system::result< optional< core::string_view > > rv = parse( "", optional_rule( token_rule( alpha_chars ) ) );
BNF
optional = [ rule ]
Return Value
The adapted rule
Parameters
Name |
Description |
r |
The rule to match |
See Also
alpha_chars
, parse
, optional
, token_rule
.
Created with MrDocs