The list operator,
a % b,
is a binary operator that matches a list of one or more repetitions of
a separated by occurrences
b. This is equivalent
// forwards to <boost/spirit/home/qi/operator/list.hpp> #include <boost/spirit/include/qi_list.hpp>
Also, see Include Structure.
Semantics of an expression is defined only where it differs from, or
is not defined in
Match a list of one or more repetitions of
a: A, b: B --> (a % b): vector<A> a: Unused, b: B --> (a % b): Unused
The overall complexity of the List is defined by the complexity of its subject,
a, multiplied by the number of repetitions. The complexity of the List itself is O(N), where N is the number successful repetitions.
The test harness for the example(s) below is presented in the Basics Examples section.
Some using declarations:
Parse a comma separated list of numbers and put them in a vector:
std::vector<int> attr; test_phrase_parser_attr( "111, 222, 333, 444, 555", int_ % ',', attr); std::cout << attr << ',' << attr << ',' << attr << ',' << attr << ',' << attr << std::endl;