com.jeffpalm.cop5555.nodes
Class TreeNode

java.lang.Object
  extended by COM.sootNsmoke.instructions.Instructions
      extended by com.jeffpalm.cop5555.nodes.TreeNode
All Implemented Interfaces:
COM.sootNsmoke.jvm.RuntimeConstants
Direct Known Subclasses:
EmptyTreeNode, NonTerminalNode, TerminalNode

public abstract class TreeNode
extends COM.sootNsmoke.instructions.Instructions
implements COM.sootNsmoke.jvm.RuntimeConstants


Field Summary
protected  TreeNode decoration
           
protected  java.util.HashMap ht
           
protected  TreeNode kid
           
static int LEFT
           
protected  int mode
           
protected  int numKids
           
protected  TreeNode parent
           
protected  Pos pos
           
protected  java.lang.String returnValue
           
static int RIGHT
           
protected  TreeNode sibling
           
protected  java.lang.String str
           
 
Fields inherited from interface COM.sootNsmoke.jvm.RuntimeConstants
ACC_ABSTRACT, ACC_FINAL, ACC_INTERFACE, ACC_NATIVE, ACC_PRIVATE, ACC_PROTECTED, ACC_PUBLIC, ACC_STATIC, ACC_STRICTFP, ACC_SUPER, ACC_SYNCHRONIZED, ACC_TRANSIENT, ACC_VOLATILE, CONSTANT_CLASS, CONSTANT_DOUBLE, CONSTANT_FIELD, CONSTANT_FLOAT, CONSTANT_INTEGER, CONSTANT_INTERFACEMETHOD, CONSTANT_LONG, CONSTANT_METHOD, CONSTANT_NAMEANDTYPE, CONSTANT_STRING, CONSTANT_UNICODE, CONSTANT_UTF8, JAVA_MAGIC, JAVA_MINOR_VERSION, JAVA_VERSION, opc_aaload, opc_aastore, opc_aconst_null, opc_aload, opc_aload_0, opc_aload_1, opc_aload_2, opc_aload_3, opc_anewarray, opc_areturn, opc_arraylength, opc_astore, opc_astore_0, opc_astore_1, opc_astore_2, opc_astore_3, opc_athrow, opc_baload, opc_bastore, opc_bipush, opc_breakpoint, opc_caload, opc_castore, opc_checkcast, opc_d2f, opc_d2i, opc_d2l, opc_dadd, opc_daload, opc_dastore, opc_dcmpg, opc_dcmpl, opc_dconst_0, opc_dconst_1, opc_ddiv, opc_dload, opc_dload_0, opc_dload_1, opc_dload_2, opc_dload_3, opc_dmul, opc_dneg, opc_drem, opc_dreturn, opc_dstore, opc_dstore_0, opc_dstore_1, opc_dstore_2, opc_dstore_3, opc_dsub, opc_dup, opc_dup_x1, opc_dup_x2, opc_dup2, opc_dup2_x1, opc_dup2_x2, opc_f2d, opc_f2i, opc_f2l, opc_fadd, opc_faload, opc_fastore, opc_fcmpg, opc_fcmpl, opc_fconst_0, opc_fconst_1, opc_fconst_2, opc_fdiv, opc_fload, opc_fload_0, opc_fload_1, opc_fload_2, opc_fload_3, opc_fmul, opc_fneg, opc_frem, opc_freturn, opc_fstore, opc_fstore_0, opc_fstore_1, opc_fstore_2, opc_fstore_3, opc_fsub, opc_getfield, opc_getstatic, opc_goto, opc_goto_w, opc_i2b, opc_i2c, opc_i2d, opc_i2f, opc_i2l, opc_i2s, opc_iadd, opc_iaload, opc_iand, opc_iastore, opc_iconst_0, opc_iconst_1, opc_iconst_2, opc_iconst_3, opc_iconst_4, opc_iconst_5, opc_iconst_m1, opc_idiv, opc_if_acmpeq, opc_if_acmpne, opc_if_icmpeq, opc_if_icmpge, opc_if_icmpgt, opc_if_icmple, opc_if_icmplt, opc_if_icmpne, opc_ifeq, opc_ifge, opc_ifgt, opc_ifle, opc_iflt, opc_ifne, opc_ifnonnull, opc_ifnull, opc_iinc, opc_iload, opc_iload_0, opc_iload_1, opc_iload_2, opc_iload_3, opc_imul, opc_ineg, opc_instanceof, opc_invokeinterface, opc_invokenonvirtual, opc_invokespecial, opc_invokestatic, opc_invokevirtual, opc_ior, opc_irem, opc_ireturn, opc_ishl, opc_ishr, opc_istore, opc_istore_0, opc_istore_1, opc_istore_2, opc_istore_3, opc_isub, opc_iushr, opc_ixor, opc_jsr, opc_jsr_w, opc_l2d, opc_l2f, opc_l2i, opc_ladd, opc_laload, opc_land, opc_lastore, opc_lcmp, opc_lconst_0, opc_lconst_1, opc_ldc, opc_ldc_w, opc_ldc2_w, opc_ldiv, opc_lload, opc_lload_0, opc_lload_1, opc_lload_2, opc_lload_3, opc_lmul, opc_lneg, opc_lookupswitch, opc_lor, opc_lrem, opc_lreturn, opc_lshl, opc_lshr, opc_lstore, opc_lstore_0, opc_lstore_1, opc_lstore_2, opc_lstore_3, opc_lsub, opc_lushr, opc_lxor, opc_monitorenter, opc_monitorexit, opc_multianewarray, opc_new, opc_newarray, opc_nop, opc_pop, opc_pop2, opc_putfield, opc_putstatic, opc_ret, opc_return, opc_saload, opc_sastore, opc_sipush, opc_swap, opc_tableswitch, opc_wide, opc_xxxunusedxxx, opcLengths, opcNames, SIG_ARRAY, SIG_BOOLEAN, SIG_BYTE, SIG_CHAR, SIG_CLASS, SIG_DOUBLE, SIG_ENDCLASS, SIG_ENDMETHOD, SIG_FLOAT, SIG_INT, SIG_LONG, SIG_METHOD, SIG_PACKAGE, SIG_SHORT, SIG_VOID, SIGC_ARRAY, SIGC_BOOLEAN, SIGC_BYTE, SIGC_CHAR, SIGC_CLASS, SIGC_DOUBLE, SIGC_ENDCLASS, SIGC_ENDMETHOD, SIGC_FLOAT, SIGC_INT, SIGC_LONG, SIGC_METHOD, SIGC_PACKAGE, SIGC_SHORT, SIGC_VOID, T_BOOLEAN, T_BYTE, T_CHAR, T_DOUBLE, T_FLOAT, T_INT, T_LONG, T_SHORT
 
Constructor Summary
TreeNode()
           
 
Method Summary
 void addChild(TreeNode child)
           
protected  void addSibling(TreeNode sib)
           
 java.lang.String code(CodeGen c)
           
 boolean constrain(Constrainer c)
           
 void fatal(java.lang.String s)
           
 java.lang.Object getBute(java.lang.String s)
           
 java.util.HashMap getButes()
           
 Children getChildren()
           
 int getCol()
           
 TreeNode getDecoration()
           
 int getLine()
           
 int getNumKids()
           
 TreeNode getParent()
           
 Pos getPos()
           
 java.lang.String getReturnValue()
           
 java.lang.String getString()
           
 boolean hasBute(java.lang.String s, java.lang.Object o)
           
 boolean hasChildren()
           
 boolean hasSiblings()
           
 boolean isEmpty()
           
 void preorder()
           
 void regBute(java.lang.String s)
           
 void regBute(java.lang.String s, java.lang.Object o)
           
 void setBute(java.lang.String s, java.lang.Object o)
           
 void setDecoration(TreeNode t)
           
 void setParent(TreeNode parent)
           
 void setPos(Pos p)
           
 void setReturnValue(java.lang.String s)
           
 void setString(java.lang.String s)
           
 void superCode(CodeGen c)
           
 
Methods inherited from class COM.sootNsmoke.instructions.Instructions
aaload, aastore, aconst_null, aload_0, aload_1, aload_2, aload_3, aload, anewarray, areturn, arraylength, astore, athrow, baload, bastore, bipush, caload, castore, checkcast, comment, compoundinstruction, compoundinstruction, compoundinstruction, d2f, d2i, d2l, dadd, daload, dastore, dcmpg, dcmpl, dconst_0, dconst_1, dconst, ddiv, dload_0, dload_1, dload_2, dload_3, dload, dmul, dneg, drem, dreturn, dstore, dsub, dup_x1, dup_x2, dup, dup2_x1, dup2_x2, dup2, emptysequence, f2d, f2i, f2l, fadd, faload, fastore, fcmpg, fcmpl, fconst_0, fconst_1, fconst_2, fconst, fdiv, fload_0, fload_1, fload_2, fload_3, fload, fmul, fneg, frem, freturn, fstore, fsub, getfield, getstatic, goto_, goto_w, i2b, i2c, i2d, i2f, i2l, i2s, iadd, iaload, iand, iastore, iconst_0, iconst_1, iconst_2, iconst_3, iconst_4, iconst_5, iconst_m1, iconst, idiv, if_acmpeq, if_acmpne, if_icmpeq, if_icmpge, if_icmpgt, if_icmple, if_icmplt, if_icmpne, ifeq, ifge, ifgt, ifle, iflt, ifne, ifnonnull, ifnull, iinc, iload_0, iload_1, iload_2, iload_3, iload, imul, ineg, instanceof_, invokeinterface, invokespecial, invokespecial, invokestatic, invokestatic, invokevirtual, invokevirtual, ior, irem, ireturn, ishl, ishr, istore, isub, iushr, ixor, jsr_w, jsr, l2d, l2f, l2i, label, labelsequence, ladd, laload, land, lastore, lcmp, lconst_0, lconst_1, lconst, ldc, ldc, ldc, ldc2_w, ldc2_w, ldiv, linenumber, lload, lmul, lneg, loadsequence, lookupswitch, lor, lrem, lreturn, lshl, lshr, lstore, lsub, lushr, lxor, matchlabel, monitorenter, monitorexit, multianewarray, new_, newarray, nop, pop, pop2, putfield, putstatic, ret, return_, saload, sastore, sipush, swap, tableswitch, wide, wide
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

kid

protected TreeNode kid

sibling

protected TreeNode sibling

parent

protected TreeNode parent

decoration

protected TreeNode decoration

numKids

protected int numKids

mode

protected int mode

returnValue

protected java.lang.String returnValue

str

protected java.lang.String str

pos

protected Pos pos

ht

protected java.util.HashMap ht

LEFT

public static final int LEFT
See Also:
Constant Field Values

RIGHT

public static final int RIGHT
See Also:
Constant Field Values
Constructor Detail

TreeNode

public TreeNode()
Method Detail

setBute

public void setBute(java.lang.String s,
                    java.lang.Object o)

regBute

public void regBute(java.lang.String s,
                    java.lang.Object o)

regBute

public void regBute(java.lang.String s)

getBute

public java.lang.Object getBute(java.lang.String s)

hasBute

public boolean hasBute(java.lang.String s,
                       java.lang.Object o)

addChild

public void addChild(TreeNode child)

preorder

public void preorder()

addSibling

protected void addSibling(TreeNode sib)

getChildren

public Children getChildren()

constrain

public boolean constrain(Constrainer c)

code

public java.lang.String code(CodeGen c)

superCode

public final void superCode(CodeGen c)

fatal

public void fatal(java.lang.String s)

isEmpty

public boolean isEmpty()

hasChildren

public boolean hasChildren()

hasSiblings

public boolean hasSiblings()

getNumKids

public int getNumKids()

getLine

public int getLine()

getCol

public int getCol()

getReturnValue

public java.lang.String getReturnValue()

setReturnValue

public void setReturnValue(java.lang.String s)

getString

public java.lang.String getString()

setString

public void setString(java.lang.String s)

getPos

public Pos getPos()

setPos

public void setPos(Pos p)

getDecoration

public TreeNode getDecoration()

setDecoration

public void setDecoration(TreeNode t)

getParent

public TreeNode getParent()

setParent

public void setParent(TreeNode parent)

getButes

public java.util.HashMap getButes()