Example usage for org.antlr.v4.runtime BufferedTokenStream BufferedTokenStream

List of usage examples for org.antlr.v4.runtime BufferedTokenStream BufferedTokenStream

Introduction

In this page you can find the example usage for org.antlr.v4.runtime BufferedTokenStream BufferedTokenStream.

Prototype

public BufferedTokenStream(TokenSource tokenSource) 

Source Link

Usage

From source file:basicint.Run.java

/**
 * @param args the command line arguments
 *///from   w w  w . j  ava  2 s .c o m
public static void main(String[] args) throws Exception {
    String fn = "";
    if (args.length > 0) {
        fn = args[0];
    } else {
        System.out.println("Usage: basic filename.basic");
        System.exit(0);
    }

    ANTLRInputStream input = new ANTLRFileStream(fn);
    BasicLexer lexer = new BasicLexer(input);
    TokenStream tokens = new BufferedTokenStream(lexer);
    BasicParser parser = new BasicParser(tokens);
    parser.program();
}

From source file:com.cisco.yangide.core.parser.YangParserUtil.java

License:Open Source License

public static String formatYangSource(YangFormattingPreferences preferences, char[] content,
        int indentationLevel, String lineSeparator) {
    ANTLRInputStream input = new ANTLRInputStream(content, content.length);
    final YangLexer lexer = new YangLexer(input) {
        @Override/*from www .  ja v  a  2 s .co  m*/
        public void skip() {
            // disable skipping of comment tokens
        }
    };
    LexerErrorListener errorListener = new LexerErrorListener();
    lexer.addErrorListener(errorListener);
    final BufferedTokenStream tokens = new BufferedTokenStream(lexer);
    final ITokenFormatter formatter = new YangTokenFormatter(preferences, indentationLevel, lineSeparator);
    while (tokens.LT(1).getType() != IntStream.EOF) {
        formatter.process(tokens.LT(1));
        tokens.consume();
    }
    if (errorListener.isErrorDetected()) {
        // Source that contains parsing errors should never be formatted
        return String.valueOf(content);
    }
    return formatter.getFormattedContent();
}

From source file:fr.obeo.emf.ceson.CesonRuntime.java

License:Open Source License

/**
 * Create a parser.//  ww  w .j a va2 s  . c om
 * 
 * @param input
 *            the parser's input.
 * @return the created {@link CesonParser}
 */
private CesonParser createParser(String input) {
    TokenStream stream = new BufferedTokenStream(new CesonLexer(new ANTLRInputStream(input)));
    CesonParser parser = new CesonParser(stream);
    return parser;
}

From source file:linguagenzinha.Run.java

/**
 * @param args the command line arguments
 * @throws java.io.IOException//from www.j a v  a  2 s.c o m
 */
public static void main(String[] args) throws IOException {
    String filename = "teste.src";
    //LEXER
    CharStream charInput = new ANTLRFileStream(filename);
    MiniLangLexer lexer = new MiniLangLexer(charInput);
    //----
    TokenStream input = new BufferedTokenStream(lexer);
    //----
    //PARSER
    MiniLangParser parser = new MiniLangParser(input);
    MyListener listener = new MyListener();
    parser.addParseListener(listener);
    //----
    MiniLangParser.ProgContext prog = parser.prog();
    showParseTreeFrame(prog, parser);
}

From source file:org.mini2Dx.yarn.parser.YarnTreeParser.java

License:Open Source License

private void parseNodeContent(String nodeContent) throws IOException {
    YarnLexer yarnLexer = new YarnLexer(new ANTLRInputStream(nodeContent));
    YarnParser yarnParser = new YarnParser(new BufferedTokenStream(yarnLexer));
    NodeContext nodeContext = yarnParser.node();

    ParseTreeWalker parseTreeWalker = new ParseTreeWalker();
    parseTreeWalker.walk(this, nodeContext);

    if (!ifStack.isEmpty()) {
        throw new YarnParserException("<<if>> statement was not closed with an <<endif>> statement");
    }/*from  w  w  w . j ava2  s.  co m*/
}

From source file:org.openehr.adl.parser.AdlDeserializer.java

License:Open Source License

public DifferentialArchetype parse(Reader reader) throws IOException {
    try {//from   w w  w . jav  a 2 s  .  c om
        CharStream charStream = new ANTLRInputStream(reader);
        Lexer lexer = new adlLexer(charStream);
        adlParser parser = new adlParser(new BufferedTokenStream(lexer));
        AccumulatingErrorListener errorHandler = new AccumulatingErrorListener();
        parser.removeErrorListeners();
        parser.addErrorListener(errorHandler);
        adlParser.AdlContext context = parser.adl();
        if (!errorHandler.getErrors().isEmpty()) {
            throw new AdlParserException(Joiner.on("\n").join(errorHandler.getErrors()));
        }
        AdlTreeParser treeParser = new AdlTreeParser();
        return treeParser.parseAdl(context);

    } finally {
        reader.close();
    }
}

From source file:org.xgmtk.lore.ast.ASTBuilder.java

License:Apache License

private static LoreParser getParser(URL source, String encoding) throws FileNotFoundException, IOException {
    InputStream in = source.openStream();
    InputStreamReader rd = new InputStreamReader(in, encoding);

    System.err.println("[" + LoreParser.class.getSimpleName() + "] File: \"" + source + "\", Encoding: \""
            + rd.getEncoding() + "\"");
    ANTLRInputStream ain = new ANTLRInputStream(rd);

    LoreLexer lexer = new LoreLexer(ain);
    TokenStream tstream = new BufferedTokenStream(lexer);
    LoreParser parser = new LoreParser(tstream);
    return parser;
}