001 package serp.bytecode.visitor;
002
003
004 /**
005 * Interface denoting an entity that can accept a {@link BCVisitor} and
006 * provide its internal state to it. All entities in the bytecode framework
007 * implement this interface.
008 *
009 * @author Abe White
010 */
011 public interface VisitAcceptor {
012 /**
013 * Accept a visit from a {@link BCVisitor}, calling the appropriate methods
014 * to notify the visitor that it has entered this entity, and
015 * to provide it with the proper callbacks for each sub-entity owned
016 * by this one.
017 */
018 public void acceptVisit(BCVisitor visitor);
019 }