@Test public void shouldHaveOne() { assertThat(over(this, Objects::isNull, t -> null), is(contains(this))); }
@Nonnull public static <T> Iterable<T> over(@Nullable final T head, @Nonnull final Predicate<T> terminate, @Nonnull final Function<T, T> traverse) { return new LinkedIterable<>(head, terminate, traverse); }
LinkedIterable implements Iterable<T> { @Nonnull public static <T> Iterable<T> over(@Nullable final T head, @Nonnull final Predicate<T> terminate, @Nonnull final Function<T, T> traverse) { return new LinkedIterable<>(head, terminate, traverse); } }
LinkedIterable implements Iterable<T> { @Nonnull public static <T> Iterable<T> over(@Nullable final T head, @Nonnull final Predicate<T> terminate, @Nonnull final Function<T, T> traverse) { return new LinkedIterable<>(head, terminate, traverse); } private  LinkedIterable(final T head, final Predicate<T> terminate,
            final Function<T, T> traverse); }
LinkedIterable implements Iterable<T> { @Nonnull public static <T> Iterable<T> over(@Nullable final T head, @Nonnull final Predicate<T> terminate, @Nonnull final Function<T, T> traverse) { return new LinkedIterable<>(head, terminate, traverse); } private  LinkedIterable(final T head, final Predicate<T> terminate,
            final Function<T, T> traverse); @Nonnull static Iterable<T> over(@Nullable final T head,
            @Nonnull final Predicate<T> terminate, @Nonnull final Function<T, T> traverse); @Nonnull static Iterable<T> over(@Nonnull final Predicate<T> terminate,
            @Nonnull final Function<T, T> traverse); @Override Iterator<T> iterator(); @Override Spliterator<T> spliterator(); }
LinkedIterable implements Iterable<T> { @Nonnull public static <T> Iterable<T> over(@Nullable final T head, @Nonnull final Predicate<T> terminate, @Nonnull final Function<T, T> traverse) { return new LinkedIterable<>(head, terminate, traverse); } private  LinkedIterable(final T head, final Predicate<T> terminate,
            final Function<T, T> traverse); @Nonnull static Iterable<T> over(@Nullable final T head,
            @Nonnull final Predicate<T> terminate, @Nonnull final Function<T, T> traverse); @Nonnull static Iterable<T> over(@Nonnull final Predicate<T> terminate,
            @Nonnull final Function<T, T> traverse); @Override Iterator<T> iterator(); @Override Spliterator<T> spliterator(); static final int SPLITERATOR_CHARACTERISTICS; }