52 #ifndef Patternist_ParserContext_H 53 #define Patternist_ParserContext_H 56 #include <QSharedData> 58 #include <QStringList> 129 const bool shouldPop =
true);
366 templateParameters.
clear();
371 templateWithParams.
clear();
The QMultiHash class is a convenience QHash subclass that provides multi-valued hashes.
VariableSlotID allocateGlobalVariableSlot()
void restoreNodeTestSource()
void endParsingWithParam()
QStringList declaredPrefixes
QXmlName initialTemplateName
bool isFirstTemplate() const
VariableSlotID allocateCacheSlot()
#define QT_END_NAMESPACE
This macro expands to.
QStack< NamespaceResolver::Ptr > resolvers
void clear()
Removes all items from the hash.
TemplatePattern::ID m_currentTemplateID
QStack< bool > scanOnlyStack
QXmlName::NamespaceCode moduleNamespace
Expression::Ptr queryBody
VariableSlotID currentPositionSlot() const
QHash< QXmlName, Template::Ptr > namedTemplates
QStack< QXmlName > tagStack
PrologDeclarations m_prologDeclarations
ItemType::Ptr nodeTestSource
QueryLanguage
Specifies whether you want QXmlQuery to interpret the input to setQuery() as an XQuery or as an XSLT ...
VariableSlotID currentExpressionSlot() const
QMultiHash< QXmlName, Expression::Ptr > unresolvedVariableReferences
#define Q_DISABLE_COPY(Class)
Disables the use of copy constructors and assignment operators for the given Class.
bool testFlag(Enum f) const
Returns true if the flag is set, otherwise false.
QFlags< PrologDeclaration > PrologDeclarations
VariableDeclaration::List templateParameters
ImportPrecedence currentImportPrecedence
int count(const T &t) const
Returns the number of occurrences of value in the list.
The QHash class is a template class that provides a hash-table-based dictionary.
TemplateMode::Ptr modeFor(const QXmlName &modeName)
Returns the TemplateMode for modeName or null if the mode being asked for is #current.
void registerDeclaration(const PrologDeclaration decl)
bool hasDeclaration(const PrologDeclaration decl) const
UserFunctionCallsite::List userFunctionCallsites
void templateWithParametersHandled()
T pop()
Removes the top item from the stack and returns it.
#define QT_BEGIN_NAMESPACE
This macro expands to.
VariableDeclaration::Stack variables
int elementConstructorDepth
bool isPreviousEnclosedExpr
TemplatePattern::ID allocateTemplateID()
bool preserveNamespacesMode
The QStringList class provides a list of strings.
The namespace for the internal API of QtXmlPatterns.
void templateParametersHandled()
VariableSlotID m_positionSlot
VariableSlotID m_expressionSlot
WithParam::Hash templateWithParams
QStack< Expression::Ptr > typeswitchSource
Houses the data specific to the templates for a certain mode.
void clear()
Removes all items from the list.
QStack< bool > m_isParsingWithParam
Contains data used when parsing and tokenizing.
void push(const T &t)
Adds element t to the top of the stack.
const QXmlQuery::QueryLanguage languageAccent
QStack< OrderBy::Stability > orderStability
The QXmlName class represents the name of an XML node, in an efficient, namespace-aware way...
QExplicitlySharedDataPointer< ParserContext > Ptr
The QSharedData class is a base class for shared data objects.
VariableSlotID allocateCacheSlots(const int count)
UserFunction::List userFunctions
QExplicitlySharedDataPointer< TemplateMode > Ptr
QHash< QXmlName, TemplateMode::Ptr > templateRules
const StaticContext::Ptr staticContext
QVector< Expression::Ptr > templateCalls
VariableDeclaration::List declaredVariables
Tokenizer *const tokenizer
VariableSlotID allocatePositionalSlot()
bool inheritNamespacesMode
void startParsingWithParam()
VariableSlotID m_globalVariableSlot
Base class for all tokenizers.
VariableSlotID allocateExpressionSlot()
static const ItemType::Ptr element
bool isParsingWithParam() const
void finalizePushedVariable(const int amount=1, const bool shouldPop=true)
Removes the recently pushed variables from scope. The amount of removed variables is amount...
VariableSlotID m_evaluationCacheSlot
T & top()
Returns a reference to the stack's top item.
ParserContext(const StaticContext::Ptr &context, const QXmlQuery::QueryLanguage lang, Tokenizer *const tokenizer)
QStack< bool > isBackwardsCompat