Package hudson.util

Class Iterators

    • Constructor Detail

      • Iterators

        public Iterators()
    • Method Detail

      • empty

        public static <T> Iterator<T> empty()
        Returns the empty iterator.
      • reverse

        public static <T> Iterable<T> reverse​(List<T> lst)
        Returns the Iterable that lists items in the reverse order.
        Since:
        1.150
      • wrap

        public static <T> Iterable<T> wrap​(Iterable<T> base)
        Returns an Iterable that lists items in the normal order but which hides the base iterator implementation details.
        Since:
        1.492
      • sequence

        public static List<Integer> sequence​(int start,
                                             int end,
                                             int step)
        Returns a list that represents [start,end). For example sequence(1,5,1)={1,2,3,4}, and sequence(7,1,-2)={7.5,3}
        Since:
        1.150
      • sequence

        public static List<Integer> sequence​(int start,
                                             int end)
      • reverseSequence

        public static List<Integer> reverseSequence​(int start,
                                                    int end,
                                                    int step)
        The short cut for reverse(sequence(start,end,step)).
        Since:
        1.150
      • reverseSequence

        public static List<Integer> reverseSequence​(int start,
                                                    int end)
      • cast

        public static <T> Iterator<T> cast​(Iterator<? extends T> itr)
        Casts Iterator by taking advantage of its covariant-ness.
      • cast

        public static <T> Iterable<T> cast​(Iterable<? extends T> itr)
        Casts Iterable by taking advantage of its covariant-ness.
      • subType

        public static <U,​T extends U> Iterator<T> subType​(Iterator<U> itr,
                                                                Class<T> type)
        Returns an Iterator that only returns items of the given subtype.
      • removeNull

        public static <T> Iterator<T> removeNull​(Iterator<T> itr)
        Wraps another iterator and throws away nulls.
      • removeDups

        public static <T> Iterator<T> removeDups​(Iterator<T> iterator)
        Filters another iterator by eliminating duplicates.
      • removeDups

        public static <T> Iterable<T> removeDups​(Iterable<T> base)
        Filters another iterator by eliminating duplicates.
      • limit

        public static <T> Iterator<T> limit​(Iterator<? extends T> base,
                                            Iterators.CountingPredicate<? super T> filter)
        Returns the elements in the base iterator until it hits any element that doesn't satisfy the filter. Then the rest of the elements in the base iterator gets ignored.
        Since:
        1.485
      • skip

        @Restricted(org.kohsuke.accmod.restrictions.NoExternalUse.class)
        public static void skip​(@NonNull
                                Iterator<?> iterator,
                                int count)
        Calls next() on iterator, either count times or until hasNext() returns false, whichever comes first.
        Parameters:
        iterator - some iterator
        count - a nonnegative count