com.ibm.wala.fixedpoint.impl
Class UnaryOperator
java.lang.Object
com.ibm.wala.fixedpoint.impl.AbstractOperator
com.ibm.wala.fixedpoint.impl.UnaryOperator
- All Implemented Interfaces:
- FixedPointConstants
- Direct Known Subclasses:
- BitVectorFilter, BitVectorIdentity, BitVectorKillGen, BitVectorMinusVector, BitVectorOr, BitVectorUnionConstant, BitVectorUnionVector, BooleanIdentity, PropagationCallGraphBuilder.FilterOperator, PropagationCallGraphBuilder.InstanceArrayStoreOperator, PropagationCallGraphBuilder.InstancePutFieldOperator, TrueOperator, UnaryBitVectorUnion, UnaryOr, UnarySideEffect
public abstract class UnaryOperator
- extends AbstractOperator
- implements FixedPointConstants
An operator of the form lhs = op (rhs)
| Methods inherited from class java.lang.Object |
clone, finalize, getClass, notify, notifyAll, wait, wait, wait |
UnaryOperator
public UnaryOperator()
evaluate
public abstract byte evaluate(IVariable lhs,
IVariable rhs)
- Evaluate this equation, setting a new value for the left-hand side.
- Returns:
- true if the lhs value changes. false otherwise.
makeEquation
public UnaryStatement makeEquation(IVariable lhs,
IVariable rhs)
- Create an equation which uses this operator Override in subclasses for
efficiency.
isIdentity
public boolean isIdentity()
- Method isIdentity.
- Returns:
- boolean
evaluate
public byte evaluate(IVariable lhs,
IVariable[] rhs)
throws UnimplementedError
- Description copied from class:
AbstractOperator
- Evaluate this equation, setting a new value for the
left-hand side.
- Specified by:
evaluate in class AbstractOperator
- Returns:
- a code that indicates: 1) has the lhs value changed?
2) has this equation reached a fixed-point, in that
we never have to evaluate the equation again, even
if rhs operands change?
- Throws:
UnimplementedError