code: public static <Type> PooledLinkedListReversedIterator<Type> iterateReversed(final PooledLinkedList<Type> list) {
          return new PooledLinkedListReversedIterator<Type>(list);
      }
docs: Since {@link PooledLinkedList} does not implement {@link Iterable} interface, a specialized iterator
  implementation is provided: {@link PooledLinkedListReversedIterator}. This class implements {@link Iterable} for
  extra utility - it can be safely used in for-each loops. It can be also reused thanks to reset method (which is
  automatically called when used in for-each loops. Removal is supported. Instead of iterating from head (first
  element) to tail (last element), iteration is reversed and started with tail.
  
  <p>
  While not validated, lists cannot be iterated over in nested loops or concurrently. New elements should not be
  added during iteration and while appending might work during iteration, it can cause problems and unexpected
  behaviors.
  
  @param list cannot be null.
  @return new reusable {@link PooledLinkedListReversedIterator}.
  @param <Type> type of stored values.