# DoubleLinkedQueue<E>.from constructor

DoubleLinkedQueue<E>.from(Iterable elements)

Creates a double-linked queue containing all `elements`.

The element order in the queue is as if the elements were added using addLast in the order provided by `elements.iterator`.

All the `elements` should be instances of `E`. The `elements` iterable itself may have any element type, so this constructor can be used to down-cast a `Queue`, for example as:

    Queue<SuperType> superQueue = ...;
    Queue<SubType> subQueue =
        new DoubleLinkedQueue<SubType>.from(superQueue.whereType<SubType>());

## Implementation

    factory DoubleLinkedQueue.from(Iterable elements) {
      Queue<E> list = new DoubleLinkedQueue<E>();
      for (final e in elements) {
        list.addLast(e);
      }
      return list;
    }