scala.collection.immutable
class Queue

[source: `scala/collection/immutable/Queue.scala`]

@serializable
`` `class` Queue[+A](elem : A*)
  `extends` Seq[A]

  `Queue` objects implement data structures that allow to insert and retrieve elements in a first-in-first-out (FIFO) manner.

Author
  Erik Stenman
Version
  1.0, 08/07/2003

Value Summary
`protected val` | in : List[A]
`protected val` | out : List[A]

Method Summary
`def` | + [B >: A](elem : B) : Queue[B] Creates a new queue with element added at the end of the old queue.
`def` | + [B >: A](iter : Iterable[B]) : Queue[B] Returns a new queue with all all elements provided by an `Iterable` object added at the end of the queue. The elements are prepended in the order they are given out by the iterator.
`def` | apply (n : Int) : A Returns the `n`-th element of this queue. The first element is at position 0.
`def` | dequeue : (A, Queue[A]) Returns a tuple with the first element in the queue, and a new queue with this element removed.
`def` | elements : Iterator[A] Returns the elements in the list as an iterator
`def` | enqueue [B >: A](elems : B*) : Queue[B] Returns a new queue with all elements added.
`override def` | equals (o : Any) : Boolean Compares two queues for equality by comparing each element in the queues.
`def` | front : A Returns the first element in the queue, or throws an error if there is no element contained in the queue.
`override def` | hashCode : Int
`override def` | isEmpty : Boolean Checks if the queue is empty.
`def` | length : Int Returns the length of the queue.
`protected def` | mkQueue [A](i : List[A], o : List[A]) : Queue[A]
`override def` | toString : String Returns a string representation of this queue.

Methods inherited from Seq
size, concat, ++, isDefinedAt, lastIndexOf, map, flatMap, filter, take, drop, takeWhile, dropWhile, reverse, contains, slice, subseq, toArray

Methods inherited from Collection
stringPrefix

Methods inherited from Iterable
foreach, forall, exists, find, findIndexOf, indexOf, foldLeft, foldRight, /:, :\, reduceLeft, reduceRight, copyToBuffer, sameElements, toList, mkString, mkString, addString, addString, copyToArray, projection, hasDefiniteSize

Methods inherited from PartialFunction
orElse, andThen

Methods inherited from Function1
compose

Methods inherited from AnyRef
getClass, clone, notify, notifyAll, wait, wait, wait, finalize, ==, !=, eq, ne, synchronized

Methods inherited from Any
==, !=, isInstanceOf, asInstanceOf

Value Details

`protected` `val` in : List[A]

`protected` `val` out : List[A]

Method Details

`protected` `def` mkQueue[A](i : List[A], o : List[A]) : Queue[A]

`` `def` apply(n : Int) : A

  Returns the `n`-th element of this queue. The first element is at position 0.

Parameters
  `n -` index of the element to return
Returns
  the element at position `n` in this queue.
Throws
  Predef.NoSuchElementException - if the queue is too short.

`` `def` elements : Iterator[A]

  Returns the elements in the list as an iterator

`override` `def` isEmpty : Boolean

  Checks if the queue is empty.

Returns
  true, iff there is no element in the queue.

Overrides
  Seq.isEmpty

`` `def` length : Int

  Returns the length of the queue.

Overrides
  Seq.length

`` `def` +[B >: A](elem : B) : Queue[B]

  Creates a new queue with element added at the end of the old queue.

Parameters
  `elem -` the element to insert

`` `def` +[B >: A](iter : Iterable[B]) : Queue[B]

  Returns a new queue with all all elements provided by an `Iterable` object added at the end of the queue. The elements are prepended in the order they are given out by the iterator.

Parameters
  `iter -` an iterable object

`` `def` enqueue[B >: A](elems : B*) : Queue[B]

  Returns a new queue with all elements added.

Parameters
  `elems -` the elements to add.

`` `def` dequeue : (A, Queue[A])

  Returns a tuple with the first element in the queue, and a new queue with this element removed.

Throws
  Predef.NoSuchElementException -
Returns
  the first element of the queue.

`` `def` front : A

  Returns the first element in the queue, or throws an error if there is no element contained in the queue.

Throws
  Predef.NoSuchElementException -
Returns
  the first element.

`override` `def` toString : String

  Returns a string representation of this queue.

`override` `def` equals(o : Any) : Boolean

  Compares two queues for equality by comparing each element in the queues.

Returns
  true, iff the two queues are structurally equal.

`override` `def` hashCode : Int