1 /** 2 * BSD-style license; for more info see http://pmd.sourceforge.net/license.html 3 */ 4 package net.sourceforge.pmd.lang; 5 6 import net.sourceforge.pmd.lang.ast.Node; 7 8 /** 9 * Interface for starting an implementation of the visitors for ASTs. 10 * 11 * @author pieter_van_raemdonck - Application Engineers NV/SA - www.ae.be 12 */ 13 public interface VisitorStarter { 14 15 /** 16 * Placeholder {@link VisitorStarter} implementation that can be used when 17 * no real implementation exists yet. This dummy implementation does 18 * nothing. 19 */ 20 VisitorStarter DUMMY = new VisitorStarter() { 21 public void start(Node rootNode) { 22 // does nothing - dummy implementation. 23 } 24 }; 25 26 /** 27 * Start the visitor, given the root-node of the AST. 28 * 29 * @param rootNode 30 * The root node of the AST 31 */ 32 void start(Node rootNode); 33 }