...one of the most highly
regarded and expertly designed C++ library projects in the
world.
— Herb Sutter and Andrei
Alexandrescu, C++
Coding Standards
Notation
G
Generator type
g,
a,
b,
c,
d
Generator objects
A,
B,
C,
D
Attribute types of generators a
,
b
, c
, and d
I
The iterator type used for generation
Unused
An unused_type
Context
The enclosing rule's Context
type
attrib
An attribute value
Attrib
An attribute type
b
A boolean expression
B
A type to be interpreted in boolean expressions
fg
A (lazy generator) function with signature G(Unused, Context)
fa
A (semantic action) function with signature void(Attrib&, Context, bool&)
. The third parameter is a boolean
flag that can be set to false to force the generator to fail. Both
Context
and the boolean
flag are optional.
outiter
An output iterator to receive the generated output
Ch
Character-class specific character type (See Character Class Types)
ch,
ch2
Character-class specific character (See Character Class Types)
charset
Character-set specifier string (example: "a-z0-9"
)
str
Character-class specific string (See Character Class Types)
Str
Attribute of str
:
std::basic_string<T>
where T
is the underlying
character type of str
num
Numeric literal, any integer or real number type
Num
Attribute of num
:
any integer or real number type
tuple<>
Used as a placeholder for a fusion sequence
vector<>
Used as a placeholder for an STL container
variant<>
Used as a placeholder for a boost::variant
optional<>
Used as a placeholder for a boost::optional