Search in sources :

Example 1 with TokenTypeDecl

use of org.antlr.v4.codegen.model.decl.TokenTypeDecl in project antlr4 by antlr.

the class Choice method addCodeForLookaheadTempVar.

public TestSetInline addCodeForLookaheadTempVar(IntervalSet look) {
    List<SrcOp> testOps = factory.getLL1Test(look, ast);
    TestSetInline expr = Utils.find(testOps, TestSetInline.class);
    if (expr != null) {
        Decl d = new TokenTypeDecl(factory, expr.varName);
        factory.getCurrentRuleFunction().addLocalDecl(d);
        CaptureNextTokenType nextType = new CaptureNextTokenType(factory, expr.varName);
        addPreambleOp(nextType);
    }
    return expr;
}
Also used : TokenTypeDecl(org.antlr.v4.codegen.model.decl.TokenTypeDecl) Decl(org.antlr.v4.codegen.model.decl.Decl) TokenTypeDecl(org.antlr.v4.codegen.model.decl.TokenTypeDecl)

Example 2 with TokenTypeDecl

use of org.antlr.v4.codegen.model.decl.TokenTypeDecl in project antlr4 by tunnelvisionlabs.

the class Choice method addCodeForLookaheadTempVar.

public TestSetInline addCodeForLookaheadTempVar(IntervalSet look) {
    List<SrcOp> testOps = factory.getLL1Test(look, ast);
    TestSetInline expr = Utils.find(testOps, TestSetInline.class);
    if (expr != null) {
        Decl d = new TokenTypeDecl(factory, expr.varName);
        factory.getCurrentRuleFunction().addLocalDecl(d);
        CaptureNextTokenType nextType = new CaptureNextTokenType(factory, expr.varName);
        addPreambleOp(nextType);
    }
    return expr;
}
Also used : TokenTypeDecl(org.antlr.v4.codegen.model.decl.TokenTypeDecl) Decl(org.antlr.v4.codegen.model.decl.Decl) TokenTypeDecl(org.antlr.v4.codegen.model.decl.TokenTypeDecl)

Aggregations

Decl (org.antlr.v4.codegen.model.decl.Decl)2 TokenTypeDecl (org.antlr.v4.codegen.model.decl.TokenTypeDecl)2