|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectnet.sf.jode.expr.Expression
net.sf.jode.expr.Operator
public abstract class Operator
| Field Summary | |
|---|---|
static int |
ADD_OP
|
static int |
AND_OP
|
static int |
ASSIGN_OP
|
static int |
COMPARE_OP
|
static int |
DEC_OP
|
static int |
EQUALS_OP
|
static int |
GREATER_OP
|
static int |
GREATEREQ_OP
|
static int |
INC_OP
|
static int |
LESS_OP
|
static int |
LESSEQ_OP
|
static int |
LOG_AND_OP
|
static int |
LOG_NOT_OP
|
static int |
LOG_OR_OP
|
static int |
NEG_OP
|
static int |
NOTEQUALS_OP
|
static int |
OPASSIGN_OP
|
protected int |
operatorIndex
|
static int |
SHIFT_OP
|
static int |
SUB_OP
|
| Fields inherited from class net.sf.jode.expr.Expression |
|---|
EMPTYSTRING, type |
| Constructor Summary | |
|---|---|
Operator(Type type)
|
|
Operator(Type type,
int op)
|
|
| Method Summary | |
|---|---|
Expression |
addOperand(Expression op)
|
int |
canCombine(CombineableOperator combOp)
Checks if the given Expression (which must be a CombineableOperator) can be combined into this expression. |
Expression |
combine(CombineableOperator comb)
Combines the given Expression (which should be a StoreInstruction) into this expression. |
boolean |
containsConflictingLoad(MatchableOperator op)
Checks if this expression contains a conflicting load, that matches the given CombineableOperator. |
boolean |
containsMatchingLoad(CombineableOperator comb)
Checks if this expression contains a matching load, that matches the given Expression. |
abstract void |
dumpExpression(TabbedPrintWriter writer)
|
boolean |
equals(Object o)
|
void |
fillDeclarables(Collection used)
|
void |
fillInGenSet(Collection in,
Collection gen)
|
int |
getFreeOperandCount()
Get the number of operands. |
List<InvokeOperator> |
getInvokeOperators()
|
Operator |
getOperator()
|
int |
getOperatorIndex()
|
String |
getOperatorString()
|
Expression[] |
getSubExpressions()
|
boolean |
hasSideEffects(Expression expr)
Checks if the value of the given expression can change, due to side effects in this expression. |
void |
initOperands(int opcount)
|
boolean |
isConstant()
|
boolean |
isFreeOperator()
Tells if this is an operator, that doesn't have any subExpression, yet. |
boolean |
isFreeOperator(int opcount)
Tells if this is an operator, that doesn't have any subExpression, yet, and that expects opcount operands |
void |
makeDeclaration(Set done)
|
boolean |
opEquals(Operator o)
|
void |
setOperatorIndex(int op)
|
void |
setSubExpressions(int i,
Expression expr)
|
Expression |
simplify()
|
boolean |
subsEquals(Operator other)
|
| Methods inherited from class net.sf.jode.expr.Expression |
|---|
dumpExpression, dumpExpression, getBreakPenalty, getParent, getPriority, getType, isVoid, makeInitializer, negate, removeOnetimeLocals, setType, simplifyString, simplifyStringBuffer, toString, updateParentType, updateSubTypes, updateType |
| Methods inherited from class java.lang.Object |
|---|
clone, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Field Detail |
|---|
public static final int ADD_OP
public static final int SUB_OP
public static final int SHIFT_OP
public static final int AND_OP
public static final int ASSIGN_OP
public static final int OPASSIGN_OP
public static final int INC_OP
public static final int DEC_OP
public static final int COMPARE_OP
public static final int EQUALS_OP
public static final int NOTEQUALS_OP
public static final int LESS_OP
public static final int GREATEREQ_OP
public static final int GREATER_OP
public static final int LESSEQ_OP
public static final int LOG_AND_OP
public static final int LOG_OR_OP
public static final int LOG_NOT_OP
public static final int NEG_OP
protected int operatorIndex
| Constructor Detail |
|---|
public Operator(Type type)
public Operator(Type type,
int op)
| Method Detail |
|---|
public void initOperands(int opcount)
public int getFreeOperandCount()
Expression
getFreeOperandCount in class Expressionpublic boolean isFreeOperator()
public boolean isFreeOperator(int opcount)
public Expression addOperand(Expression op)
addOperand in class Expressionpublic Operator getOperator()
public Expression[] getSubExpressions()
public List<InvokeOperator> getInvokeOperators()
public void setSubExpressions(int i,
Expression expr)
public int getOperatorIndex()
public void setOperatorIndex(int op)
public String getOperatorString()
public boolean opEquals(Operator o)
public Expression simplify()
simplify in class Expression
public void fillInGenSet(Collection in,
Collection gen)
fillInGenSet in class Expressionpublic void fillDeclarables(Collection used)
fillDeclarables in class Expressionpublic void makeDeclaration(Set done)
makeDeclaration in class Expressionpublic boolean hasSideEffects(Expression expr)
hasSideEffects in class Expressionexpr - the expression that should not change.public boolean containsConflictingLoad(MatchableOperator op)
containsConflictingLoad in class Expressionop - The combineable operator.
public boolean containsMatchingLoad(CombineableOperator comb)
containsMatchingLoad in class Expressioncomb - The store expression.
ClassCastException, - if e.getOperator
is not a CombineableOperator.public int canCombine(CombineableOperator combOp)
canCombine in class ExpressioncombOp - The store expression, must be of type void.
ClassCastException, - if e.getOperator
is not a CombineableOperator.public Expression combine(CombineableOperator comb)
combine in class Expressioncomb - The store expression.
ClassCastException, - if e.getOperator
is not a CombineableOperator.public boolean subsEquals(Operator other)
public boolean equals(Object o)
equals in class Objectpublic boolean isConstant()
isConstant in class Expression
public abstract void dumpExpression(TabbedPrintWriter writer)
throws IOException
dumpExpression in class ExpressionIOException
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||