DoubleLinkedQueue<E> class Null safety

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

Properties

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

Methods

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

Operators

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