Spec-Zone.ru › OpenJDK 21

Интерфейс TreeWalker

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

Исключение узлов из логического представления поддерева может привести к структуре, существенно отличающейся от того же поддерева в полном, неотфильтрованном документе. Узлы, которые являются соседними в TreeWalker представлении, могут быть потомками разных, широко разделенных узлов в исходном представлении. Например, рассмотрим NodeFilter , который пропускает все узлы, кроме узлов типа Text и корневого узла документа. В результирующем логическом представлении все узлы типа Text будут соседними и появятся как непосредственные потомки корневого узла, независимо от того, насколько глубоко вложенной является структура исходного документа.

См. также Спецификацию DOM Level 2 Traversal and Range.

Since:
9, DOM Level 2

Краткое описание методов

Модификатор и тип Метод Описание
Node firstChild()
Перемещает TreeWalker к первому видимому потомку текущего узла и возвращает новый узел.
Node getCurrentNode()
Узел, в котором TreeWalker в данный момент расположен.
boolean getExpandEntityReferences()
Значение этого флага определяет, видны ли потомки узлов-ссылок на сущности TreeWalker.
NodeFilter getFilter()
Фильтр, используемый для отбора узлов.
Node getRoot()
Узел root TreeWalker, как указано при его создании.
int getWhatToShow()
Этот атрибут определяет типы узлов, представленные через TreeWalker.
Node lastChild()
Перемещает TreeWalker к последнему видимому потомку текущего узла и возвращает новый узел.
Node nextNode()
Перемещает TreeWalker к следующему видимому узлу в порядке следования документа относительно текущего узла и возвращает новый узел.
Node nextSibling()
Перемещает TreeWalker к следующему соседнему узлу текущего узла и возвращает новый узел.
Node parentNode()
Перемещается и возвращает ближайшего видимого предка текущего узла.
Node previousNode()
Перемещает TreeWalker к предыдущему видимому узлу в порядке следования документа относительно текущего узла и возвращает новый узел.
Node previousSibling()
Перемещает TreeWalker к предыдущему соседнему узлу текущего узла и возвращает новый узел.
void setCurrentNode(Node currentNode)
Узел, в котором TreeWalker в данный момент расположен.

Подробное описание методов

getRoot

Node getRoot()
Узел root TreeWalker, как указано при его создании.

getWhatToShow

int getWhatToShow()
Этот атрибут определяет типы узлов, представленные через TreeWalker. Доступный набор констант определен в интерфейсе NodeFilter. Узлы, не принятые whatToShow , будут пропущены, но их потомки все еще могут быть рассмотрены. Обратите внимание, что этот пропуск имеет приоритет над фильтром, если таковой имеется.

getFilter

NodeFilter getFilter()
Фильтр, используемый для отбора узлов.

getExpandEntityReferences

boolean getExpandEntityReferences()
Значение этого флага определяет, видны ли потомки узлов-ссылок на сущности TreeWalker. Если false, эти потомки и их потомки будут отклонены. Обратите внимание, что это отклонение имеет приоритет над whatToShow и фильтром, если таковой имеется.
Чтобы получить представление документа, в котором ссылки на сущности расширены, и сам узел ссылки на сущность не отображается, используйте whatToShow флаги, чтобы скрыть узел ссылки на сущность, и установите expandEntityReferences в значение true при создании TreeWalker. Чтобы получить представление документа, содержащего узлы ссылок на сущности, но без расширения сущностей, используйте whatToShow флаги, чтобы отобразить узел ссылки на сущность, и установите expandEntityReferences в значение false.

getCurrentNode

Node getCurrentNode()
Узел, в котором TreeWalker в данный момент расположен.
Изменения в дереве DOM могут привести к тому, что текущий узел больше не будет приниматься фильтром, связанным с TreeWalker. currentNode также можно явно задать для любого узла, независимо от того, находится ли он в поддереве, указанном узлом root, или принимается фильтром и whatToShow флагами. Дальнейшая навигация происходит относительно currentNode, даже если он не является частью текущего представления, применяя фильтры в запрошенном направлении; если навигация невозможна, currentNode не изменяется.

setCurrentNode

void setCurrentNode(Node currentNode) throws DOMException
Узел, в котором TreeWalker в данный момент расположен.
Изменения в дереве DOM могут привести к тому, что текущий узел больше не будет приниматься фильтром, связанным с TreeWalker. currentNode также можно явно задать для любого узла, независимо от того, находится ли он в поддереве, указанном узлом root, или принимается фильтром и whatToShow флагами. Дальнейшая навигация происходит относительно currentNode, даже если он не является частью текущего представления, применяя фильтры в запрошенном направлении; если навигация невозможна, currentNode не изменяется.
Throws:
DOMException - NOT_SUPPORTED_ERR: Вызывается, если попытка установить currentNode на null.

parentNode

Node parentNode()
Перемещается и возвращает ближайшего видимого предка текущего узла. Если поиск parentNode пытается перейти вверх от узла TreeWalker root, или если он не находит видимого предка, этот метод сохраняет текущее положение и возвращает null.
Returns:
Новый родительский узел или null, если у текущего узла нет родителя в логическом представлении TreeWalker.

firstChild

Node firstChild()
Перемещает TreeWalker к первому видимому потомку текущего узла и возвращает новый узел. Если у текущего узла нет видимых потомков, возвращает null, и сохраняет текущий узел.
Returns:
Новый узел или null, если у текущего узла нет видимых потомков в логическом представлении TreeWalker.

lastChild

Node lastChild()
Перемещает TreeWalker к последнему видимому потомку текущего узла и возвращает новый узел. Если у текущего узла нет видимых потомков, возвращает null, и сохраняет текущий узел.
Returns:
Новый узел или null, если у текущего узла нет потомков в логическом представлении TreeWalker.

previousSibling

Node previousSibling()
Перемещает TreeWalker к предыдущему соседнему узлу текущего узла и возвращает новый узел. Если у текущего узла нет видимого предыдущего соседа, возвращает null, и сохраняет текущий узел.
Returns:
Новый узел или null, если у текущего узла нет предыдущего соседа в логическом представлении TreeWalker.

nextSibling

Node nextSibling()
Перемещает TreeWalker к следующему соседнему узлу текущего узла и возвращает новый узел. Если у текущего узла нет видимого следующего соседа, возвращает null, и сохраняет текущий узел.
Returns:
Новый узел или null, если у текущего узла нет следующего соседа в логическом представлении TreeWalker.

previousNode

Node previousNode()
Перемещает TreeWalker к предыдущему видимому узлу в порядке следования документа относительно текущего узла и возвращает новый узел. Если у текущего узла нет предыдущего узла или если поиск previousNode пытается перейти вверх от узла TreeWalker root, возвращает null, и сохраняет текущий узел.
Returns:
Новый узел или null, если у текущего узла нет предыдущего узла в логическом представлении TreeWalker.

nextNode

Node nextNode()
Перемещает TreeWalker к следующему видимому узлу в порядке следования документа относительно текущего узла и возвращает новый узел. Если у текущего узла нет следующего узла или если поиск nextNode пытается перейти вверх от узла TreeWalker root, возвращает null, и сохраняет текущий узел.
Returns:
Новый узел или null, если у текущего узла нет следующего узла в логическом представлении TreeWalker.

© 1993, 2023, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/21/docs/api/java.xml/org/w3c/dom/traversal/TreeWalker.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API