52 #ifndef Patternist_AccelIterators_H 53 #define Patternist_AccelIterators_H 115 template<const
bool IncludeSelf>
195 template<const
bool IsFollowing>
201 m_depth(doc->depth(pre))
204 "When being preceding-sibling, the context node cannot be the first node in the document.");
206 "When being following-sibling, the context node cannot be the last node in the document.");
267 template<const
bool IncludeSelf>
276 m_postNumber(doc->postNumber(pre))
virtual QXmlNodeModelIndex::Iterator::Ptr copy() const
Copies this QAbstractXmlForwardIterator and returns the copy.
The QXmlNodeModelIndex class identifies a node in an XML node model subclassed from QAbstractXmlNodeM...
Iterates along the ancestor or ancestor-or-self axis in an AccelTree.
#define QT_END_NAMESPACE
This macro expands to.
Implements axis attribute for the AccelTree.
Iterates along the sibling axes in an AccelTree.
virtual QXmlNodeModelIndex next()
Returns the next item in the sequence, or a null object if the end has been reached.
#define at(className, varName)
Due to strong interdependencies, this file contains the definitions for the classes Item...
The QExplicitlySharedDataPointer class represents a pointer to an explicitly shared object...
DescendantIterator(const AccelTree *const doc, const AccelTree::PreNumber pre)
AncestorIterator(const AccelTree *const doc, const AccelTree::PreNumber pre)
QExplicitlySharedDataPointer< QAbstractXmlForwardIterator< T > > Ptr
A smart pointer wrapping an instance of a QAbstractXmlForwardIterator subclass.
bool hasParent(const PreNumber pre) const
#define QT_BEGIN_NAMESPACE
This macro expands to.
PrecedingIterator(const AccelTree *const doc, const AccelTree::PreNumber pre)
virtual QXmlNodeModelIndex next()
Returns the next item in the sequence, or a null object if the end has been reached.
QVector< BasicNodeData > basicData
FollowingIterator(const AccelTree *const doc, const AccelTree::PreNumber pre)
The QAbstractXmlForwardIterator class is a base class for forward iterators.
The namespace for the internal API of QtXmlPatterns.
Implements axis following for the AccelTree.
bool hasChildren(const PreNumber pre) const
Returns true if the node identified by pre has child nodes(in the sense of the XDM), but also if it has namespace nodes, or attribute nodes.
QXmlNodeModelIndex m_current
Depth depth(const PreNumber pre) const
const AccelTree::Depth m_depth
SiblingIterator(const AccelTree *const doc, const AccelTree::PreNumber pre)
const AccelTree::Depth m_depth
virtual QAbstractXmlForwardIterator< T >::Ptr copy() const
Copies this QAbstractXmlForwardIterator and returns the copy.
Implements axis preceding for the AccelTree.
Abstract base class for Iterators for the AccelTree, that contains common functions and members...
#define Q_ASSERT_X(cond, where, what)
Implements axis descendant and descendant-or-self for the AccelTree.
virtual QXmlNodeModelIndex::NodeKind kind(const QXmlNodeModelIndex &ni) const
Returns a value indicating the kind of node identified by ni.
const AccelTree::PreNumber m_preNumber
Stores an XML document using the XPath Accelerator scheme, also known as pre/post numbering...
QXmlNodeModelIndex createIndex(qint64 data) const
Creates a node index with data as its internal data.
AccelIterator(const AccelTree *const doc, const AccelTree::PreNumber pre, const AccelTree::PreNumber currentPre)
PostNumber postNumber(const PreNumber pre) const
virtual QXmlNodeModelIndex::Iterator::Ptr copy() const
Copies this QAbstractXmlForwardIterator and returns the copy.
virtual QXmlNodeModelIndex next()
Returns the next item in the sequence, or a null object if the end has been reached.
Iterates along the child axis in an AccelTree.
AccelTree::PreNumber m_currentPre
PreNumber maximumPreNumber() const
PreNumber size(const PreNumber pre) const
ChildIterator(const AccelTree *const doc, const AccelTree::PreNumber pre)
virtual QXmlNodeModelIndex current() const
Returns the current item in the sequence.
virtual QXmlNodeModelIndex::Iterator::Ptr copy() const
Copies this QAbstractXmlForwardIterator and returns the copy.
AttributeIterator(const AccelTree *const doc, const AccelTree::PreNumber pre)
QXmlNodeModelIndex closedExit()
virtual xsInteger position() const
Returns the current position in the sequence represented by this.
const AccelTree *const m_document
const AccelTree::PreNumber m_postNumber
const AccelTree::PreNumber m_postNumber
virtual T next()=0
Returns the next item in the sequence, or a null object if the end has been reached.