joeq.Compiler.Quad
Class Operator.TableSwitch

java.lang.Object
  extended by joeq.Compiler.Quad.Operator
      extended by joeq.Compiler.Quad.Operator.Branch
          extended by joeq.Compiler.Quad.Operator.TableSwitch
Direct Known Subclasses:
Operator.TableSwitch.TABLESWITCH
Enclosing class:
Operator

public abstract static class Operator.TableSwitch
extends Operator.Branch


Nested Class Summary
static class Operator.TableSwitch.TABLESWITCH
           
 
Nested classes/interfaces inherited from class joeq.Compiler.Quad.Operator
Operator.ALength, Operator.ALoad, Operator.AStore, Operator.Binary, Operator.BoundsCheck, Operator.Branch, Operator.CheckCast, Operator.Getfield, Operator.Getstatic, Operator.Goto, Operator.InstanceOf, Operator.IntIfCmp, Operator.Invoke, Operator.Jsr, Operator.LookupSwitch, Operator.MemLoad, Operator.MemStore, Operator.Monitor, Operator.Move, Operator.New, Operator.NewArray, Operator.NullCheck, Operator.Phi, Operator.Putfield, Operator.Putstatic, Operator.Ret, Operator.Return, Operator.Special, Operator.StoreCheck, Operator.TableSwitch, Operator.Unary, Operator.ZeroCheck
 
Field Summary
 
Fields inherited from class joeq.Compiler.Quad.Operator
_delegate, anyexception, arithexception, arrayboundsexception, arraystoreexception, classcastexceptions, illegalmonitorstateexception, negativesizeexception, noexceptions, noregisters, nullptrexception, resolutionexceptions
 
Constructor Summary
Operator.TableSwitch()
           
 
Method Summary
 void accept(Quad q, QuadVisitor qv)
           
static Quad create(int id, Operator.TableSwitch operator, Operand val, Operand.IConstOperand low, Operand.TargetOperand def, int length)
           
static Operand.TargetOperand getDefault(Quad q)
           
static Operand.IConstOperand getLow(Quad q)
           
static Operand getSrc(Quad q)
           
static BasicBlock getTarget(Quad q, int i)
           
static Operand.BasicBlockTableOperand getTargetTable(Quad q)
           
 UnmodifiableList.RegisterOperand getUsedRegisters(Quad q)
           
static void setDefault(Quad q, Operand.TargetOperand o)
           
static void setLow(Quad q, Operand.IConstOperand o)
           
static void setSrc(Quad q, Operand o)
           
static void setTarget(Quad q, int i, BasicBlock t)
           
static void setTargetTable(Quad q, Operand.BasicBlockTableOperand o)
           
 
Methods inherited from class joeq.Compiler.Quad.Operator.Branch
hasSideEffects
 
Methods inherited from class joeq.Compiler.Quad.Operator
getDefinedRegisters, getReg1_check, getReg1, getReg12, getReg123, getReg1234, getReg124, getReg2, getReg23, getReg234, getReg24, getReg3, getThrownExceptions, interpret
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

Operator.TableSwitch

public Operator.TableSwitch()
Method Detail

create

public static Quad create(int id,
                          Operator.TableSwitch operator,
                          Operand val,
                          Operand.IConstOperand low,
                          Operand.TargetOperand def,
                          int length)

setTarget

public static void setTarget(Quad q,
                             int i,
                             BasicBlock t)

getSrc

public static Operand getSrc(Quad q)

getLow

public static Operand.IConstOperand getLow(Quad q)

getDefault

public static Operand.TargetOperand getDefault(Quad q)

getTarget

public static BasicBlock getTarget(Quad q,
                                   int i)

getTargetTable

public static Operand.BasicBlockTableOperand getTargetTable(Quad q)

setSrc

public static void setSrc(Quad q,
                          Operand o)

setLow

public static void setLow(Quad q,
                          Operand.IConstOperand o)

setDefault

public static void setDefault(Quad q,
                              Operand.TargetOperand o)

setTargetTable

public static void setTargetTable(Quad q,
                                  Operand.BasicBlockTableOperand o)

getUsedRegisters

public UnmodifiableList.RegisterOperand getUsedRegisters(Quad q)
Overrides:
getUsedRegisters in class Operator

accept

public void accept(Quad q,
                   QuadVisitor qv)
Overrides:
accept in class Operator


Copyright © 2001-2008 John Whaley. All Rights Reserved.