Package xyz.cofe.iter

Interface TreeIterBuilder<A>

Type Parameters:
A - тип узла дерева
All Known Implementing Classes:
TreeIterBuilderDefault

public interface TreeIterBuilder<A>
Создание итератора по дереву
  • Method Details

    • walk

      Eterable<A> walk()
      Создание итератора
      Returns:
      итератор
    • go

      Создание итератора
      Returns:
      итератор
    • poll

      TreeIterBuilder<A> poll​(java.util.function.Function<java.util.List<TreeStep<A>>,​TreeStep<A>> poll)
      Указывает функцию извлечения очередного узла из рабочего набора
      Parameters:
      poll - функция
      Returns:
      self ссылка
    • push

      TreeIterBuilder<A> push​(java.util.function.Consumer<TreeIterator.PushStep<A>> push)
      Указывает функцию помещения очередного узла в рабочий набор
      Parameters:
      push - функция
      Returns:
      self ссылка
    • filter

      TreeIterBuilder<A> filter​(java.util.function.Predicate<TreeStep<A>> allow)
      Указывает функцию фильтрации
      Parameters:
      allow - функция фильтрации
      Returns:
      self ссылка
    • pushFirst

      TreeIterBuilder<A> pushFirst()
      Помещать в начало набора очередной узел
      Returns:
      self ссылка
    • pushLast

      TreeIterBuilder<A> pushLast()
      Помещать в конец набора очередной узел
      Returns:
      self ссылка
    • pushOrdered

      TreeIterBuilder<A> pushOrdered()
      Помещать в начало набора очередной узел, в порядке извлечения
      Returns:
      self ссылка
    • pollFirst

      TreeIterBuilder<A> pollFirst()
      Брать первый узел из рабочего набора узлов
      Returns:
      self ссылка
    • pollLast

      TreeIterBuilder<A> pollLast()
      Брать последний узел из рабочего набора узлов
      Returns:
      self ссылка
    • checkCycles

      TreeIterBuilder<A> checkCycles()
      Проверять на циклы при обходе
      Returns:
      self ссылка