# XQillaExpression.hpp

Go to the documentation of this file.

    00001 /*
    00002  * Copyright (c) 2001-2006
    00003  *     DecisionSoft Limited. All rights reserved.
    00004  * Copyright (c) 2004-2006
    00005  *     Progress Software Corporation. All rights reserved.
    00006  * Copyright (c) 2004-2006
    00007  *     Oracle. All rights reserved.
    00008  *
    00009  * See the file LICENSE for redistribution information.
    00010  *
    00011  * $Id: XQillaExpression.hpp,v 1.6 2006/11/01 16:37:12 jpcs Exp $
    00012  */
    00013
    00014 #ifndef __XQILLAEXPRESSION_HPP
    00015 #define __XQILLAEXPRESSION_HPP
    00016
    00017 #include <xqilla/framework/XQillaExport.hpp>
    00018
    00019 #include <xqilla/dom-api/XPath2Result.hpp>
    00020 #include <xqilla/runtime/Sequence.hpp>
    00021 #include <xercesc/dom/DOMException.hpp>
    00022 #include <xercesc/dom/DOMNode.hpp>
    00023 #include <xercesc/dom/DOMXPathExpression.hpp>
    00024 #include <xercesc/dom/DOMXPathException.hpp>
    00025
    00026
    00027 class DynamicContext;
    00028
    00035 class XQILLA_API XQillaExpression: public XERCES_CPP_NAMESPACE_QUALIFIER DOMXPathExpression
    00036 {
    00037 public:
    00038   // -----------------------------------------------------------------------
    00039   //  All constructors are hidden, just the destructor is available
    00040   // -----------------------------------------------------------------------
    00047   virtual ~XQillaExpression() {}
    00049
    00050   // -----------------------------------------------------------------------
    00051   // Virtual XQillaExpression interface
    00052   // -----------------------------------------------------------------------
    00085   virtual void* evaluate(XERCES_CPP_NAMESPACE_QUALIFIER DOMNode* contextNode,
    00086                          unsigned short type,
    00087                          void* reuseableResult) const = 0;
    00088
    00090
    00099   virtual void release() = 0;
    00101 protected:
    00102   // -----------------------------------------------------------------------
    00103   //  Hidden constructors
    00104   // -----------------------------------------------------------------------
    00107   XQillaExpression() {};
    00109 };//XQillaExpression
    00110
    00111 #endif //__XQILLAEXPRESSION_HPP
    00112