Tree.Find

From SunFlurry wiki
Revision as of 16:03, 18 March 2020 by Admin (talk | contribs) (Created page with "{{infobox function |name=Find |object=Дерево |caption=Функции поиска |type=1 |status=2 |db=0 |exception=Невозможно превратить в ч...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search
  Find (Функции поиска)
Объект:Дерево
Статус разработки: Реализована
Тип:Функция
Обращение к БД:Нет
Исключения:Невозможно превратить в число
Визуальность:Нет

Применимо к объектам ветки и дерева. Функция производит поиск указанного объекта среди значений дочерних веток текущего объекта (с возможностью поиска во вложенных ветках). Если ветка найдена, функция возвращает ее в виде объекта, иначе возвращается пустое значение.

Синтаксис

Tree.Find(<Объект для поиска>,<Включать дочерние ветки в поиск (INT)>=0):<Найденная ветка (BRANCH)>

Аргументы

  • <Объект для поиска> - Аргумент задает объект, который необходимо найти.
  • <Включать дочерние ветки в поиск (INT)> - (необязательный аргумент) Режим позволяет искать по всей структуре веток, а не только среди дочерних веток текущего объекта.

Возвращаемое значение

Возвращает первую найденную ветку, которая содержит объект поиска, либо пустое значение, если ветка не найдена.

Примеры

aTree:=Tree.Create();
aBranch1:=aTree.Add(1,"Ветка 1");
aBranch1.Add(2,"Ветка 1.1");
aTree.Add(3,"Ветка 2");
aTree.Insert(1,0,"Ветка 0");

Message("Значение 2 "+?(isEmpty(aTree.Find(2)),"не ")+"найдено среди верхних веток дерева");
Message("Значение 2 "+?(isEmpty(aTree.Find(2,1)),"не ")+"найдено среди всех веток дерева");
//Пример выведет:
//"Значение 2 не найдено среди верхних веток дерева"
//"Значение 2 найдено среди всех веток дерева"