scala.collection.mutable

class SynchronizedPriorityQueue

[source: scala/collection/mutable/SynchronizedPriorityQueue.scala]

class SynchronizedPriorityQueue[A](implicit ord : Ordering[A])
extends PriorityQueue[A]
This class implements synchronized priority queues using a heap. The elements of the queue have to be ordered in terms of the Ordered[T] class.
Author
Matthias Zenger
Version
1.0, 03/05/2004
Since
1
Values and Variables inherited from ResizableArray
array, size0
Method Summary
override def ++= (it : Iterator[A]) : SynchronizedPriorityQueue[A]
Adds all elements provided by an iterator into the priority queue.
def ++= (iter : Iterable[A]) : SynchronizedPriorityQueue[A]
Adds all elements provided by an Iterable object into the priority queue.
override def += (elem : A) : SynchronizedPriorityQueue[A]
Inserts a single element into the priority queue.
override def clear : Unit
Removes all elements from the queue. After this operation is completed, the queue will be empty.
override def dequeue : A
Returns the element with the highest priority in the queue, and removes this element from the queue.
override def enqueue (elems : A*) : Unit
Adds all elements to the queue.
override def equals (that : Any) : Boolean
Checks if two queues are structurally identical.
override def isEmpty : Boolean
Checks if the queue is empty.
override def iterator : Iterator[A]
Returns an iterator which yiels all the elements of the priority queue in descending priority order.
override def max : A
Returns the element with the highest priority in the queue, or throws an error if there is no element contained in the queue.
override def toString : java.lang.String
Returns a textual representation of a queue as a string.
Methods inherited from PriorityQueue
length, repr, foreach, fixUp, fixDown, +, +, ++, ++, hashCode, toQueue, toList, clone
Methods inherited from Growable
+=, ++=
Methods inherited from ResizableArray
companion, initialSize, apply, update, copyToArray, reduceToSize, ensureSize, swap, copy
Methods inherited from IndexedSeqLike
thisCollection, toCollection, view, view
Methods inherited from IndexedSeqLike
forall, exists, find, foldLeft, foldRight, reduceLeft, reduceRight, zip, zipWithIndex, slice, head, tail, last, init, take, drop, takeRight, dropRight, splitAt, takeWhile, dropWhile, span, sameElements, lengthCompare, segmentLength, indexWhere, lastIndexWhere, reverse, reverseIterator, startsWith, endsWith
Methods inherited from SeqLike
size, isDefinedAt, prefixLength, indexWhere, findIndexOf, indexOf, indexOf, lastIndexOf, lastIndexOf, lastIndexWhere, reverseMap, reversedElements, startsWith, indexOfSeq, indexOfSeq, lastIndexOfSeq, lastIndexOfSeq, contains, union, diff, intersect, removeDuplicates, patch, updated, +:, :+, padTo, sortWith, sortWith, sortBy, toSeq, indices, findLastIndexOf, equalsWith, containsSlice, projection
Methods inherited from PartialFunction
orElse, andThen
Methods inherited from Function1
compose
Methods inherited from IterableLike
elements, toIterable, zipAll, toStream, canEqual, first, firstOption
Methods inherited from GenericTraversableTemplate
newBuilder, genericBuilder, unzip, flatten, transpose
Methods inherited from TraversableLike
nonEmpty, hasDefiniteSize, ++, ++, map, flatMap, filter, filterNot, partialMap, remove, partition, groupBy, count, /:, :\, reduceLeftOption, reduceRightOption, sum, product, min, max, headOption, lastOption, copyToBuffer, copyToArray, toArray, toIndexedSeq, toSet, mkString, mkString, mkString, addString, addString, addString, stringPrefix, withFilter
Methods inherited from AnyRef
getClass, notify, notifyAll, wait, wait, wait, finalize, ==, !=, eq, ne, synchronized
Methods inherited from Any
==, !=, isInstanceOf, asInstanceOf
Method Details
override def isEmpty : Boolean
Checks if the queue is empty.
Returns
true, iff there is no element in the queue.
Overrides
PriorityQueue.isEmpty

override def +=(elem : A) : SynchronizedPriorityQueue[A]
Inserts a single element into the priority queue.
Parameters
elem - the element to insert
Overrides
PriorityQueue.+=

def ++=(iter : Iterable[A]) : SynchronizedPriorityQueue[A]
Adds all elements provided by an Iterable object into the priority queue.
Parameters
iter - an iterable object

override def ++=(it : Iterator[A]) : SynchronizedPriorityQueue[A]
Adds all elements provided by an iterator into the priority queue.
Parameters
it - an iterator

override def enqueue(elems : A*) : Unit
Adds all elements to the queue.
Parameters
elems - the elements to add.
Overrides
PriorityQueue.enqueue

override def dequeue : A
Returns the element with the highest priority in the queue, and removes this element from the queue.
Returns
the element with the highest priority.
Overrides
PriorityQueue.dequeue

override def max : A
Returns the element with the highest priority in the queue, or throws an error if there is no element contained in the queue.
Returns
the element with the highest priority.
Overrides
PriorityQueue.max

override def clear : Unit
Removes all elements from the queue. After this operation is completed, the queue will be empty.
Overrides
PriorityQueue.clear

override def iterator : Iterator[A]
Returns an iterator which yiels all the elements of the priority queue in descending priority order.
Returns
an iterator over all elements sorted in descending order.
Overrides
PriorityQueue.iterator

override def equals(that : Any) : Boolean
Checks if two queues are structurally identical.
Returns
true, iff both queues contain the same sequence of elements.
Overrides
PriorityQueue.equals

override def toString : java.lang.String
Returns a textual representation of a queue as a string.
Returns
the string representation of this queue.
Overrides
PriorityQueue.toString