/* Classes */
builder.withSquidAstVisitor(new SourceCodeBuilderVisitor<Grammar>(new SourceCodeBuilderCallback() {
public SourceCode createSourceCode(SourceCode parentSourceCode, AstNode astNode) {
AstNode classNameAst = astNode.getFirstDescendant(CxxGrammarImpl.className);
String className = classNameAst == null ? "" : classNameAst.getFirstChild().getTokenValue();
SourceClass cls = new SourceClass(className + ":" + astNode.getToken().getLine(), className);
cls.setStartAtLine(astNode.getTokenLine());
return cls;
}
}, CxxGrammarImpl.classSpecifier));
builder.withSquidAstVisitor(CounterVisitor.<Grammar> builder()