soot.toolkits.scalar
Class ArraySparseSet

java.lang.Object
  |
  +--soot.toolkits.scalar.AbstractFlowSet
        |
        +--soot.toolkits.scalar.ArraySparseSet

public class ArraySparseSet
extends AbstractFlowSet

Reference implementation for a FlowSet. Items are stored in an Array.


Constructor Summary
ArraySparseSet()
           
 
Method Summary
 void add(java.lang.Object e)
          Adds obj to this.
 void clear()
          implemented, but *very* inefficient.
 java.lang.Object clone()
          Clones the current FlowSet.
 boolean contains(java.lang.Object obj)
          Returns true if this FlowSet contains obj.
 void copy(FlowSet destFlow)
          Copies the current FlowSet into dest.
 void difference(FlowSet otherFlow, FlowSet destFlow)
          Returns the set difference (this join ~other) of this FlowSet and other, putting result into dest.
 java.lang.Object emptySet()
          implemented, but inefficient.
 boolean equals(java.lang.Object otherFlow)
           
 void intersection(FlowSet otherFlow, FlowSet destFlow)
          Returns the intersection (meet) of this FlowSet and other, putting result into dest.
 boolean isEmpty()
          Returns true if this FlowSet is the empty set.
 void remove(java.lang.Object obj)
          Removes obj from this.
 int size()
          Returns the size of the current FlowSet.
 java.util.List toList()
          Returns a unbacked list of elements in this set.
 void union(FlowSet otherFlow, FlowSet destFlow)
          Returns the union (join) of this FlowSet and other, putting result into dest.
 
Methods inherited from class soot.toolkits.scalar.AbstractFlowSet
add, difference, intersection, iterator, remove, toString, union
 
Methods inherited from class java.lang.Object
finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

ArraySparseSet

public ArraySparseSet()
Method Detail

clone

public java.lang.Object clone()
Description copied from interface: FlowSet
Clones the current FlowSet.
Overrides:
clone in class AbstractFlowSet

emptySet

public java.lang.Object emptySet()
Description copied from class: AbstractFlowSet
implemented, but inefficient.
Overrides:
emptySet in class AbstractFlowSet

clear

public void clear()
Description copied from class: AbstractFlowSet
implemented, but *very* inefficient.
Overrides:
clear in class AbstractFlowSet

size

public int size()
Description copied from interface: FlowSet
Returns the size of the current FlowSet.
Overrides:
size in class AbstractFlowSet

isEmpty

public boolean isEmpty()
Description copied from interface: FlowSet
Returns true if this FlowSet is the empty set.
Overrides:
isEmpty in class AbstractFlowSet

toList

public java.util.List toList()
Returns a unbacked list of elements in this set.
Overrides:
toList in class AbstractFlowSet

add

public void add(java.lang.Object e)
Description copied from interface: FlowSet
Adds obj to this.
Overrides:
add in class AbstractFlowSet

remove

public void remove(java.lang.Object obj)
Description copied from interface: FlowSet
Removes obj from this.
Overrides:
remove in class AbstractFlowSet

union

public void union(FlowSet otherFlow,
                  FlowSet destFlow)
Description copied from interface: FlowSet
Returns the union (join) of this FlowSet and other, putting result into dest. dest, other and this could be the same object.
Overrides:
union in class AbstractFlowSet

intersection

public void intersection(FlowSet otherFlow,
                         FlowSet destFlow)
Description copied from interface: FlowSet
Returns the intersection (meet) of this FlowSet and other, putting result into dest. dest, other and this could be the same object.
Overrides:
intersection in class AbstractFlowSet

difference

public void difference(FlowSet otherFlow,
                       FlowSet destFlow)
Description copied from interface: FlowSet
Returns the set difference (this join ~other) of this FlowSet and other, putting result into dest. dest, other and this could be the same object.
Overrides:
difference in class AbstractFlowSet

contains

public boolean contains(java.lang.Object obj)
Description copied from interface: FlowSet
Returns true if this FlowSet contains obj.
Overrides:
contains in class AbstractFlowSet

equals

public boolean equals(java.lang.Object otherFlow)
Overrides:
equals in class AbstractFlowSet

copy

public void copy(FlowSet destFlow)
Description copied from interface: FlowSet
Copies the current FlowSet into dest.
Overrides:
copy in class AbstractFlowSet