Qt 4.8
|
Base class for expressions that has any amount of operands. More...
#include <qunlimitedcontainer_p.h>
Protected Functions | |
template<CardinalityComputation suppliedCard> | |
SequenceType::Ptr | operandsUnionType () const |
Protected Functions inherited from QPatternist::Expression | |
void | typeCheckOperands (const StaticContext::Ptr &context) |
Protected Functions inherited from QPatternist::CppCastingHelper< Expression > | |
CppCastingHelper () | |
Protected Variables | |
Expression::List | m_operands |
Additional Inherited Members | |
Static Public Functions inherited from QPatternist::Expression | |
static void | rewrite (Expression::Ptr &old, const Expression::Ptr &New, const StaticContext::Ptr &context) |
Public Variables inherited from QSharedData | |
QAtomicInt | ref |
Base class for expressions that has any amount of operands.
Definition at line 71 of file qunlimitedcontainer_p.h.
Tells how operandsUnionType() should compute the cardinality of its children.
This type is public because of a bug in the HP-UX aCC compiler.
Enumerator | |
---|---|
ProductOfCardinality | |
UnionOfCardinality |
Definition at line 95 of file qunlimitedcontainer_p.h.
UnlimitedContainer::UnlimitedContainer | ( | const Expression::List & | operands = Expression::List() | ) |
Creates an UnlimitedContainer containing the operands operands
. operands
may be empty.
Definition at line 48 of file qunlimitedcontainer.cpp.
|
virtual |
Implements QPatternist::Expression.
Definition at line 62 of file qunlimitedcontainer.cpp.
|
virtual |
If this Expression has no operands, an empty list should be returned.
Implements QPatternist::Expression.
Definition at line 57 of file qunlimitedcontainer.cpp.
Referenced by QPatternist::CountFN::typeCheck(), and QPatternist::OrderBy::typeCheck().
|
inlineprotected |
Computes and returns the union type of all the Expression instances in this Expression's operands.
This implementation is placed inside because CardinalityComputation can't be referenced from the outside(in conforming compilers).
Definition at line 111 of file qunlimitedcontainer_p.h.
|
virtual |
Implements QPatternist::Expression.
Definition at line 52 of file qunlimitedcontainer.cpp.
|
protected |
Definition at line 139 of file qunlimitedcontainer_p.h.
Referenced by QPatternist::UserFunctionCallsite::bindVariables(), QPatternist::ComparesCaseAware::compress(), QPatternist::TemplateInvoker::compress(), QPatternist::ReturnOrderBy::compress(), QPatternist::ReplaceFN::compress(), QPatternist::CountFN::compress(), QPatternist::ExpressionSequence::compress(), QPatternist::StringJoinFN::compress(), QPatternist::PatternPlatform::compress(), QPatternist::Existence< Id >::compress(), QPatternist::NormalizeUnicodeFN::compress(), QPatternist::SubsequenceFN::compress(), compressOperands(), QPatternist::NormalizeUnicodeFN::determineNormalizationForm(), QPatternist::ElementAvailableFN::evaluateEBV(), QPatternist::UnparsedTextAvailableFN::evaluateEBV(), QPatternist::DeepEqualFN::evaluateEBV(), QPatternist::ReturnOrderBy::evaluateEBV(), QPatternist::BooleanFN::evaluateEBV(), QPatternist::NotFN::evaluateEBV(), QPatternist::Existence< Id >::evaluateEBV(), QPatternist::ExpressionSequence::evaluateSequence(), QPatternist::StringToCodepointsFN::evaluateSequence(), QPatternist::IndexOfFN::evaluateSequence(), QPatternist::TokenizeFN::evaluateSequence(), QPatternist::InScopePrefixesFN::evaluateSequence(), QPatternist::DistinctValuesFN::evaluateSequence(), QPatternist::InsertBeforeFN::evaluateSequence(), QPatternist::RemoveFN::evaluateSequence(), QPatternist::ReverseFN::evaluateSequence(), QPatternist::SubsequenceFN::evaluateSequence(), QPatternist::ResolveURIFN::evaluateSingleton(), QPatternist::DateTimeFN::evaluateSingleton(), QPatternist::SystemPropertyFN::evaluateSingleton(), QPatternist::FunctionAvailableFN::evaluateSingleton(), QPatternist::GenerateIDFN::evaluateSingleton(), QPatternist::TypeAvailableFN::evaluateSingleton(), QPatternist::UnparsedTextFN::evaluateSingleton(), QPatternist::ContainsFN::evaluateSingleton(), QPatternist::NodeNameFN::evaluateSingleton(), QPatternist::MatchesFN::evaluateSingleton(), QPatternist::FloorFN::evaluateSingleton(), QPatternist::QNameFN::evaluateSingleton(), QPatternist::CodepointEqualFN::evaluateSingleton(), QPatternist::ErrorFN::evaluateSingleton(), QPatternist::NameFN::evaluateSingleton(), QPatternist::CodepointsToStringFN::evaluateSingleton(), QPatternist::ConcatFN::evaluateSingleton(), QPatternist::ReturnOrderBy::evaluateSingleton(), QPatternist::CountFN::evaluateSingleton(), QPatternist::AdjustTimezone::evaluateSingleton(), QPatternist::StartsWithFN::evaluateSingleton(), QPatternist::NilledFN::evaluateSingleton(), QPatternist::ResolveQNameFN::evaluateSingleton(), QPatternist::AbsFN::evaluateSingleton(), QPatternist::CompareFN::evaluateSingleton(), QPatternist::LocalNameFN::evaluateSingleton(), QPatternist::ReplaceFN::evaluateSingleton(), QPatternist::StringJoinFN::evaluateSingleton(), QPatternist::EndsWithFN::evaluateSingleton(), QPatternist::StringFN::evaluateSingleton(), QPatternist::PrefixFromQNameFN::evaluateSingleton(), QPatternist::NamespaceURIFN::evaluateSingleton(), QPatternist::RoundFN::evaluateSingleton(), QPatternist::SubstringFN::evaluateSingleton(), QPatternist::SubstringBeforeFN::evaluateSingleton(), QPatternist::LocalNameFromQNameFN::evaluateSingleton(), QPatternist::BaseURIFN::evaluateSingleton(), QPatternist::CeilingFN::evaluateSingleton(), QPatternist::NumberFN::evaluateSingleton(), QPatternist::AvgFN::evaluateSingleton(), QPatternist::StringLengthFN::evaluateSingleton(), QPatternist::SubstringAfterFN::evaluateSingleton(), QPatternist::NamespaceURIFromQNameFN::evaluateSingleton(), QPatternist::DocumentURIFN::evaluateSingleton(), QPatternist::RoundHalfToEvenFN::evaluateSingleton(), QPatternist::NormalizeSpaceFN::evaluateSingleton(), QPatternist::NamespaceURIForPrefixFN::evaluateSingleton(), QPatternist::SumFN::evaluateSingleton(), QPatternist::LangFN::evaluateSingleton(), QPatternist::NormalizeUnicodeFN::evaluateSingleton(), QPatternist::RootFN::evaluateSingleton(), QPatternist::UpperCaseFN::evaluateSingleton(), QPatternist::LowerCaseFN::evaluateSingleton(), QPatternist::TranslateFN::evaluateSingleton(), QPatternist::EncodeString::evaluateSingleton(), QPatternist::RemoveFN::evaluateSingleton(), QPatternist::ExpressionSequence::evaluateToSequenceReceiver(), operands(), operandsUnionType(), QPatternist::ReplaceFN::parseReplacement(), QPatternist::PatternPlatform::pattern(), QPatternist::ExpressionSequence::properties(), QPatternist::ReturnOrderBy::ReturnOrderBy(), setOperands(), QPatternist::UserFunctionCallsite::setSource(), QPatternist::ErrorFN::signature(), QPatternist::FunctionCall::staticType(), QPatternist::Aggregator::staticType(), QPatternist::ReturnOrderBy::staticType(), QPatternist::AvgFN::staticType(), QPatternist::SumFN::staticType(), QPatternist::RootFN::staticType(), QPatternist::DistinctValuesFN::staticType(), QPatternist::InsertBeforeFN::staticType(), QPatternist::RemoveFN::staticType(), QPatternist::ReverseFN::staticType(), QPatternist::SubsequenceFN::staticType(), QPatternist::TemplateInvoker::TemplateInvoker(), QPatternist::ResolveURIFN::typeCheck(), QPatternist::DeepEqualFN::typeCheck(), QPatternist::FunctionCall::typeCheck(), QPatternist::StringFN::typeCheck(), QPatternist::ExpressionSequence::typeCheck(), QPatternist::AddingAggregate::typeCheck(), QPatternist::IndexOfFN::typeCheck(), QPatternist::DocumentFN::typeCheck(), QPatternist::AvgFN::typeCheck(), QPatternist::NumberFN::typeCheck(), QPatternist::DocFN::typeCheck(), QPatternist::SumFN::typeCheck(), QPatternist::DistinctValuesFN::typeCheck(), and QPatternist::ReverseFN::typeCheck().