1 cananian 1.1.2.6 // TreeKind.java, created Mon Jun 28 14:46:11 1999 by duncan 2 cananian 1.1.2.5 // Copyright (C) 1998 Duncan Bryce <duncan@lcs.mit.edu> 3 cananian 1.1.2.5 // Licensed under the terms of the GNU GPL; see COPYING for details. 4 duncan 1.1.2.1 package harpoon.IR.Tree; 5 duncan 1.1.2.1 6 duncan 1.1.2.1 /** 7 duncan 1.1.2.1 * <code>TreeKind</code> is an enumerated type for the various kinds of 8 duncan 1.1.2.1 * <code>Tree</code>s. Largely copied from Scott's <code>QuadKind</code> 9 duncan 1.1.2.1 * class. 10 duncan 1.1.2.1 * 11 duncan 1.1.2.1 * @author Duncan Bryce <duncan@lcs.mit.edu> 12 cananian 1.3 * @version $Id: TreeKind.java,v 1.3 2003/04/11 00:30:08 cananian Exp $ 13 duncan 1.1.2.1 */ 14 duncan 1.1.2.1 public abstract class TreeKind { 15 cananian 1.1.2.8 public final static int ALIGN = 0; 16 cananian 1.1.2.8 public final static int BINOP = 1; 17 cananian 1.1.2.8 public final static int CALL = 2; 18 cananian 1.1.2.8 public final static int CJUMP = 3; 19 cananian 1.1.2.8 public final static int CONST = 4; 20 cananian 1.1.2.9 public final static int DATUM = 5; 21 cananian 1.1.2.8 public final static int ESEQ = 6; 22 jwhaley 1.1.2.10 public final static int EXPR = 7; 23 cananian 1.1.2.8 public final static int JUMP = 8; 24 cananian 1.1.2.8 public final static int LABEL = 9; 25 cananian 1.1.2.8 public final static int MEM = 10; 26 cananian 1.1.2.8 public final static int METHOD = 11; 27 cananian 1.1.2.8 public final static int MOVE = 12; 28 cananian 1.1.2.8 public final static int NAME = 13; 29 cananian 1.1.2.8 public final static int NATIVECALL = 14; 30 cananian 1.1.2.8 public final static int RETURN = 15; 31 cananian 1.1.2.8 public final static int SEGMENT = 16; 32 cananian 1.1.2.8 public final static int SEQ = 17; 33 cananian 1.1.2.8 public final static int TEMP = 18; 34 cananian 1.1.2.8 public final static int THROW = 19; 35 cananian 1.1.2.8 public final static int UNOP = 20; 36 duncan 1.1.2.1 37 duncan 1.1.2.1 public static int min() { return 0; } 38 cananian 1.1.2.8 public static int max() { return 21; } 39 duncan 1.1.2.1 40 duncan 1.1.2.1 public static boolean isValid(int k) { 41 duncan 1.1.2.1 return (min()<=k) && (k<max()); 42 duncan 1.1.2.1 } 43 duncan 1.1.2.1 } 44 duncan 1.1.2.1 45 duncan 1.1.2.1 46 duncan 1.1.2.1 47 cananian 1.2