java.lang.Object
xyz.cofe.collection.TreeImpl
public class TreeImpl
extends java.lang.Object
-
Field Summary
-
Constructor Summary
Constructors Constructor Description TreeImpl() -
Method Summary
Modifier and Type Method Description static <A extends Tree<A>>
java.util.List<Triple<java.lang.Integer,A,A>>append(A tree, A... nodes)Добавление дочернего узла в конец спискаstatic <A extends Tree<A>>
voidappend(A tree, A[] nodes, java.util.function.Consumer<Triple<java.lang.Integer,A,A>> added)Добавление дочернего узла в конец спискаstatic <A extends Tree<A>>
voidappend(A tree, java.lang.Iterable<A> nodes)Добавление дочернего узла в конец спискаstatic <A extends Tree<A>>
voidappend(A tree, java.lang.Iterable<A> nodes, java.util.function.Consumer<Triple<java.lang.Integer,A,A>> added)Добавление дочернего узла в конец спискаstatic <A extends Tree<A>>
voidclear(Tree<A> tree)Удаление всех дочерних узловstatic <A extends Tree<A>>
voidclear(Tree<A> tree, java.util.function.Consumer<Triple<java.lang.Integer,A,A>> deleted)Удаление всех дочерних узловstatic <A extends Tree<A>>
voiddeleteByIndex(Tree<A> tree, int... index)Удаление дочернего узла(ов)static <A extends Tree<A>>
voiddeleteByIndex(Tree<A> tree, int[] index, java.util.function.Consumer<Triple<java.lang.Integer,A,A>> deleted)Удаление дочернего узла(ов)static <A extends Tree<A>>
voiddeleteByIndex(Tree<A> tree, java.lang.Iterable<java.lang.Integer> index)Удаление дочернего узла(ов)static <A extends Tree<A>>
voiddeleteByIndex(Tree<A> tree, java.lang.Iterable<java.lang.Integer> index, java.util.function.Consumer<Triple<java.lang.Integer,A,A>> deleted)Удаление дочернего узла(ов)static <A extends Tree<A>>
voiddeleteByValue(Tree<A> tree, A... value)Удаление дочернего узла(ов)static <A extends Tree<A>>
voiddeleteByValue(Tree<A> tree, A[] value, java.util.function.Consumer<Triple<java.lang.Integer,A,A>> deleted)Удаление дочернего узла(ов)static <A extends Tree<A>>
voiddeleteByValue(Tree<A> tree, java.lang.Iterable<A> value)Удаление дочернего узла(ов)static <A extends Tree<A>>
voiddeleteByValue(Tree<A> tree, java.lang.Iterable<A> value, java.util.function.Consumer<Triple<java.lang.Integer,A,A>> deleted)Удаление дочернего узла(ов)static <A extends Tree<A>>
java.util.List<Triple<java.lang.Integer,A,A>>insert(Tree<A> tree, int index, A... nodes)Добавление дочернего узла в указанную позицию списка дочерних уловstatic <A extends Tree<A>>
voidinsert(Tree<A> tree, int index, A[] nodes, java.util.function.Consumer<Triple<java.lang.Integer,A,A>> added)Добавление дочернего узла в указанную позицию списка дочерних уловstatic <A extends Tree<A>>
java.util.List<Triple<java.lang.Integer,A,A>>insert(Tree<A> tree, int index, java.lang.Iterable<A> nodes)Добавление дочернего узла в указанную позицию списка дочерних уловstatic <A extends Tree<A>>
voidinsert(Tree<A> tree, int index, java.lang.Iterable<A> nodes, java.util.function.Consumer<Triple<java.lang.Integer,A,A>> added)Добавление дочернего узла в указанную позицию списка дочерних уловstatic <A extends Tree<A>>
Anode(Tree<A> tree, int index)Получение дочернего элемента по индексуstatic intnodesCount(Tree tree)Получение кол-ва дочерних узловstatic <A extends Tree<A>>
java.util.List<A>nodesOf(Tree<A> tree)static <A extends Tree<A>>
java.util.List<Triple<java.lang.Integer,A,A>>set(Tree<A> tree, int index, A... values)Замена дочернего узлаstatic <A extends Tree<A>>
voidset(Tree<A> tree, int index, A[] values, java.util.function.Consumer<Triple<java.lang.Integer,A,A>> changes)Замена дочернего узлаstatic <A extends Tree<A>>
java.util.List<Triple<java.lang.Integer,A,A>>set(Tree<A> tree, int index, java.lang.Iterable<A> values)Замена дочернего узлаstatic <A extends Tree<A>>
voidset(Tree<A> tree, int index, java.lang.Iterable<A> values, java.util.function.Consumer<Triple<java.lang.Integer,A,A>> changes)Замена дочернего узла
-
Field Details
-
Constructor Details
-
TreeImpl
public TreeImpl()
-
-
Method Details
-
nodesOf
-
nodesCount
Получение кол-ва дочерних узлов- Parameters:
tree- родительский узел- Returns:
- кол-во узлов
-
node
Получение дочернего элемента по индексу- Type Parameters:
A- Тип узла- Parameters:
tree- родительский узелindex- индекс- Returns:
- Дочерний узел
-
set
public static <A extends Tree<A>> java.util.List<Triple<java.lang.Integer,A,A>> set(Tree<A> tree, int index, A... values)Замена дочернего узла- Type Parameters:
A- Тип узла- Parameters:
tree- родительский узелindex- идекс узлов которые необходимо заменитьvalues- дочерние узлы- Returns:
- Список изменений (index, oldChildNode, newChildNode)
-
set
public static <A extends Tree<A>> void set(Tree<A> tree, int index, A[] values, java.util.function.Consumer<Triple<java.lang.Integer,A,A>> changes)Замена дочернего узла- Type Parameters:
A- Тип узла- Parameters:
tree- родительский узелindex- идекс узлов которые необходимо заменитьvalues- дочерние узлыchanges- Список изменений (index, oldChildNode, newChildNode)
-
set
public static <A extends Tree<A>> java.util.List<Triple<java.lang.Integer,A,A>> set(Tree<A> tree, int index, java.lang.Iterable<A> values)Замена дочернего узла- Type Parameters:
A- Тип узла- Parameters:
tree- родительский узелindex- идекс узлов которые необходимо заменитьvalues- дочерние узлы- Returns:
- Список изменений (index, oldChildNode, newChildNode)
-
set
public static <A extends Tree<A>> void set(Tree<A> tree, int index, java.lang.Iterable<A> values, java.util.function.Consumer<Triple<java.lang.Integer,A,A>> changes)Замена дочернего узла- Type Parameters:
A- Тип узла- Parameters:
tree- родительский узелindex- идекс узлов которые необходимо заменитьvalues- дочерние узлыchanges- Список изменений (index, oldChildNode, newChildNode)
-
insert
public static <A extends Tree<A>> java.util.List<Triple<java.lang.Integer,A,A>> insert(Tree<A> tree, int index, A... nodes)Добавление дочернего узла в указанную позицию списка дочерних улов- Type Parameters:
A- Тип узла- Parameters:
tree- родительский узелindex- индекс (0..) позиции вставкиnodes- дочерние узлы- Returns:
- список добавленных узлов - fn( index, null, insertedChildNode )
-
insert
public static <A extends Tree<A>> void insert(Tree<A> tree, int index, A[] nodes, java.util.function.Consumer<Triple<java.lang.Integer,A,A>> added)Добавление дочернего узла в указанную позицию списка дочерних улов- Type Parameters:
A- Тип узла- Parameters:
tree- родительский узелindex- индекс (0..) позиции вставкиnodes- дочерние узлыadded- список добавленных узлов - fn( index, null, insertedChildNode )
-
insert
public static <A extends Tree<A>> java.util.List<Triple<java.lang.Integer,A,A>> insert(Tree<A> tree, int index, java.lang.Iterable<A> nodes)Добавление дочернего узла в указанную позицию списка дочерних улов- Type Parameters:
A- Тип узла- Parameters:
tree- родительский узелnodes- дочерние узлы- Returns:
- список добавленных узлов - fn( index, null, insertedChildNode )
-
insert
public static <A extends Tree<A>> void insert(Tree<A> tree, int index, java.lang.Iterable<A> nodes, java.util.function.Consumer<Triple<java.lang.Integer,A,A>> added)Добавление дочернего узла в указанную позицию списка дочерних улов- Type Parameters:
A- Тип узла- Parameters:
tree- родительский узелnodes- дочерние узлыindex- индекс (0..) позиции вставкиadded- список добавленных узлов - fn( index, null, insertedChildNode )
-
append
public static <A extends Tree<A>> java.util.List<Triple<java.lang.Integer,A,A>> append(A tree, A... nodes)Добавление дочернего узла в конец списка- Type Parameters:
A- Тип узла- Parameters:
tree- родительский узелnodes- дочерние узлы- Returns:
- список добавленных узлов - fn( index, null, insertedChildNode )
-
append
public static <A extends Tree<A>> void append(A tree, A[] nodes, java.util.function.Consumer<Triple<java.lang.Integer,A,A>> added)Добавление дочернего узла в конец списка- Type Parameters:
A- Тип узла- Parameters:
tree- родительский узелnodes- дочерние узлыadded- список добавленных узлов - fn( index, null, insertedChildNode )
-
append
Добавление дочернего узла в конец списка- Type Parameters:
A- Тип узла- Parameters:
tree- родительский узелnodes- дочерние узлы
-
append
public static <A extends Tree<A>> void append(A tree, java.lang.Iterable<A> nodes, java.util.function.Consumer<Triple<java.lang.Integer,A,A>> added)Добавление дочернего узла в конец списка- Type Parameters:
A- Тип узла- Parameters:
tree- родительский узелnodes- дочерние узлыadded- список добавленных узлов - fn( index, null, insertedChildNode )
-
deleteByIndex
Удаление дочернего узла(ов)- Type Parameters:
A- Тип узла- Parameters:
tree- родительский узелindex- иднекс дочернего элемента(ов)
-
deleteByIndex
public static <A extends Tree<A>> void deleteByIndex(Tree<A> tree, int[] index, java.util.function.Consumer<Triple<java.lang.Integer,A,A>> deleted)Удаление дочернего узла(ов)- Type Parameters:
A- Тип узла- Parameters:
tree- родительский узелindex- иднекс дочернего элемента(ов)deleted- возможно null, уведомление о удаленных элементах: fn( index, deletedChildNode, null )
-
deleteByIndex
public static <A extends Tree<A>> void deleteByIndex(Tree<A> tree, java.lang.Iterable<java.lang.Integer> index)Удаление дочернего узла(ов)- Type Parameters:
A- Тип узла- Parameters:
tree- родительский узелindex- иднекс дочернего элемента(ов)
-
deleteByIndex
public static <A extends Tree<A>> void deleteByIndex(Tree<A> tree, java.lang.Iterable<java.lang.Integer> index, java.util.function.Consumer<Triple<java.lang.Integer,A,A>> deleted)Удаление дочернего узла(ов)- Type Parameters:
A- Тип узла- Parameters:
tree- родительский узелindex- иднекс дочернего элемента(ов)deleted- возможно null, уведомление о удаленных элементах: fn( index, deletedChildNode, null )
-
deleteByValue
Удаление дочернего узла(ов)- Type Parameters:
A- Тип узла- Parameters:
tree- родительский узелvalue- дочерние удаляемые элементы
-
deleteByValue
Удаление дочернего узла(ов)- Type Parameters:
A- Тип узла- Parameters:
tree- родительский узелvalue- дочерние удаляемые элементы
-
deleteByValue
public static <A extends Tree<A>> void deleteByValue(Tree<A> tree, A[] value, java.util.function.Consumer<Triple<java.lang.Integer,A,A>> deleted)Удаление дочернего узла(ов)- Type Parameters:
A- Тип узла- Parameters:
tree- родительский узелvalue- дочерние удаляемые элементыdeleted- возможно null, уведомление о удаленных элементах: fn( index, deletedChildNode, null )
-
deleteByValue
public static <A extends Tree<A>> void deleteByValue(Tree<A> tree, java.lang.Iterable<A> value, java.util.function.Consumer<Triple<java.lang.Integer,A,A>> deleted)Удаление дочернего узла(ов)- Type Parameters:
A- Тип узла- Parameters:
tree- родительский узелvalue- дочерние удаляемые элементыdeleted- возможно null, уведомление о удаленных элементах: fn( index, deletedChildNode, null )
-
clear
Удаление всех дочерних узлов- Type Parameters:
A- Тип узла- Parameters:
tree- родительский узел
-
clear
public static <A extends Tree<A>> void clear(Tree<A> tree, java.util.function.Consumer<Triple<java.lang.Integer,A,A>> deleted)Удаление всех дочерних узлов- Type Parameters:
A- Тип узла- Parameters:
tree- родительский узелdeleted- возможно null, уведомление о удаленных элементах: fn( index, deletedChildNode, null )
-