Search in sources :

Example 1 with GeneratedJavaLexer

use of com.puppycrawl.tools.checkstyle.grammars.GeneratedJavaLexer in project checkstyle by checkstyle.

the class TreeWalker method parse.

/**
     * Static helper method to parses a Java source file.
     *
     * @param contents
     *                contains the contents of the file
     * @return the root of the AST
     * @throws TokenStreamException
     *                 if lexing failed
     * @throws RecognitionException
     *                 if parsing failed
     */
public static DetailAST parse(FileContents contents) throws RecognitionException, TokenStreamException {
    final String fullText = contents.getText().getFullText().toString();
    final Reader reader = new StringReader(fullText);
    final GeneratedJavaLexer lexer = new GeneratedJavaLexer(reader);
    lexer.setFilename(contents.getFileName());
    lexer.setCommentListener(contents);
    lexer.setTreatAssertAsKeyword(true);
    lexer.setTreatEnumAsKeyword(true);
    lexer.setTokenObjectClass("antlr.CommonHiddenStreamToken");
    final TokenStreamHiddenTokenFilter filter = new TokenStreamHiddenTokenFilter(lexer);
    filter.hide(TokenTypes.SINGLE_LINE_COMMENT);
    filter.hide(TokenTypes.BLOCK_COMMENT_BEGIN);
    final GeneratedJavaRecognizer parser = new GeneratedJavaRecognizer(filter);
    parser.setFilename(contents.getFileName());
    parser.setASTNodeClass(DetailAST.class.getName());
    parser.compilationUnit();
    return (DetailAST) parser.getAST();
}
Also used : GeneratedJavaRecognizer(com.puppycrawl.tools.checkstyle.grammars.GeneratedJavaRecognizer) GeneratedJavaLexer(com.puppycrawl.tools.checkstyle.grammars.GeneratedJavaLexer) DetailAST(com.puppycrawl.tools.checkstyle.api.DetailAST) StringReader(java.io.StringReader) Reader(java.io.Reader) StringReader(java.io.StringReader) TokenStreamHiddenTokenFilter(antlr.TokenStreamHiddenTokenFilter)

Aggregations

TokenStreamHiddenTokenFilter (antlr.TokenStreamHiddenTokenFilter)1 DetailAST (com.puppycrawl.tools.checkstyle.api.DetailAST)1 GeneratedJavaLexer (com.puppycrawl.tools.checkstyle.grammars.GeneratedJavaLexer)1 GeneratedJavaRecognizer (com.puppycrawl.tools.checkstyle.grammars.GeneratedJavaRecognizer)1 Reader (java.io.Reader)1 StringReader (java.io.StringReader)1