java.lang.Object
xyz.cofe.iter.TreeStep<A>
- Type Parameters:
A- дерево
public class TreeStep<A>
extends java.lang.Object
Один шаг при обходе дерева
-
Field Summary
-
Constructor Summary
-
Method Summary
Modifier and Type Method Description voideach(java.util.function.Consumer<A> visitor)Обход узлов пути от дочернего к корнюTreeStep<A>follow(A a)Создание шага для дочернего узлаjava.util.Map<A,java.lang.Integer>frequency()Получение частотности узлов в путиintgetLevel()Возвращает уровень вложенности для узлаAgetNode()Получение текущего узлаTreeStep<A>getParent()Получение родительского узлаbooleanhasCycles()Проверка на наличие циклов в путиjava.util.List<A>nodeList()Получение пути ввиде спискаA[]nodePath(java.lang.Class<A> nodeClass)Получение пути ввиде массива узловEterable<A>nodes()Получение пути ввиде итератора
-
Field Details
-
Constructor Details
-
Method Details
-
getNode
Получение текущего узла- Returns:
- текущий узел
-
getParent
Получение родительского узла- Returns:
- родительский "узел"
-
follow
Создание шага для дочернего узла- Parameters:
a- дочерний узел- Returns:
- шаг
-
getLevel
public int getLevel()Возвращает уровень вложенности для узла- Returns:
- 0 - корень
-
nodePath
Получение пути ввиде массива узлов- Parameters:
nodeClass- Тип жлементов массива- Returns:
- массив узлов
-
nodeList
Получение пути ввиде списка- Returns:
- список
-
nodes
Получение пути ввиде итератора- Returns:
- путь
-
each
Обход узлов пути от дочернего к корню- Parameters:
visitor- посититель
-
frequency
Получение частотности узлов в пути- Returns:
- частотность узлов (узел / количесто сслок)
-
hasCycles
public boolean hasCycles()Проверка на наличие циклов в пути- Returns:
- true - циклы есть
-