use of org.antlr.v4.runtime.Recognizer.EOF in project antlr4 by tunnelvisionlabs.
the class TestATNConstruction method testABorCD.
@Test
public void testABorCD() throws Exception {
Grammar g = new Grammar("parser grammar P;\n" + "a : A B | C D;");
String expecting = "RuleStart_a_0->BlockStart_6\n" + "BlockStart_6->s2\n" + "BlockStart_6->s4\n" + "s2-A->s3\n" + "s4-C->s5\n" + "s3-B->BlockEnd_7\n" + "s5-D->BlockEnd_7\n" + "BlockEnd_7->RuleStop_a_1\n" + "RuleStop_a_1-EOF->s8\n";
checkRuleATN(g, "a", expecting);
}
use of org.antlr.v4.runtime.Recognizer.EOF in project antlr4 by tunnelvisionlabs.
the class TestATNConstruction method testAorBstar.
@Test
public void testAorBstar() throws Exception {
Grammar g = new Grammar("parser grammar P;\n" + "a : (A | B{;})* ;");
String expecting = "RuleStart_a_0->StarLoopEntry_7\n" + "StarLoopEntry_7->StarBlockStart_5\n" + "StarLoopEntry_7->s8\n" + "StarBlockStart_5->s2\n" + "StarBlockStart_5->s3\n" + "s8->RuleStop_a_1\n" + "s2-A->BlockEnd_6\n" + "s3-B->s4\n" + "RuleStop_a_1-EOF->s10\n" + "BlockEnd_6->StarLoopBack_9\n" + "s4-action_0:-1->BlockEnd_6\n" + "StarLoopBack_9->StarLoopEntry_7\n";
checkRuleATN(g, "a", expecting);
}
use of org.antlr.v4.runtime.Recognizer.EOF in project antlr4 by tunnelvisionlabs.
the class TestATNConstruction method testAorBthenC.
@Test
public void testAorBthenC() throws Exception {
Grammar g = new Grammar("parser grammar P;\n" + "a : (A | B) C;");
String expecting = "RuleStart_a_0->s2\n" + "s2-{A, B}->s3\n" + "s3-C->s4\n" + "s4->RuleStop_a_1\n" + "RuleStop_a_1-EOF->s5\n";
checkRuleATN(g, "a", expecting);
}
use of org.antlr.v4.runtime.Recognizer.EOF in project antlr4 by tunnelvisionlabs.
the class TestATNConstruction method testAorBorEmptyPlus.
@Test
public void testAorBorEmptyPlus() throws Exception {
Grammar g = new Grammar("parser grammar P;\n" + "a : (A | B | )+ ;");
String expecting = "RuleStart_a_0->PlusBlockStart_5\n" + "PlusBlockStart_5->s2\n" + "PlusBlockStart_5->s3\n" + "PlusBlockStart_5->s4\n" + "s2-A->BlockEnd_6\n" + "s3-B->BlockEnd_6\n" + "s4->BlockEnd_6\n" + "BlockEnd_6->PlusLoopBack_7\n" + "PlusLoopBack_7->PlusBlockStart_5\n" + "PlusLoopBack_7->s8\n" + "s8->RuleStop_a_1\n" + "RuleStop_a_1-EOF->s9\n";
checkRuleATN(g, "a", expecting);
}
use of org.antlr.v4.runtime.Recognizer.EOF in project antlr4 by tunnelvisionlabs.
the class TestATNConstruction method testSetAorBoptional.
@Test
public void testSetAorBoptional() throws Exception {
Grammar g = new Grammar("parser grammar P;\n" + "a : (A|B)?;");
String expecting = "RuleStart_a_0->BlockStart_3\n" + "BlockStart_3->s2\n" + "BlockStart_3->BlockEnd_4\n" + "s2-{A, B}->BlockEnd_4\n" + "BlockEnd_4->RuleStop_a_1\n" + "RuleStop_a_1-EOF->s5\n";
checkRuleATN(g, "a", expecting);
}
Aggregations