/* * Copyright (c) 2001, DecisionSoft Limited All rights reserved. * Please see LICENSE.TXT for more information. */ #ifndef _DATAITEMCASTAS_HPP #define _DATAITEMCASTAS_HPP #include #include class SequenceType; class PATHAN_EXPORT DataItemCastAs : public DataItemImpl { public: DataItemCastAs(DataItem* expr, SequenceType* exprType, XPath2MemoryManager* memMgr); Sequence collapseTreeInternal(DynamicContext* context, int flags=0) const; /** * Called during static analysis to determine if statically correct. If * not an appropriate error is thrown. */ virtual DataItem* staticResolution(StaticContext *context, StaticResolutionContext *src); const DataItem *getExpression() const; const SequenceType *getSequenceType() const; void setExpression(DataItem *item); protected: DataItem* _expr; SequenceType* _exprType; }; #endif // _DATAITEMCASTAS_HPP