DoubleLinkedQueue<E> class

A Queue implementation based on a double-linked list.

Allows constant time add, remove-at-ends and peek operations.

Inheritance
Implemented types

Constructors

DoubleLinkedQueue()
DoubleLinkedQueue.from(Iterable elements)
factory
Creates a double-linked queue containing all elements. [...]
DoubleLinkedQueue.of(Iterable<E> elements)
factory
Creates a double-linked queue from elements. [...]

Properties

first → E
read-only, override
Returns the first element. [...]
hashCodeint
read-only, inherited
The hash code for this object. [...]
isEmptybool
read-only, override
Returns true if there are no elements in this collection. [...]
isNotEmptybool
read-only, inherited
Returns true if there is at least one element in this collection. [...]
iterator → _DoubleLinkedQueueIterator<E>
read-only, override
Returns a new Iterator that allows iterating the elements of this Iterable. [...]
last → E
read-only, override
Returns the last element. [...]
lengthint
read-only, override
Returns the number of elements in this. [...]
runtimeTypeType
read-only, inherited
A representation of the runtime type of the object.
single → E
read-only, override
Checks that this iterable has only one element, and returns that element. [...]

Methods

add(E value) → void
override
Adds value at the end of the queue.
addAll(Iterable<E> iterable) → void
override
Adds all elements of iterable at the end of the queue. The length of the queue is extended by the length of iterable.
addFirst(E value) → void
override
Adds value at the beginning of the queue.
addLast(E value) → void
override
Adds value at the end of the queue.
any(bool test(E element)) → bool
inherited
Checks whether any element of this iterable satisfies test. [...]
cast<R>() → Queue<R>
override
Provides a view of this iterable as an iterable of R instances. [...]
clear() → void
override
Removes all elements in the queue. The size of the queue becomes zero.
contains(Object? element) → bool
inherited
Whether the collection contains an element equal to element. [...]
elementAt(int index) → E
inherited
Returns the indexth element. [...]
every(bool test(E element)) → bool
inherited
Checks whether every element of this iterable satisfies test. [...]
expand<T>(Iterable<T> f(E element)) → Iterable<T>
inherited
Expands each element of this Iterable into zero or more elements. [...]
firstEntry() → DoubleLinkedQueueEntry<E>?
The entry object of the first element in the queue. [...]
firstWhere(bool test(E element), {E orElse()}) → E
inherited
Returns the first element that satisfies the given predicate test. [...]
fold<T>(T initialValue, T combine(T previousValue, E element)) → T
inherited
Reduces a collection to a single value by iteratively combining each element of the collection with an existing value [...]
followedBy(Iterable<E> other) → Iterable<E>
inherited
Returns the lazy concatenation of this iterable and other. [...]
forEach(void f(E element)) → void
inherited
Applies the function f to each element of this collection in iteration order.
forEachEntry(void action(DoubleLinkedQueueEntry<E> element)) → void
Calls action for each entry object of this double-linked queue. [...]
join([String separator = ""]) → String
inherited
Converts each element to a String and concatenates the strings. [...]
lastEntry() → DoubleLinkedQueueEntry<E>?
The entry object of the last element in the queue. [...]
lastWhere(bool test(E element), {E orElse()}) → E
inherited
Returns the last element that satisfies the given predicate test. [...]
map<T>(T f(E e)) → Iterable<T>
inherited
Returns a new lazy Iterable with elements that are created by calling f on each element of this Iterable in iteration order. [...]
noSuchMethod(Invocation invocation) → dynamic
inherited
Invoked when a non-existent method or property is accessed. [...]
reduce(E combine(E value, E element)) → E
inherited
Reduces a collection to a single value by iteratively combining elements of the collection using the provided function. [...]
remove(Object? o) → bool
override
Remove a single instance of value from the queue. [...]
removeFirst() → E
override
Removes and returns the first element of this queue. [...]
removeLast() → E
override
Removes and returns the last element of the queue. [...]
removeWhere(bool test(E element)) → void
override
Removes all elements matched by test from the queue. [...]
retainWhere(bool test(E element)) → void
override
Removes all elements not matched by test from the queue. [...]
singleWhere(bool test(E element), {E orElse()}) → E
inherited
Returns the single element that satisfies test. [...]
skip(int count) → Iterable<E>
inherited
Returns an Iterable that provides all but the first count elements. [...]
skipWhile(bool test(E value)) → Iterable<E>
inherited
Returns an Iterable that skips leading elements while test is satisfied. [...]
take(int count) → Iterable<E>
inherited
Returns a lazy iterable of the count first elements of this iterable. [...]
takeWhile(bool test(E value)) → Iterable<E>
inherited
Returns a lazy iterable of the leading elements satisfying test. [...]
toList({bool growable = true}) → List<E>
inherited
Creates a List containing the elements of this Iterable. [...]
toSet() → Set<E>
inherited
Creates a Set containing the same elements as this iterable. [...]
toString() → String
override
Returns a string representation of (some of) the elements of this. [...]
where(bool test(E element)) → Iterable<E>
inherited
Returns a new lazy Iterable with all elements that satisfy the predicate test. [...]
whereType<T>() → Iterable<T>
inherited
Returns a new lazy Iterable with all elements that have type T. [...]

Operators

operator ==(Object other) → bool
inherited
The equality operator. [...]

© 2012 the Dart project authors
Licensed under the Creative Commons Attribution-ShareAlike License v4.0.
https://api.dart.dev/stable/2.13.0/dart-collection/DoubleLinkedQueue-class.html