soot.jimple.spark.ondemand.genericutil
Class ArraySetMultiMap<K,V>

java.lang.Object
  extended by soot.jimple.spark.ondemand.genericutil.ArraySetMultiMap<K,V>
All Implemented Interfaces:
MultiMap<K,V>
Direct Known Subclasses:
SootUtil.FieldAccessMap, SootUtil.FieldToEdgesMap

public class ArraySetMultiMap<K,V>
extends Object


Field Summary
protected  boolean create
           
static ArraySetMultiMap EMPTY
           
protected  Map<K,Set<V>> map
           
 
Constructor Summary
ArraySetMultiMap()
           
ArraySetMultiMap(boolean create)
           
 
Method Summary
 void clear()
           
 boolean containsKey(K key)
           
protected  Set<V> createSet()
           
protected  Set<V> emptySet()
           
 ArraySet<V> get(K key)
           
 boolean isEmpty()
           
 Set<K> keySet()
           
 boolean put(K key, V val)
           
 boolean putAll(K key, Collection<? extends V> vals)
           
 boolean remove(K key, V val)
           
 Set<V> removeAll(K key)
           
 int size()
           
 String toString()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

EMPTY

public static final ArraySetMultiMap EMPTY

map

protected final Map<K,Set<V>> map

create

protected final boolean create
Constructor Detail

ArraySetMultiMap

public ArraySetMultiMap()

ArraySetMultiMap

public ArraySetMultiMap(boolean create)
Method Detail

createSet

protected Set<V> createSet()

emptySet

protected Set<V> emptySet()

get

public ArraySet<V> get(K key)
Specified by:
get in interface MultiMap<K,V>

put

public boolean put(K key,
                   V val)
Specified by:
put in interface MultiMap<K,V>

remove

public boolean remove(K key,
                      V val)
Specified by:
remove in interface MultiMap<K,V>

removeAll

public Set<V> removeAll(K key)
Specified by:
removeAll in interface MultiMap<K,V>

keySet

public Set<K> keySet()
Specified by:
keySet in interface MultiMap<K,V>

containsKey

public boolean containsKey(K key)
Specified by:
containsKey in interface MultiMap<K,V>

size

public int size()
Specified by:
size in interface MultiMap<K,V>

toString

public String toString()
Specified by:
toString in interface MultiMap<K,V>
Overrides:
toString in class Object

putAll

public boolean putAll(K key,
                      Collection<? extends V> vals)
Specified by:
putAll in interface MultiMap<K,V>

clear

public void clear()
Specified by:
clear in interface MultiMap<K,V>

isEmpty

public boolean isEmpty()
Specified by:
isEmpty in interface MultiMap<K,V>