public interface IState<StateType extends IState<StateType,ContextType,CallEdgeType>,ContextType extends IContext<ContextType>,CallEdgeType extends ICallEdge<StateType>>
extends java.lang.Cloneable
Modifier and Type | Method and Description |
---|---|
StateType |
clone()
Constructs a new state as a copy of this state.
|
java.lang.String |
diff(StateType old)
Returns a description of the changes from the old state to this state.
|
BasicBlock |
getBasicBlock()
Returns the basic block for this state.
|
ContextType |
getContext()
Returns the context for this state.
|
boolean |
isBottom()
Checks whether this abstract state is the bottom abstract state.
|
void |
localize(StateType s)
Localizes this state according to the given existing state.
|
boolean |
propagate(StateType s,
boolean funentry,
boolean widen)
Propagates the given state into this state.
|
void |
setToBottom()
Sets this state to the bottom abstract state.
|
java.lang.String |
toDot()
Produces a graphviz dot representation of this state.
|
java.lang.String |
toStringBrief()
Returns a brief description of the state.
|
ContextType |
transform(CallEdgeType edge,
ContextType edge_context,
java.util.Map<ContextType,StateType> callee_entry_states,
BasicBlock callee)
Transforms this state according to the given edge.
|
boolean |
transformInverse(CallEdgeType edge,
BasicBlock callee,
ContextType callee_context)
Transforms this state inversely according to the given edge.
|
StateType clone()
java.lang.String diff(StateType old)
BasicBlock getBasicBlock()
ContextType getContext()
boolean isBottom()
void localize(StateType s)
boolean propagate(StateType s, boolean funentry, boolean widen)
void setToBottom()
java.lang.String toDot()
java.lang.String toStringBrief()
ContextType transform(CallEdgeType edge, ContextType edge_context, java.util.Map<ContextType,StateType> callee_entry_states, BasicBlock callee)
edge
- edge informationcallee_entry_states
- all states of the callee entrycallee
- the callee function entryboolean transformInverse(CallEdgeType edge, BasicBlock callee, ContextType callee_context)
Copyright © 2009-2019 Aarhus University