52 #ifndef Patternist_AccelTreeBuilder_H 53 #define Patternist_AccelTreeBuilder_H 58 #include "private/qxmlutils_p.h" 85 template<
bool FromDocument>
86 class AccelTreeBuilder :
public NodeBuilder
87 ,
public SourceLocationReflection
197 #include "qacceltreebuilder.cpp" The QVariant class acts like a union for the most common Qt data types.
QStack< AccelTree::PreNumber > m_ancestors
virtual NodeBuilder::Ptr create(const QUrl &baseURI) const
Creates a copy of this NodeBuilder, that operates independently of this NodeBuilder.
#define QT_END_NAMESPACE
This macro expands to.
The accel tree builder will store source locations for each start element.
#define Q_DECLARE_FLAGS(Flags, Enum)
The Q_DECLARE_FLAGS() macro expands to.
#define it(className, varName)
virtual QAbstractXmlNodeModel::Ptr builtDocument()
Returns the document that has been built.
int count(const T &t) const
Returns the number of occurrences of value in the vector.
virtual void whitespaceOnly(const QStringRef &ch)
Builds an AccelTree from a stream of XML/Item events received through the NodeBuilder interface...
The QExplicitlySharedDataPointer class represents a pointer to an explicitly shared object...
AccelTree::PreNumber m_preNumber
AccelTreeBuilder(const QUrl &docURI, const QUrl &baseURI, const NamePool::Ptr &np, ReportContext *const context, Features features=NoneFeature)
The QUrl class provides a convenient interface for working with URLs.
The QString class provides a Unicode character string.
AccelTree::Ptr m_document
virtual void endOfSequence()
virtual void startElement(const QXmlName &name)
#define QT_BEGIN_NAMESPACE
This macro expands to.
#define Q_DECLARE_OPERATORS_FOR_FLAGS(Flags)
The Q_DECLARE_OPERATORS_FOR_FLAGS() macro declares global operator|() functions for Flags...
virtual void namespaceBinding(const QXmlName &nb)
Signals the presence of the namespace declaration nb.
The namespace for the internal API of QtXmlPatterns.
QExplicitlySharedDataPointer< AccelTreeBuilder > Ptr
virtual void processingInstruction(const QXmlName &target, const QString &data)
The QSourceLocation class identifies a location in a resource by URI, line, and column.
static const char * data(const QByteArray &arr)
virtual const SourceLocationReflection * actualReflection() const
AccelTree::PreNumber m_skippedDocumentNodes
bool m_isCharactersCompressed
virtual void atomicValue(const QVariant &value)
The QStringRef class provides a thin wrapper around QString substrings.
QSet< QString > m_attributeCompress
virtual void comment(const QString &content)
The QXmlName class represents the name of an XML node, in an efficient, namespace-aware way...
QStack< AccelTree::PreNumber > m_size
Contains functions used for formatting arguments, such as keywords and paths, in translated strings...
Represents an item in the XPath 2.0 Data Model.
virtual void endElement()
Signals the end of the current element.
virtual void attribute(const QXmlName &name, const QStringRef &value)
virtual void characters(const QStringRef &ch)
virtual void item(const Item &it)
Sends an Item to this QAbstractXmlReceiver that may be a QXmlNodeModelIndex or an AtomicValue...
AccelTree::Ptr builtDocument() const
bool isEmpty() const
Returns true if the vector has size 0; otherwise returns false.
A callback for reporting errors.
virtual void startOfSequence()
virtual QSourceLocation sourceLocation() const
ReportContext *const m_context
virtual void endDocument()
AccelTree::PreNumber currentDepth() const
AccelTree::PreNumber currentParent() const
No special features are enabled.
virtual void startDocument()
Base class for all instances that represents something at a certain location.
T & top()
Returns a reference to the stack's top item.