<T extends Element> void visitAllButConstants(List<T> elements) { if (elements == null) { return; } for (T element : elements) { if (element == null || (element instanceof Constant)) { continue; } element.accept(this); } }
public void computeVariablesDependencies(Element e, final Set<Identifier> names) { e.accept(new Scanner() { @Override public void visitVariableRef(VariableRef variableRef) { names.add(variableRef.getName()); } }); }
public void computeVariablesDependencies(Element e, final Set<Identifier> names) { e.accept(new Scanner() { @Override public void visitVariableRef(VariableRef variableRef) { names.add(variableRef.getName()); } }); }
<T extends Element> void visitAllButConstants(List<T> elements) { if (elements == null) { return; } for (T element : elements) { if (element == null || (element instanceof Constant)) { continue; } element.accept(this); } }
protected Scanner visit(Element e) { if (e != null) { try { e.accept(this); } catch (StackOverflowError err) { throw new RuntimeException("Overflow while visiting :\n" + e, err); } } return this; } protected Scanner visit(List<? extends Element> list) {
protected Scanner visit(List<? extends Element> list) { if (list != null) for (Element e : copy(list)) if (e != null) e.accept(this); return this; } protected Scanner visit(Map<String, ? extends Element> map) {
protected Scanner visit(Map<String, ? extends Element> map) { if (map != null) for (Element e : copy(map.values())) if (e != null) e.accept(this); return this; }
public boolean replaceByAndVisit(Element element, Visitor visitor) { if (!replaceBy(element)) return false; element.accept(visitor); return true; }
public Printer append(Object... os) { for (Object e : os) { if (e instanceof Element) { Element ee = (Element) e; ee.accept(this); ee.setElementLine(currentLine); } else if (e != null) { String s = String.valueOf(e); out.append(s); int i = -1; while ((i = s.indexOf("\n", i + 1)) >= 0) { currentLine++; } } } return this; }
DefSeq extractDefSeq(Element tr) { final DefSeq ret = new DefSeq(); tr.accept(new Scanner() { @Override public void visitDeclarator(Declarator declarator) { super.visitDeclarator(declarator); ret.declarators.add(declarator); } // public void visitIdentifier(Identifier i) { // super.visitIdentifier(i); // ret.identifiers.add(i); // } @Override public void visitSimpleTypeRef(SimpleTypeRef simpleTypeRef) { super.visitSimpleTypeRef(simpleTypeRef); ret.simpleTypeRefs.add(simpleTypeRef); } }); return ret; }
DefSeq extractDefSeq(Element tr) { final DefSeq ret = new DefSeq(); tr.accept(new Scanner() { @Override public void visitDeclarator(Declarator declarator) { super.visitDeclarator(declarator); ret.declarators.add(declarator); } // public void visitIdentifier(Identifier i) { // super.visitIdentifier(i); // ret.identifiers.add(i); // } @Override public void visitSimpleTypeRef(SimpleTypeRef simpleTypeRef) { super.visitSimpleTypeRef(simpleTypeRef); ret.simpleTypeRefs.add(simpleTypeRef); } }); return ret; }
String spack = result.getLibraryPackage(currentLibrary).toString(); final PrintWriter out = new PrintWriter(getLibOut(spack, currentLibrary)); interf.accept(new Scanner() { Stack<Identifier> path = new Stack<Identifier>();
String spack = result.getLibraryPackage(currentLibrary).toString(); final PrintWriter out = new PrintWriter(getLibOut(spack, currentLibrary)); interf.accept(new Scanner() { Stack<Identifier> path = new Stack<Identifier>();
final String outputClassPrefix = className + "."; rootElement.accept(new Scanner() { @SuppressWarnings("unchecked") @Override
sourcesRoot.accept(new Scanner() {
sourcesRoot.accept(new Scanner() {
element.accept(new Scanner() { @Override protected void visitElement(Element d) {
private ReferencedElements findReferencedElements(Element element) { final ReferencedElements ret = new ReferencedElements(); element.accept(new Scanner() { @Override public void visitUnaryOp(UnaryOp unaryOp) { element.accept(new Scanner() { @Override public void visitIdentifier(Identifier identifier) {
private ReferencedElements findReferencedElements(Element element) { final ReferencedElements ret = new ReferencedElements(); element.accept(new Scanner() { @Override public void visitUnaryOp(UnaryOp unaryOp) { element.accept(new Scanner() { @Override public void visitIdentifier(Identifier identifier) {
static Symbols resolveSymbols(Element root) { Symbols symbols = new Symbols(); final SymbolTable rootTable = new SymbolTable(symbols); root.accept(new Scanner() { SymbolTable currentTable = rootTable;