...one of the most highly
regarded and expertly designed C++ library projects in the
world.
— Herb Sutter and Andrei
Alexandrescu, C++
Coding Standards
Spirit.Karma generators fall into a couple of generalized concepts. The Generator is the most fundamental concept. All Spirit.Karma generators are models of the Generator concept. PrimitiveGenerator, UnaryGenerator, BinaryGenerator, NaryGenerator, and Nonterminal are all refinements of the Generator concept.
The following sections provide details on these concepts.