// C++ Standard, Section 2.12 "Keywords"
// C++ Standard, Section 2.11 "Identifiers"
.withChannel(new IdentifierAndKeywordChannel(and("[a-zA-Z_]", o2n("\\w")), true, CxxKeyword.values()))
// C++ Standard, Section 2.13 "Operators and punctuators"
.withChannel(new PunctuatorChannel(CxxPunctuator.values()))
.withChannel(new UnknownCharacterChannel());
for (Preprocessor preprocessor : preprocessors) {
builder.withPreprocessor(preprocessor);