Package soot.util
Class PriorityQueue<E>
- java.lang.Object
-
- java.util.AbstractCollection<E>
-
- java.util.AbstractQueue<E>
-
- soot.util.PriorityQueue<E>
-
- Type Parameters:
E- the type of elements held in the universe
- All Implemented Interfaces:
Iterable<E>,Collection<E>,Queue<E>
public abstract class PriorityQueue<E> extends AbstractQueue<E>
A fixed size priority queue based on bitsets. The elements of the priority queue are ordered according to a given universe. This priority queue does not permitnullelements. Inserting of elements that are not part of the universe is also permitted (doing so will result in aNoSuchElementException).- Author:
- Steven Lambeth
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description booleanadd(E e)booleancontains(Object o)booleanisEmpty()static <E> PriorityQueue<E>noneOf(E[] universe)Creates a new empty priority queuestatic <E> PriorityQueue<E>noneOf(List<? extends E> universe)Creates a new empty priority queuestatic <E extends Numberable>
PriorityQueue<E>noneOf(List<? extends E> universe, boolean useNumberInterface)static <E> PriorityQueue<E>of(E[] universe)Creates a new full priority queuestatic <E> PriorityQueue<E>of(List<? extends E> universe)Creates a new full priority queuestatic <E extends Numberable>
PriorityQueue<E>of(List<? extends E> universe, boolean useNumberInterface)booleanoffer(E e)Epeek()Epoll()booleanremove(Object o)-
Methods inherited from class java.util.AbstractQueue
addAll, clear, element, remove
-
Methods inherited from class java.util.AbstractCollection
containsAll, iterator, removeAll, retainAll, size, toArray, toArray, toString
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface java.util.Collection
containsAll, equals, hashCode, iterator, parallelStream, removeAll, removeIf, retainAll, size, spliterator, stream, toArray, toArray, toArray
-
-
-
-
Method Detail
-
peek
public final E peek()
-
poll
public final E poll()
-
add
public final boolean add(E e)
- Specified by:
addin interfaceCollection<E>- Specified by:
addin interfaceQueue<E>- Overrides:
addin classAbstractQueue<E>- Throws:
NoSuchElementException- if e not part of the universeNullPointerException- if e isnull
-
offer
public final boolean offer(E e)
- Throws:
NoSuchElementException- if e not part of the universeNullPointerException- if e isnull
-
remove
public final boolean remove(Object o)
- Specified by:
removein interfaceCollection<E>- Overrides:
removein classAbstractCollection<E>
-
contains
public final boolean contains(Object o)
- Specified by:
containsin interfaceCollection<E>- Overrides:
containsin classAbstractCollection<E>
-
isEmpty
public boolean isEmpty()
- Specified by:
isEmptyin interfaceCollection<E>- Overrides:
isEmptyin classAbstractCollection<E>
-
of
public static <E> PriorityQueue<E> of(E[] universe)
Creates a new full priority queue- Type Parameters:
E-- Parameters:
universe-- Returns:
-
noneOf
public static <E> PriorityQueue<E> noneOf(E[] universe)
Creates a new empty priority queue- Type Parameters:
E-- Parameters:
universe-- Returns:
-
of
public static <E> PriorityQueue<E> of(List<? extends E> universe)
Creates a new full priority queue- Type Parameters:
E-- Parameters:
universe-- Returns:
-
noneOf
public static <E> PriorityQueue<E> noneOf(List<? extends E> universe)
Creates a new empty priority queue- Type Parameters:
E-- Parameters:
universe-- Returns:
-
of
public static <E extends Numberable> PriorityQueue<E> of(List<? extends E> universe, boolean useNumberInterface)
-
noneOf
public static <E extends Numberable> PriorityQueue<E> noneOf(List<? extends E> universe, boolean useNumberInterface)
-
-