[#boost-urls-grammar-not_empty_rule] = xref:boost.adoc[boost]::xref:boost/urls.adoc[urls]::xref:boost/urls/grammar.adoc[grammar]::not_empty_rule :relfileprefix: ../../../ :mrdocs: Match another rule, if the result is not empty == Synopsis Declared in `<https://www.github.com/boostorg/url/blob/develop/include/boost/url/grammar/not_empty_rule.hpp#L71[boost/url/grammar/not_empty_rule.hpp]>` [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- template<xref:boost/urls/grammar/Rule.adoc[Rule] R> constexpr /* implementation-defined */::xref:boost/urls/grammar/implementation_defined/not_empty_rule_t.adoc[not_empty_rule_t]<R> not_empty_rule(R const& r); ---- == Description This adapts another rule such that when an empty string is successfully parsed, the result is an error. === Value Type [,cpp] ---- using value_type = typename Rule::value_type; ---- === Example Rules are used with the function xref:boost/urls/grammar/parse-02.adoc[parse]. [,cpp] ---- system::result< decode_view > rv = parse( "Program%20Files", not_empty_rule( pct_encoded_rule( unreserved_chars ) ) ); ---- == Parameters |=== | Name | Description | *r* | The rule to match |=== == See Also xref:boost/urls/grammar/parse-02.adoc[parse], xref:boost/urls/pct_encoded_rule.adoc[pct_encoded_rule], xref:boost/urls/unreserved_chars.adoc[unreserved_chars]. [.small]#Created with https://www.mrdocs.com[MrDocs]#