S - the type of the store returned by copy and that is used in leastUpperBound. Usually it is the implementing class itself, e.g. in T extends
     Store<T>.public interface Store<S extends Store<S>>
| Modifier and Type | Interface and Description | 
|---|---|
| static class  | Store.FlowRuleA flow rule describes how stores flow along one edge between basic blocks. | 
| static class  | Store.Kind | 
| Modifier and Type | Method and Description | 
|---|---|
| boolean | canAlias(FlowExpressions.Receiver a,
        FlowExpressions.Receiver b)Can the objects  aandbbe aliases? Returns a conservative answer (i.e.,
 returnstrueif not enough information is available to determine aliasing). | 
| S | copy() | 
| S | leastUpperBound(S other)Compute the least upper bound of two stores. | 
| void | visualize(CFGVisualizer<?,S,?> viz)Delegate visualization responsibility to a visualizer. | 
S copy()
S leastUpperBound(S other)
Important: This method must fulfill the following contract:
this.
   other.
   this, even if the signature is
       more permissive.
   boolean canAlias(FlowExpressions.Receiver a, FlowExpressions.Receiver b)
a and b be aliases? Returns a conservative answer (i.e.,
 returns true if not enough information is available to determine aliasing).void visualize(CFGVisualizer<?,S,?> viz)
viz - the visualizer to visualize this store