code: public static <T> Supplier<Optional<T>> supplier(Iterator<T> adaptee) {
          return new IteratingSupplier<T>(adaptee);
      }
docs: Adapts an iterator to a supplier.
  
  @param adaptee the runnable to be adapted
  @return the adapted supplier