Spec-Zone.ru › Qt 5.14

Класс QXmlItem

Класс QXmlItem содержит либо узел XML, либо атомарное значение. Подробнее...

Заголовок: #include <QXmlItem>
qmake: QT += xmlpatterns
С момента: Qt 4.4

Этот класс был представлен в Qt 4.4.

  • Список всех членов, включая унаследованные члены

Примечание: Все функции в этом классе являются реентерабельными.

Открытые типы

typedef Iterator

Открытые функции

QXmlItem(const QVariant &atomicValue)
QXmlItem(const QXmlNodeModelIndex &node)
QXmlItem(const QXmlItem &other)
QXmlItem()
QXmlItem & operator=(const QXmlItem &other)
~QXmlItem()
bool isAtomicValue() const
bool isNode() const
bool isNull() const
QVariant toAtomicValue() const
QXmlNodeModelIndex toNodeModelIndex() const

Подробное описание

В XQuery все выражения вычисляются в последовательность элементов, где каждый элемент является либо узлом XML, либо атомарным значением. Запрос в следующем фрагменте кода вычисляется в последовательности из пяти элементов.

<aNode/>,
xs:base64Binary("FFFF"),
current-date(),
3e3, (: A floating point value :)
attribute {"name"} {()}

Эти пять элементов: элемент, атомарное значение (двоичные данные, закодированные в base64), дата, число с плавающей точкой и атрибут.

QXmlItem — это класс, представляющий эти элементы XQuery в API Qt XML Patterns. Неравный экземпляр QXmlItem — это либо узел, либо атомарное значение. Вызов isNode() или isAtomicValue() позволяет определить, что это такое. Атомарные значения в другом месте API Qt представлены в виде экземпляров QVariant, и экземпляр QXmlItem, представляющий атомарное значение, может быть преобразован в QVariant с помощью вызова toAtomicValue(). Экземпляр QXmlItem, оборачивающий узел, в другом месте представлен как экземпляр QXmlNodeModelIndex. Узел QXmlItem может быть преобразован в QXmlNodeModelIndex с помощью вызова toNodeModelIndex().

Экземпляр QXmlItem, созданный по умолчанию, не является ни узлом, ни атомарным значением. Он считается нулевым, в этом случае isNull() возвращает true.

Экземпляр QXmlItem будет висячим, если модель узлов XML, на которую он ссылается, удалена, если это QXmlNodeModelIndex.

Документация по типам членов

typedef QXmlItem::Iterator

QAbstractXmlForwardIterator над QXmlItem.

Документация по функциям-членам

QXmlItem::QXmlItem(const QVariant &atomicValue)

Создает атомарный элемент QXmlItem с atomicValue.

См. также isAtomicValue().

QXmlItem::QXmlItem(const QXmlNodeModelIndex &node)

Создает узел QXmlItem, который является копией node.

См. также isNode().

QXmlItem::QXmlItem(const QXmlItem &other)

Конструктор копирования создаёт копию other.

QXmlItem::QXmlItem()

Создаёт нулевой QXmlItem, который не является ни узлом, ни атомарным значением. isNull() возвращает true для экземпляра, созданного по умолчанию.

QXmlItem &QXmlItem::operator=(const QXmlItem &other)

Присваивает other к this.

QXmlItem::~QXmlItem()

Деструктор.

bool QXmlItem::isAtomicValue() const

Возвращает true, если этот элемент является атомарным значением. Возвращает false, если это узел или null.

См. также isNull() и isNode().

bool QXmlItem::isNode() const

Возвращает true, если этот элемент является узлом. Возвращает false, если это атомарное значение или null.

См. также isNull() и isAtomicValue().

bool QXmlItem::isNull() const

Возвращает true, если этот QXmlItem не является ни узлом, ни атомарным значением. Экземпляры QXmlItem, созданные по умолчанию, являются нулевыми.

QVariant QXmlItem::toAtomicValue() const

Если этот QXmlItem представляет атомарное значение, он преобразуется в соответствующий QVariant и возвращается. Если этот QXmlItem не является атомарным значением, возвращаемое значение — это QVariant по умолчанию. Вы можете вызвать isAtomicValue(), чтобы проверить, является ли элемент атомарным значением.

См. также isAtomicValue().

QXmlNodeModelIndex QXmlItem::toNodeModelIndex() const

Если этот QXmlItem представляет узел, он возвращает элемент как QXmlNodeModelIndex. Если этот QXmlItem не является узлом, возвращаемое значение не определено. Вы можете вызвать isNode(), чтобы проверить, является ли элемент узлом.

См. также isNode().

© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.14/qxmlitem.html

Spec-Zone.ru

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