public static GroovyRecognizer make(Reader in) { return make(new GroovyLexer(in)); } public static GroovyRecognizer make(InputBuffer in) { return make(new GroovyLexer(in)); }
public static GroovyRecognizer make(InputBuffer in) { return make(new GroovyLexer(in)); } public static GroovyRecognizer make(LexerSharedInputState in) { return make(new GroovyLexer(in)); }
public static GroovyRecognizer make(InputStream in) { return make(new GroovyLexer(in)); } public static GroovyRecognizer make(Reader in) { return make(new GroovyLexer(in)); }
public static GroovyRecognizer make(LexerSharedInputState in) { return make(new GroovyLexer(in)); }
public static void doFile(File f) throws Exception { // If this is a directory, walk each file/dir in that directory if (f.isDirectory()) { String files[] = f.list(); for(int i=0; i < files.length; i++) doFile(new File(f, files[i])); } // otherwise, if this is a groovy file, parse it! else if (f.getName().endsWith(".groovy")) { System.err.println(" --- "+f.getAbsolutePath()); // parseFile(f.getName(), new FileInputStream(f)); SourceBuffer sourceBuffer = new SourceBuffer(); UnicodeEscapingReader unicodeReader = new UnicodeEscapingReader(new FileReader(f),sourceBuffer); GroovyLexer lexer = new GroovyLexer(unicodeReader); unicodeReader.setLexer(lexer); parseFile(f.getName(),lexer,sourceBuffer); } }
private GroovyRecognizer getGroovyParser(String input, SourceBuffer sourceBuffer) { UnicodeEscapingReader unicodeReader = new UnicodeEscapingReader(new StringReader(input), sourceBuffer); GroovyLexer lexer = new GroovyLexer(unicodeReader); unicodeReader.setLexer(lexer); GroovyRecognizer parser = GroovyRecognizer.make(lexer); parser.setSourceBuffer(sourceBuffer); return parser; }
private static String[] getGroovyTokenNames(String input) { GroovyRecognizer groovyParser = null; SourceBuffer groovySourceBuffer = new SourceBuffer(); UnicodeEscapingReader groovyUnicodeReader = new UnicodeEscapingReader(new StringReader(input), groovySourceBuffer); GroovyLexer groovyLexer = new GroovyLexer(groovyUnicodeReader); groovyUnicodeReader.setLexer(groovyLexer); groovyParser = GroovyRecognizer.make(groovyLexer); return groovyParser.getTokenNames(); }
final MethodNode mn, final ASTNode usage) { GroovyLexer lexer = new GroovyLexer(new StringReader("DummyNode<" + option + ">")); final GroovyRecognizer rn = GroovyRecognizer.make(lexer); try {
protected void parse(String name, Reader reader) { SourceBuffer sourceBuffer = new SourceBuffer(); UnicodeEscapingReader unicodeReader = new UnicodeEscapingReader(reader, sourceBuffer); GroovyLexer lexer = new GroovyLexer(unicodeReader); unicodeReader.setLexer(lexer); GroovyRecognizer parser = GroovyRecognizer.make(lexer); parser.setSourceBuffer(sourceBuffer); parser.setFilename(name); // start parsing at the compilationUnit rule try { parser.compilationUnit(); } catch (Exception ex) { StringWriter out = new StringWriter(); out.write(ex.getMessage()); out.write("\n"); ex.printStackTrace(new PrintWriter(out)); fail(out.toString()); } } }
SourceBuffer sourceBuffer = new SourceBuffer(); UnicodeEscapingReader unicodeReader = new UnicodeEscapingReader(new StringReader(input), sourceBuffer); GroovyLexer lexer = new GroovyLexer(unicodeReader); unicodeReader.setLexer(lexer); parser = GroovyRecognizer.make(lexer);
@Override public void tokenize(SourceCode sourceCode, Tokens tokenEntries) { StringBuilder buffer = sourceCode.getCodeBuffer(); GroovyLexer lexer = new GroovyLexer(new StringReader(buffer.toString())); TokenStream tokenStream = lexer.plumb(); try { Token token = tokenStream.nextToken(); while (token.getType() != Token.EOF_TYPE) { TokenEntry tokenEntry = new TokenEntry(token.getText(), sourceCode.getFileName(), token.getLine()); tokenEntries.add(tokenEntry); token = tokenStream.nextToken(); } } catch (TokenStreamException err) { // Wrap exceptions of the Groovy tokenizer in a TokenMgrError, so // they are correctly handled // when CPD is executed with the '--skipLexicalErrors' command line // option throw new TokenMgrError("Lexical error in file " + sourceCode.getFileName() + " at line " + lexer.getLine() + ", column " + lexer.getColumn() + ". Encountered: " + err.getMessage(), TokenMgrError.LEXICAL_ERROR); } finally { tokenEntries.add(TokenEntry.getEOF()); } } }
private void assertCompositeTransparency(String input) throws Exception { ByteArrayOutputStream baos = new ByteArrayOutputStream(); GroovyRecognizer parser; SourceBuffer sourceBuffer = new SourceBuffer(); UnicodeEscapingReader unicodeReader = new UnicodeEscapingReader(new StringReader(input), sourceBuffer); GroovyLexer lexer = new GroovyLexer(unicodeReader); unicodeReader.setLexer(lexer); parser = GroovyRecognizer.make(lexer); parser.setSourceBuffer(sourceBuffer); String[] tokenNames = parser.getTokenNames(); parser.compilationUnit(); AST ast = parser.getAST(); // determine direct result Visitor directVisitor = new SourcePrinter(new PrintStream(baos), tokenNames, false); AntlrASTProcessor traverser = new SourceCodeTraversal(directVisitor); traverser.process(ast); String directResult = new String(baos.toByteArray()); // determine composite result baos.reset(); List wrappedVisitors = new ArrayList(); wrappedVisitors.add(directVisitor); Visitor compositeVisitor = new CompositeVisitor(wrappedVisitors); traverser = new SourceCodeTraversal(compositeVisitor); traverser.process(ast); String compositeResult = new String(baos.toByteArray()); assertEquals(directResult, compositeResult); }
public void doStuff(String input) throws Exception { GroovyRecognizer parser; SourceBuffer sourceBuffer = new SourceBuffer(); UnicodeEscapingReader unicodeReader = new UnicodeEscapingReader(new StringReader(input), sourceBuffer); GroovyLexer lexer = new GroovyLexer(unicodeReader); unicodeReader.setLexer(lexer); parser = GroovyRecognizer.make(lexer); parser.setSourceBuffer(sourceBuffer); String[] tokenNames = parser.getTokenNames(); parser.compilationUnit(); AST ast = parser.getAST(); AntlrASTProcessor snippets = new AntlrASTProcessSnippets(); ast = snippets.process(ast); Visitor visitor = new LineColumnChecker(sourceBuffer, tokenNames); AntlrASTProcessor traverser = new SourceCodeTraversal(visitor); traverser.process(ast); } }
GroovyLexer lexer = new GroovyLexer(inputState); unicodeReader.setLexer(lexer); GroovyRecognizer parser = GroovyRecognizer.make(lexer);
import org.codehaus.groovy.antlr.* import org.codehaus.groovy.antlr.parser.* def ast = new GroovyRecognizer( new GroovyLexer( new StringReader( code ) ).plumb() ).with { p -> p.compilationUnit() p.AST }
private GroovyRecognizer getGroovyParser(String input, SourceBuffer sourceBuffer) { UnicodeEscapingReader unicodeReader = new UnicodeEscapingReader(new StringReader(input), sourceBuffer); GroovyLexer lexer = new GroovyLexer(unicodeReader); unicodeReader.setLexer(lexer); GroovyRecognizer parser = GroovyRecognizer.make(lexer); parser.setSourceBuffer(sourceBuffer); return parser; }
private GroovyRecognizer getGroovyParser(String input, SourceBuffer sourceBuffer) { GroovyRecognizer parser = null; UnicodeEscapingReader unicodeReader = new UnicodeEscapingReader(new StringReader(input),sourceBuffer); GroovyLexer lexer = new GroovyLexer(unicodeReader); unicodeReader.setLexer(lexer); parser = GroovyRecognizer.make(lexer); parser.setSourceBuffer(sourceBuffer); return parser; }
private GroovyRecognizer getGroovyParser(String input, SourceBuffer sourceBuffer) { UnicodeEscapingReader unicodeReader = new UnicodeEscapingReader(new StringReader(input), sourceBuffer); GroovyLexer lexer = new GroovyLexer(unicodeReader); unicodeReader.setLexer(lexer); GroovyRecognizer parser = GroovyRecognizer.make(lexer); parser.setSourceBuffer(sourceBuffer); return parser; }
private static String[] getGroovyTokenNames(String input) { GroovyRecognizer groovyParser = null; SourceBuffer groovySourceBuffer = new SourceBuffer(); UnicodeEscapingReader groovyUnicodeReader = new UnicodeEscapingReader(new StringReader(input),groovySourceBuffer); GroovyLexer groovyLexer = new GroovyLexer(groovyUnicodeReader); groovyUnicodeReader.setLexer(groovyLexer); groovyParser = GroovyRecognizer.make(groovyLexer); return groovyParser.getTokenNames(); }
private static String[] getGroovyTokenNames(String input) { GroovyRecognizer groovyParser = null; SourceBuffer groovySourceBuffer = new SourceBuffer(); UnicodeEscapingReader groovyUnicodeReader = new UnicodeEscapingReader(new StringReader(input),groovySourceBuffer); GroovyLexer groovyLexer = new GroovyLexer(groovyUnicodeReader); groovyUnicodeReader.setLexer(groovyLexer); groovyParser = GroovyRecognizer.make(groovyLexer); return groovyParser.getTokenNames(); }