MCPcopy Create free account
hub / github.com/boostorg/parser / callback_prefix_parse

Function callback_prefix_parse

include/boost/parser/parser.hpp:9665–9696  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

9663 detail::is_equality_comparable_with_v<I, S>>>
9664#endif
9665 bool callback_prefix_parse(
9666 I & first,
9667 S last,
9668 parser_interface<Parser, GlobalState, ErrorHandler> const & parser,
9669 Callbacks const & callbacks,
9670 trace trace_mode = trace::off)
9671 {
9672 if constexpr (!detail::is_char8_iter_v<I>) {
9673 if (trace_mode == trace::on) {
9674 return detail::callback_parse_impl<(
9675 true && BOOST_PARSER_DO_TRACE)>(
9676 first, last, parser, parser.error_handler_, callbacks);
9677 } else {
9678 return detail::callback_parse_impl<false>(
9679 first, last, parser, parser.error_handler_, callbacks);
9680 }
9681 } else {
9682 auto r =
9683 BOOST_PARSER_SUBRANGE(first, last) | detail::text::as_utf32;
9684 auto f = r.begin();
9685 auto const l = r.end();
9686 auto _ = detail::scoped_base_assign(first, f);
9687 if (trace_mode == trace::on) {
9688 return detail::callback_parse_impl<(
9689 true && BOOST_PARSER_DO_TRACE)>(
9690 f, l, parser, parser.error_handler_, callbacks);
9691 } else {
9692 return detail::callback_parse_impl<false>(
9693 f, l, parser, parser.error_handler_, callbacks);
9694 }
9695 }
9696 }
9697
9698 /** Parses `r` using `parser`, and returns whether the parse was
9699 successful. The entire input range `r` must be consumed for the parse

Callers 4

mainFunction · 0.85
mainFunction · 0.85
mainFunction · 0.85
parser.hppFile · 0.85

Calls 3

scoped_base_assignClass · 0.85
beginMethod · 0.45
endMethod · 0.45

Tested by

no test coverage detected