001package 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 */
011public 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}