Package org.antlr.tool

Examples of org.antlr.tool.Grammar


    String found = g.getRule("a").tree.toStringTree();
    assertEquals(expecting, found);
  }

  @Test public void testNakedRuleStar() throws Exception {
    Grammar g = new Grammar(
        "parser grammar P;\n"+
        "a : b*;\n" +
        "b : B;");
    String expecting =
      "(rule a ARG RET scope (BLOCK (ALT (* (BLOCK (ALT b <end-of-alt>) <end-of-block>)) <end-of-alt>) <end-of-block>) <end-of-rule>)";
    String found = g.getRule("a").tree.toStringTree();
    assertEquals(expecting, found);
  }
View Full Code Here


    String found = g.getRule("a").tree.toStringTree();
    assertEquals(expecting, found);
  }

  @Test public void testCharStar() throws Exception {
    Grammar g = new Grammar(
        "grammar P;\n"+
        "a : 'a'*;");
    String expecting =
      "(rule a ARG RET scope (BLOCK (ALT (* (BLOCK (ALT 'a' <end-of-alt>) <end-of-block>)) <end-of-alt>) <end-of-block>) <end-of-rule>)";
    String found = g.getRule("a").tree.toStringTree();
    assertEquals(expecting, found);
  }
View Full Code Here

    String found = g.getRule("a").tree.toStringTree();
    assertEquals(expecting, found);
  }

  @Test public void testCharStarInLexer() throws Exception {
    Grammar g = new Grammar(
        "lexer grammar P;\n"+
        "B : 'b'*;");
    String expecting =
      "(rule B ARG RET scope (BLOCK (ALT (* (BLOCK (ALT 'b' <end-of-alt>) <end-of-block>)) <end-of-alt>) <end-of-block>) <end-of-rule>)";
    String found = g.getRule("B").tree.toStringTree();
    assertEquals(expecting, found);
  }
View Full Code Here

    String found = g.getRule("B").tree.toStringTree();
    assertEquals(expecting, found);
  }

  @Test public void testStringStar() throws Exception {
    Grammar g = new Grammar(
        "grammar P;\n"+
        "a : 'while'*;");
    String expecting =
      "(rule a ARG RET scope (BLOCK (ALT (* (BLOCK (ALT 'while' <end-of-alt>) <end-of-block>)) <end-of-alt>) <end-of-block>) <end-of-rule>)";
    String found = g.getRule("a").tree.toStringTree();
    assertEquals(expecting, found);
  }
View Full Code Here

      "a : ID a -> $a | INT ;\n"+
      "ID : 'a'..'z'+ ;\n" +
      "INT: '0'..'9'+ ;\n" +
      "WS : (' '|'\\n') {$channel=HIDDEN;} ;\n";

    Grammar g = new Grammar(grammar);
    Tool antlr = newTool();
    antlr.setOutputDirectory(null); // write to /dev/null
    CodeGenerator generator = new CodeGenerator(antlr, g, "Java");
    g.setCodeGenerator(generator);
    generator.genRecognizer();

    // $a is ambig; is it previous root or ref to a ref in alt?
    assertEquals("unexpected errors: "+equeue, 1, equeue.errors.size());   
  }
View Full Code Here

      "a : INT -> ugh ;\n" +
      "ID : 'a'..'z'+ ;\n" +
      "INT : '0'..'9'+;\n" +
      "WS : (' '|'\\n') {$channel=HIDDEN;} ;\n";

    Grammar g = new Grammar(grammar);
    Tool antlr = newTool();
    antlr.setOutputDirectory(null); // write to /dev/null
    CodeGenerator generator = new CodeGenerator(antlr, g, "Java");
    g.setCodeGenerator(generator);
    generator.genRecognizer();

    int expectedMsgID = ErrorManager.MSG_UNDEFINED_RULE_REF;
    Object expectedArg = "ugh";
    Object expectedArg2 = null;
View Full Code Here

      "b : 'b' ;\n" +
      "ID : 'a'..'z'+ ;\n" +
      "INT : '0'..'9'+;\n" +
      "WS : (' '|'\\n') {$channel=HIDDEN;} ;\n";

    Grammar g = new Grammar(grammar);
    Tool antlr = newTool();
    antlr.setOutputDirectory(null); // write to /dev/null
    CodeGenerator generator = new CodeGenerator(antlr, g, "Java");
    g.setCodeGenerator(generator);
    generator.genRecognizer();

    int expectedMsgID = ErrorManager.MSG_REWRITE_ELEMENT_NOT_PRESENT_ON_LHS;
    Object expectedArg = "b";
    Object expectedArg2 = null;
View Full Code Here

      "a : INT -> ICK ;\n" +
      "ID : 'a'..'z'+ ;\n" +
      "INT : '0'..'9'+;\n" +
      "WS : (' '|'\\n') {$channel=HIDDEN;} ;\n";

    Grammar g = new Grammar(grammar);
    Tool antlr = newTool();
    antlr.setOutputDirectory(null); // write to /dev/null
    CodeGenerator generator = new CodeGenerator(antlr, g, "Java");
    g.setCodeGenerator(generator);
    generator.genRecognizer();

    int expectedMsgID = ErrorManager.MSG_UNDEFINED_TOKEN_REF_IN_REWRITE;
    Object expectedArg = "ICK";
    Object expectedArg2 = null;
View Full Code Here

      "a : INT -> $foo ;\n" +
      "ID : 'a'..'z'+ ;\n" +
      "INT : '0'..'9'+;\n" +
      "WS : (' '|'\\n') {$channel=HIDDEN;} ;\n";

    Grammar g = new Grammar(grammar);
    Tool antlr = newTool();
    antlr.setOutputDirectory(null); // write to /dev/null
    CodeGenerator generator = new CodeGenerator(antlr, g, "Java");
    g.setCodeGenerator(generator);
    generator.genRecognizer();

    int expectedMsgID = ErrorManager.MSG_UNDEFINED_LABEL_REF_IN_REWRITE;
    Object expectedArg = "foo";
    Object expectedArg2 = null;
View Full Code Here

      "a : INT -> 'a' ;\n" +
      "ID : 'a'..'z'+ ;\n" +
      "INT : '0'..'9'+;\n" +
      "WS : (' '|'\\n') {$channel=HIDDEN;} ;\n";

    Grammar g = new Grammar(grammar);
    Tool antlr = newTool();
    antlr.setOutputDirectory(null); // write to /dev/null
    CodeGenerator generator = new CodeGenerator(antlr, g, "Java");
    g.setCodeGenerator(generator);
    generator.genRecognizer();

    int expectedMsgID = ErrorManager.MSG_UNDEFINED_TOKEN_REF_IN_REWRITE;
    Object expectedArg = "'a'";
    Object expectedArg2 = null;
View Full Code Here

TOP

Related Classes of org.antlr.tool.Grammar

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.