1 pnkfelix 1.1.2.1 // InstrVisitor.java, created Mon Apr 5 17:24:45 1999 by pnkfelix 2 cananian 1.1.2.7 // Copyright (C) 1999 Felix S. Klock II <pnkfelix@mit.edu> 3 pnkfelix 1.1.2.1 // Licensed under the terms of the GNU GPL; see COPYING for details. 4 pnkfelix 1.1.2.1 package harpoon.IR.Assem; 5 pnkfelix 1.1.2.1 6 pnkfelix 1.1.2.1 /** 7 pnkfelix 1.1.2.2 * <code>InstrVisitor</code> is an implementation of the Visitor 8 pnkfelix 1.1.2.2 * pattern coupled to the Instr intermediate representation. 9 pnkfelix 1.1.2.1 * 10 cananian 1.1.2.7 * @author Felix S. Klock II <pnkfelix@mit.edu> 11 cananian 1.2 * @version $Id: InstrVisitor.java,v 1.2 2002/02/25 21:04:13 cananian Exp $ */ 12 pnkfelix 1.1.2.1 public abstract class InstrVisitor { 13 pnkfelix 1.1.2.1 14 pnkfelix 1.1.2.1 /** Creates a <code>InstrVisitor</code>. */ 15 andyb 1.1.2.3 public InstrVisitor() { } 16 pnkfelix 1.1.2.1 17 andyb 1.1.2.3 /** Visit an <code>Instr</code> i. */ 18 pnkfelix 1.1.2.1 public abstract void visit(Instr i); 19 andyb 1.1.2.3 public void visit(InstrDIRECTIVE i) { visit((Instr)i); } 20 pnkfelix 1.1.2.5 public void visit(InstrJUMP i) { visit((Instr)i); } 21 andyb 1.1.2.3 public void visit(InstrLABEL i) { visit((Instr)i); } 22 andyb 1.1.2.3 public void visit(InstrMEM i) { visit((Instr)i); } 23 pnkfelix 1.1.2.4 public void visit(InstrMOVE i) { visit((Instr)i); } 24 pnkfelix 1.1.2.6 public void visit(InstrCALL i) { visit((Instr)i); } 25 cananian 1.2 }