# XQillaExpression Class Reference

The `XQillaExpression` interface extends the `DOMXPathExpression` interface, providing the ability to release the object. More...

`#include <XQillaExpression.hpp>`

Inheritance diagram for XQillaExpression:

[legend]
List of all members.

## Public Member Functions

virtual void * | evaluate (xercesc::DOMNode *contextNode, unsigned short type, void *reuseableResult) const =0
| Evaluates this XPath expression and returns a result.
Destructor
virtual | ~XQillaExpression ()
| Destructor.
Non-standard Extension
virtual void | release ()=0
| Called to indicate that this object (and its associated children) is no longer in use and that the implementation may relinquish any resources associated with it and its associated children.

## Protected Member Functions

Hidden constructors
| XQillaExpression ()

## Detailed Description

The `XQillaExpression` interface extends the `DOMXPathExpression` interface, providing the ability to release the object.

The evaluate method will always return an object of type `XPath2Result`

Since:
  DOM Level 3

## Constructor & Destructor Documentation

virtual XQillaExpression::~XQillaExpression | ( |  | ) | `[inline, virtual]`

| Destructor.

XQillaExpression::XQillaExpression | ( |  | ) | `[inline, protected]`

## Member Function Documentation

virtual void* XQillaExpression::evaluate | ( | xercesc::DOMNode * | contextNode,
|  | unsigned short | type,
|  | void * | reuseableResult
| ) | const`[pure virtual]`

Evaluates this XPath expression and returns a result.

Parameters:

  contextNode

  of type `DOMNode` The context is context node for the evaluation of this XPath expression. If the XPathEvaluator was obtained by casting the Document then this must be owned by the same document and must be a `DOMDocument`, `DOMElement`, `DOMAttribute`, `DOMText`, `DOMCDATASection`, `DOMComment`, `DOMProcessingInstruction`, or `XPathNamespace`. If the context node is a `DOMText` or a `DOMCDATASection`, then the context is interpreted as the whole logical text node as seen by XPath, unless the node is empty in which case it may not serve as the XPath context.

  | type | of type unsigned short If a specific type is specified, then the result will be coerced to return the specified type relying on XPath conversions and fail if the desired coercion is not possible. This must be one of the type codes of `XPathResult`.
  | result | of type void* The result specifies a specific result object which may be reused and returned by this method. If this is specified as nullor the implementation does not reuse the specified result, a new result object will be constructed and returned. For XPath 1.0 results, this object will be of type `XPathResult`. For XPath 2.0 results, this object will be of type `XPath2Result`.

Returns:
  void* The result of the evaluation of the XPath expression. For XPath 1.0 results, this object will be of type `XPathResult`. For XPath 2.0 results, this object will be of type `XPath2Result`.

Exceptions:

  | XPathException | TYPE_ERR: Raised if the result cannot be converted to return the specified type.
  | DOMException | WRONG_DOCUMENT_ERR: The `DOMNode` is from a document that is not supported by the `XPathEvaluator` that created this `DOMXPathExpression`. NOT_SUPPORTED_ERR: The Node is not a type permitted as an XPath context node or the request type is not permitted by this `DOMXPathExpression`.

Implements xercesc::DOMXPathExpression.

virtual void XQillaExpression::release | ( |  | ) | `[pure virtual]`

| Called to indicate that this object (and its associated children) is no longer in use and that the implementation may relinquish any resources associated with it and its associated children. Access to a released object will lead to unexpected result.

The documentation for this class was generated from the following file:

- XQillaExpression.hpp