description

# remove method

bool remove(

1. Object? o

)
override

Removes a single instance of `value` from the queue.

Returns `true` if a value was removed, or `false` if the queue contained no element equal to `value`.

## Implementation

    bool remove(Object? o) {
      _DoubleLinkedQueueEntry<E> entry = _sentinel._nextLink!;
      while (true) {
        var elementEntry = entry._asNonSentinelEntry();
        if (elementEntry == null) return false;
        bool equals = (elementEntry.element == o);
        if (!identical(this, elementEntry._queue)) {
          // Entry must still be in the queue.
          throw ConcurrentModificationError(this);
        }
        if (equals) {
          entry._remove();
          _elementCount--;
          return true;
        }
        entry = entry._nextLink!;
      }
    }