Qt 4.8
|
Verifies that the items in a sequence an Expression evaluates is of a certain ItemType. More...
#include <qitemverifier_p.h>
Private Types | |
typedef QExplicitlySharedDataPointer< const ItemVerifier > | ConstPtr |
Private Functions | |
void | verifyItem (const Item &item, const DynamicContext::Ptr &context) const |
Properties | |
const ReportContext::ErrorCode | m_errorCode |
const ItemType::Ptr | m_reqType |
Verifies that the items in a sequence an Expression evaluates is of a certain ItemType.
Definition at line 71 of file qitemverifier_p.h.
|
private |
Definition at line 90 of file qitemverifier_p.h.
ItemVerifier::ItemVerifier | ( | const Expression::Ptr & | operand, |
const ItemType::Ptr & | reqType, | ||
const ReportContext::ErrorCode | errorCode | ||
) |
Definition at line 53 of file qitemverifier.cpp.
|
virtual |
Implements QPatternist::Expression.
Definition at line 117 of file qitemverifier.cpp.
|
virtual |
Returns this
.
Reimplemented from QPatternist::Expression.
Definition at line 74 of file qitemverifier.cpp.
|
virtual |
Evaluate this Expression by iterating over it. This is a central function for evaluating expressions.
Expressions must always always return a valid QAbstractXmlForwardIterator and may never return 0. If an empty result is of interest to be returned, the EmptyIterator should be returned.
The default implementation returns a SingletonIterator over the item returned from evaluateSingleton().
Reimplemented from QPatternist::Expression.
Definition at line 98 of file qitemverifier.cpp.
|
virtual |
Reimplemented from QPatternist::Expression.
Definition at line 79 of file qitemverifier.cpp.
|
virtual |
Returns a list of Sequence Types, describing the type of each of the expression's operands. Hence, this function has a relationship to the operands() function:
- The lengths of the lists returned by expectedOperandTypes() and operands() should always be equal in length, since one cannot describe the type of a non-existent operand(and all operands must have type information). - A significant difference between the two functions is that while the type of objects in the list returned by operands() may vary between compilations/static context, simply because the particular Expression is part of different XPath expressions, the types in the list returned by expectedOperandTypes is always the same since the function/operator signature never changes.
This function should not be confused with staticType(), which returns the static type of the expression itself, not its operands. The function call is an expression where this is clear: the type of the return value is not the same as the arguments' types. The static type of the operands supplied to the expression can be determined via the staticType() function of the instances returned by operands().
If the expression has no operands, an empty list should be returned.
Implements QPatternist::Expression.
Definition at line 110 of file qitemverifier.cpp.
|
inline |
Definition at line 92 of file qitemverifier.cpp.
|
virtual |
Implements QPatternist::Expression.
Definition at line 105 of file qitemverifier.cpp.
|
inlineprivate |
Definition at line 62 of file qitemverifier.cpp.
Referenced by evaluateSingleton(), and mapToItem().
|
private |
Definition at line 95 of file qitemverifier_p.h.
Referenced by verifyItem().
|
private |
Definition at line 94 of file qitemverifier_p.h.
Referenced by staticType(), and verifyItem().