## Xalan-C++ API Documentation

### The Xalan C++ XSLT Processor Version 1.6

Main Page Class Hierarchy Alphabetical List Compound List File List Compound Members File Members

# XPath Class Reference

`#include <XPath.hpp>`

Collaboration diagram for XPath:

List of all members.

## Public Types

- typedef XERCES_CPP_NAMESPACE_QUALIFIER
  Locator LocatorType
- typedef std::vector<TargetData> TargetDataVectorType
- typedef void (FormatterListener::* MemberFunctionPtr )(const XMLCh* const, const unsigned int)
- typedef XPathFunctionTable FunctionTableType
- enum eMatchScore {
  eMatchScoreNone,
  eMatchScoreNodeTest,
  eMatchScoreNSWild,
  eMatchScoreQName,
  eMatchScoreOther
  }

## Public Methods

- XPath (const LocatorType* theLocator = 0)
    Construct an XPath. More...
- ~XPath ()
- void shrink ()
    Shrink internal tables.
- const XObjectPtr execute ( XalanNode* context, const PrefixResolver& prefixResolver, XPathExecutionContext& executionContext) const
    Execute the XPath from the provided context. More...
- void execute ( XalanNode* context, const PrefixResolver& prefixResolver, XPathExecutionContext& executionContext, bool& result) const
    Execute the XPath from the provided context. More...
- void execute ( XalanNode* context, const PrefixResolver& prefixResolver, XPathExecutionContext& executionContext, double& result) const
    Execute the XPath from the provided context. More...
- void execute ( XalanNode* context, const PrefixResolver& prefixResolver, XPathExecutionContext& executionContext, XalanDOMString& result) const
    Execute the XPath from the provided context. More...
- void execute ( XalanNode* context, const PrefixResolver& prefixResolver, XPathExecutionContext& executionContext, FormatterListener& formatterListener, MemberFunctionPtr function) const
    Execute the XPath from the provided context. More...
- const XObjectPtr execute ( XalanNode* context, const PrefixResolver& prefixResolver, XPathExecutionContext& executionContext, MutableNodeRefList& result) const
    Execute the XPath from the provided context. More...
- const XObjectPtr execute ( XalanNode* context, const PrefixResolver& prefixResolver, const NodeRefListBase& contextNodeList, XPathExecutionContext& executionContext) const
    Execute the XPath from the provided context. More...
- void execute ( XalanNode* context, const PrefixResolver& prefixResolver, const NodeRefListBase& contextNodeList, XPathExecutionContext& executionContext, bool& result) const
    Execute the XPath from the provided context. More...
- void execute ( XalanNode* context, const PrefixResolver& prefixResolver, const NodeRefListBase& contextNodeList, XPathExecutionContext& executionContext, double& result) const
    Execute the XPath from the provided context. More...
- void execute ( XalanNode* context, const PrefixResolver& prefixResolver, const NodeRefListBase& contextNodeList, XPathExecutionContext& executionContext, XalanDOMString& result) const
    Execute the XPath from the provided context. More...
- void execute ( XalanNode* context, const PrefixResolver& prefixResolver, const NodeRefListBase& contextNodeList, XPathExecutionContext& executionContext, FormatterListener& formatterListener, MemberFunctionPtr function) const
    Execute the XPath from the provided context. More...
- const XObjectPtr execute ( XalanNode* context, const PrefixResolver& prefixResolver, const NodeRefListBase& contextNodeList, XPathExecutionContext& executionContext, MutableNodeRefList& result) const
    Execute the XPath from the provided context. More...
- const XObjectPtr execute (XPathExecutionContext& executionContext) const
    Execute the XPath from the provided context. More...
- void execute ( XPathExecutionContext& executionContext, bool& result) const
    Execute the XPath from the provided context. More...
- void execute ( XPathExecutionContext& executionContext, double& result) const
    Execute the XPath from the provided context. More...
- void execute ( XPathExecutionContext& executionContext, XalanDOMString& result) const
    Execute the XPath from the provided context. More...
- void execute ( XPathExecutionContext& executionContext, FormatterListener& formatterListener, MemberFunctionPtr function) const
    Execute the XPath from the provided context. More...
- const XObjectPtr execute ( XPathExecutionContext& executionContext, MutableNodeRefList& result) const
    Execute the XPath from the provided context. More...
- const XObjectPtr execute ( const PrefixResolver& prefixResolver, XPathExecutionContext& executionContext) const
    Execute the XPath from the provided context. More...
- void execute ( const PrefixResolver& prefixResolver, XPathExecutionContext& executionContext, bool& result) const
    Execute the XPath from the provided context. More...
- void execute ( const PrefixResolver& prefixResolver, XPathExecutionContext& executionContext, double& result) const
    Execute the XPath from the provided context. More...
- void execute ( const PrefixResolver& prefixResolver, XPathExecutionContext& executionContext, XalanDOMString& result) const
    Execute the XPath from the provided context. More...
- void execute ( const PrefixResolver& prefixResolver, XPathExecutionContext& executionContext, FormatterListener& formatterListener, MemberFunctionPtr function) const
    Execute the XPath from the provided context. More...
- XObjectPtr execute ( const PrefixResolver& prefixResolver, XPathExecutionContext& executionContext, MutableNodeRefList& result) const
    Execute the XPath from the provided context. More...
- XPathExpression& getExpression ()
    Retrieve a reference to the current expression. More...
- const XPathExpression& getExpression () const
    Retrieve a reference to the current expression. More...
- eMatchScore getMatchScore ( XalanNode* node, XPathExecutionContext& executionContext) const
    Get the match score for the specified node. More...
- eMatchScore getMatchScore ( XalanNode* node, const PrefixResolver& resolver, XPathExecutionContext& executionContext) const
    Get the match score for the specified node. More...
- const XObjectPtr predicate ( XalanNode* context, int opPos, XPathExecutionContext& executionContext) const
    Evaluate a predicate. More...
- void getTargetData (TargetDataVectorType& targetData) const
    Add the data for the target of match pattern to a vector. More...
- bool getInStylesheet () const
- void setInStylesheet (bool fValue)
- const LocatorType* getLocator () const
- void setLocator (const LocatorType* theLocator)

## Static Public Methods

- void initialize ()
    Perform static initialization. More...
- void terminate ()
    Perform static shut down. More...
- double getMatchScoreValue (eMatchScore score)
- void installFunction ( const XalanDOMString& funcName, const Function& func)
    Install a built-in function. More...
- void installFunction ( const XalanDOMChar* funcName, const Function& func)
    Install a built-in function. More...
- bool uninstallFunction (const XalanDOMString& funcName)
    Remove a named function from the function table. More...
- bool uninstallFunction (const XalanDOMChar* funcName)
    Remove a named function from the function table. More...
- bool isInstalledFunction (const XalanDOMString& theFunctionName)
    Whether the named function is installed in the function table. More...
- const FunctionTableType& getFunctionTable ()
    Retrieve the table of installed functions. More...
- template<classOutputIteratorType> void getInstalledFunctionNames (OutputIteratorType theIterator)
    Add the names for the installed functions to a vector strings. More...
- void destroyTable ()

## Static Public Attributes

- const XalanDOMChar PSEUDONAME_ANY []
- const XalanDOMChar PSEUDONAME_ROOT []
- const XalanDOMChar PSEUDONAME_TEXT []
- const XalanDOMChar PSEUDONAME_COMMENT []
- const XalanDOMChar PSEUDONAME_PI []
- const XalanDOMChar PSEUDONAME_OTHER []
- const XalanDOMChar PSEUDONAME_NODE []

## Protected Methods

- const XObjectPtr locationPath ( XalanNode* context, int opPos, XPathExecutionContext& executionContext) const
    Execute a location path. More...
- void locationPath ( XalanNode* context, int opPos, XPathExecutionContext& executionContext, bool& theResult) const
    Execute a location path. More...
- void locationPath ( XalanNode* context, int opPos, XPathExecutionContext& executionContext, double& theResult) const
    Execute a location path. More...
- void locationPath ( XalanNode* context, int opPos, XPathExecutionContext& executionContext, XalanDOMString& theResult) const
    Execute a location path. More...
- void locationPath ( XalanNode* context, int opPos, XPathExecutionContext& executionContext, FormatterListener& formatterListener, MemberFunctionPtr function) const
    Execute a location path. More...
- void locationPath ( XalanNode* context, int opPos, XPathExecutionContext& executionContext, MutableNodeRefList& theResult) const
    Execute a location path. More...
- const XObjectPtr executeMore ( XalanNode* context, int opPos, XPathExecutionContext& executionContext) const
    Execute the XPath from the provided context. More...
- void executeMore ( XalanNode* context, int opPos, XPathExecutionContext& executionContext, bool& theResult) const
    Execute the XPath from the provided context. More...
- void executeMore ( XalanNode* context, int opPos, XPathExecutionContext& executionContext, double& theResult) const
    Execute the XPath from the provided context. More...
- void executeMore ( XalanNode* context, int opPos, XPathExecutionContext& executionContext, XalanDOMString& theResult) const
    Execute the XPath from the provided context. More...
- void executeMore ( XalanNode* context, int opPos, XPathExecutionContext& executionContext, FormatterListener& formatterListener, MemberFunctionPtr function) const
    Execute the XPath from the provided context. More...
- const XObjectPtr executeMore ( XalanNode* context, int opPos, XPathExecutionContext& executionContext, MutableNodeRefList& theResult) const
    Execute the XPath from the provided context. More...
- void doGetMatchScore ( XalanNode* context, XPathExecutionContext& executionContext, eMatchScore& score) const
    Helper function to get match score. More...
- bool Or ( XalanNode* context, int opPos, XPathExecutionContext& executionContext) const
    OR two expressions and return the boolean result. More...
- bool And ( XalanNode* context, int opPos, XPathExecutionContext& executionContext) const
    OR two expressions and return the boolean result. More...
- bool notequals ( XalanNode* context, int opPos, XPathExecutionContext& executionContext) const
    Tell if two expressions are functionally not equal. More...
- bool equals ( XalanNode* context, int opPos, XPathExecutionContext& executionContext) const
    Tell if two expressions are functionally equal. More...
- bool lte ( XalanNode* context, int opPos, XPathExecutionContext& executionContext) const
    Tell if one argument is less than or equal to the other argument. More...
- bool lt ( XalanNode* context, int opPos, XPathExecutionContext& executionContext) const
    Tell if one argument is less than the other argument. More...
- bool gte ( XalanNode* context, int opPos, XPathExecutionContext& executionContext) const
    Tell if one argument is greater than or equal to the other argument. More...
- bool gt ( XalanNode* context, int opPos, XPathExecutionContext& executionContext) const
    Tell if one argument is greater than the other argument. More...
- double plus ( XalanNode* context, int opPos, XPathExecutionContext& executionContext) const
    Give the sum of two arguments. More...
- void plus ( XalanNode* context, int opPos, XPathExecutionContext& executionContext, FormatterListener& formatterListener, MemberFunctionPtr function) const
    Give the sum of two arguments. More...
- double minus ( XalanNode* context, int opPos, XPathExecutionContext& executionContext) const
    Give the difference of two arguments. More...
- void minus ( XalanNode* context, int opPos, XPathExecutionContext& executionContext, FormatterListener& formatterListener, MemberFunctionPtr function) const
    Give the difference of two arguments. More...
- double mult ( XalanNode* context, int opPos, XPathExecutionContext& executionContext) const
    Multiply two arguments. More...
- void mult ( XalanNode* context, int opPos, XPathExecutionContext& executionContext, FormatterListener& formatterListener, MemberFunctionPtr function) const
    Multiply two arguments. More...
- double div ( XalanNode* context, int opPos, XPathExecutionContext& executionContext) const
    Divide a number. More...
- void div ( XalanNode* context, int opPos, XPathExecutionContext& executionContext, FormatterListener& formatterListener, MemberFunctionPtr function) const
    Divide a number. More...
- double mod ( XalanNode* context, int opPos, XPathExecutionContext& executionContext) const
    Return the remainder from a truncating division. More...
- void mod ( XalanNode* context, int opPos, XPathExecutionContext& executionContext, FormatterListener& formatterListener, MemberFunctionPtr function) const
    Return the remainder from a truncating division. More...
- double neg ( XalanNode* context, int opPos, XPathExecutionContext& executionContext) const
    Return the negation of a number. More...
- void neg ( XalanNode* context, int opPos, XPathExecutionContext& executionContext, FormatterListener& formatterListener, MemberFunctionPtr function) const
    Return the negation of a number. More...
- const XObjectPtr Union ( XalanNode* context, int opPos, XPathExecutionContext& executionContext) const
    Computes the union of its operands which must be node-sets. More...
- void Union ( XalanNode* context, int opPos, XPathExecutionContext& executionContext, bool& result) const
    Computes the union of its operands which must be node-sets. More...
- void Union ( XalanNode* context, int opPos, XPathExecutionContext& executionContext, double& result) const
    Computes the union of its operands which must be node-sets. More...
- void Union ( XalanNode* context, int opPos, XPathExecutionContext& executionContext, XalanDOMString& result) const
    Computes the union of its operands which must be node-sets. More...
- void Union ( XalanNode* context, int opPos, XPathExecutionContext& executionContext, FormatterListener& formatterListener, MemberFunctionPtr function) const
    Computes the union of its operands which must be node-sets. More...
- void Union ( XalanNode* context, int opPos, XPathExecutionContext& executionContext, MutableNodeRefList& result) const
    Computes the union of its operands which must be node-sets. More...
- const XObjectPtr literal ( int opPos, XPathExecutionContext& executionContext) const
    Get a literal value. More...
- void literal ( int opPos, bool& theResult) const
    Get a literal value as a boolean. More...
- void literal ( int opPos, double& theResult) const
    Get a literal value as a number. More...
- void literal ( int opPos, XalanDOMString& theResult) const
    Get a literal value. More...
- void literal ( int opPos, FormatterListener& formatterListener, MemberFunctionPtr function) const
    Get a literal value. More...
- const XObjectPtr variable ( int opPos, XPathExecutionContext& executionContext) const
    Get the value of a variable. More...
- const XObjectPtr group ( XalanNode* context, int opPos, XPathExecutionContext& executionContext) const
    Execute an expression as a group. More...
- void group ( XalanNode* context, int opPos, XPathExecutionContext& executionContext, bool& theResult) const
    Execute an expression as a group. More...
- void group ( XalanNode* context, int opPos, XPathExecutionContext& executionContext, double& theResult) const
    Execute an expression as a group. More...
- void group ( XalanNode* context, int opPos, XPathExecutionContext& executionContext, XalanDOMString& theResult) const
    Execute an expression as a group. More...
- void group ( XalanNode* context, int opPos, XPathExecutionContext& executionContext, FormatterListener& formatterListener, MemberFunctionPtr function) const
    Execute an expression as a group. More...
- void group ( XalanNode* context, int opPos, XPathExecutionContext& executionContext, MutableNodeRefList& theResult) const
    Execute an expression as a group. More...
- double numberlit (int opPos) const
    Get a literal value. More...
- const XObjectPtr numberlit ( int opPos, XPathExecutionContext& executionContext) const
    Get a literal value. More...
- void numberlit ( int opPos, bool& theResult) const
    Get a literal value as a boolean. More...
- void numberlit ( int opPos, XalanDOMString& theResult) const
    Get a literal value. More...
- void numberlit ( int opPos, FormatterListener& formatterListener, MemberFunctionPtr function) const
    Get a literal value. More...
- const XObjectPtr runExtFunction ( XalanNode* context, int opPos, XPathExecutionContext& executionContext) const
    Setup for and run an extension function. More...
- const XObjectPtr extfunction ( XalanNode* context, int , const XalanDOMString& theNamespace, const XalanDOMString& functionName, const Function::XObjectArgVectorType& argVec, XPathExecutionContext& executionContext) const
    Handle an extension function. More...
- const XObjectPtr runFunction ( XalanNode* context, int opPos, XPathExecutionContext& executionContext) const
    Setup for and run a function. More...
- const XObjectPtr function ( XalanNode* context, int funcID, const Function::XObjectArgVectorType& argVec, XPathExecutionContext& executionContext) const
    Handle a built-in function. More...
- double functionPosition ( XalanNode* context, XPathExecutionContext& executionContext) const
    Handle the built-in function "position". More...
- double functionLast (XPathExecutionContext& executionContext) const
    Handle the built-in function "last". More...
- double functionCount ( XalanNode* context, int opPos, XPathExecutionContext& executionContext) const
    Handle the built-in function "count". More...
- bool functionNot ( XalanNode* context, int opPos, XPathExecutionContext& executionContext) const
    Handle the built-in function "not". More...
- bool functionBoolean ( XalanNode* context, int opPos, XPathExecutionContext& executionContext) const
    Handle the built-in function "boolean". More...
- const XalanDOMString& functionName (XalanNode* context) const
    Handle the built-in function "name". More...
- const XalanDOMString& functionName ( XalanNode* context, int opPos, XPathExecutionContext& executionContext) const
    Handle the built-in function "name". More...
- const XalanDOMString& functionLocalName (XalanNode* context) const
    Handle the built-in function "local-name". More...
- const XalanDOMString& functionLocalName ( XalanNode* context, int opPos, XPathExecutionContext& executionContext) const
    Handle the built-in function "local-name". More...
- double functionNumber ( XalanNode* context, XPathExecutionContext& executionContext) const
    Handle the built-in function "number". More...
- double functionNumber ( XalanNode* context, int opPos, XPathExecutionContext& executionContext) const
    Handle the built-in function "number". More...
- double functionFloor ( XalanNode* context, int opPos, XPathExecutionContext& executionContext) const
    Handle the built-in function "floor". More...
- double functionCeiling ( XalanNode* context, int opPos, XPathExecutionContext& executionContext) const
    Handle the built-in function "ceiling". More...
- double functionRound ( XalanNode* context, int opPos, XPathExecutionContext& executionContext) const
    Handle the built-in function "round". More...
- double functionStringLength (XalanNode* context) const
    Handle the built-in function "string-length". More...
- double functionStringLength ( XalanNode* context, int opPos, XPathExecutionContext& executionContext) const
    Handle the built-in function "string-length". More...
- double functionSum ( XalanNode* context, int opPos, XPathExecutionContext& executionContext) const
    Handle the built-in function "sum". More...
- double getNumericOperand ( XalanNode* context, int opPos, XPathExecutionContext& executionContext) const
    Get a numeric operand for an expression. More...
- void step ( XPathExecutionContext& executionContext, XalanNode* context, int opPos, MutableNodeRefList& queryResults) const
- XalanNode* stepPattern ( XPathExecutionContext& executionContext, XalanNode* context, int opPos, eMatchScore& scoreHolder) const
    Execute a step in a location path. More...
- int findNodeSet ( XPathExecutionContext& executionContext, XalanNode* context, int opPos, int stepType, MutableNodeRefList& subQueryResults) const
- int findRoot ( XPathExecutionContext& executionContext, XalanNode* context, int opPos, int stepType, MutableNodeRefList& subQueryResults) const
- int findParent ( XPathExecutionContext& executionContext, XalanNode* context, int opPos, int stepType, MutableNodeRefList& subQueryResults) const
- int findSelf ( XPathExecutionContext& executionContext, XalanNode* context, int opPos, int stepType, MutableNodeRefList& subQueryResults) const
- int findAncestors ( XPathExecutionContext& executionContext, XalanNode* context, int opPos, int stepType, MutableNodeRefList& subQueryResults) const
- int findAncestorsOrSelf ( XPathExecutionContext& executionContext, XalanNode* context, int opPos, int stepType, MutableNodeRefList& subQueryResults) const
- int findAttributes ( XPathExecutionContext& executionContext, XalanNode* context, int opPos, int stepType, MutableNodeRefList& subQueryResults) const
- int findChildren ( XPathExecutionContext& executionContext, XalanNode* context, int opPos, int stepType, MutableNodeRefList& subQueryResults) const
- int findDescendants ( XPathExecutionContext& executionContext, XalanNode* context, int opPos, int stepType, MutableNodeRefList& subQueryResults) const
- int findFollowing ( XPathExecutionContext& executionContext, XalanNode* context, int opPos, int stepType, MutableNodeRefList& subQueryResults) const
- int findFollowingSiblings ( XPathExecutionContext& executionContext, XalanNode* context, int opPos, int stepType, MutableNodeRefList& subQueryResults) const
- int findPreceeding ( XPathExecutionContext& executionContext, XalanNode* context, int opPos, int stepType, MutableNodeRefList& subQueryResults) const
- int findPreceedingSiblings ( XPathExecutionContext& executionContext, XalanNode* context, int opPos, int stepType, MutableNodeRefList& subQueryResults) const
- int findNamespace ( XPathExecutionContext& executionContext, XalanNode* context, int opPos, int stepType, MutableNodeRefList& subQueryResults) const
- int findNodesOnUnknownAxis ( XPathExecutionContext& executionContext, XalanNode* context, int opPos, int stepType, MutableNodeRefList& subQueryResults) const
- eMatchScore nodeTest ( XPathExecutionContext& executionContext, XalanNode* context, XalanNode::NodeType nodeType, int opPos, int argLen, int stepType) const
- int predicates ( XPathExecutionContext& executionContext, int opPos, MutableNodeRefList& subQueryResults) const
- eMatchScore handleFoundIndex ( XPathExecutionContext& executionContext, XalanNode* localContext, int startOpPos) const
- eMatchScore handleFoundIndexPositional ( XPathExecutionContext& executionContext, XalanNode* localContext, int startOpPos) const

## Member Typedef Documentation

typedef XPathFunctionTable XPath::FunctionTableType

typedef XERCES_CPP_NAMESPACE_QUALIFIER Locator XPath::LocatorType

typedef void (FormatterListener::* XPath::MemberFunctionPtr)(const XMLCh* const, const unsigned int)

typedef std::vector<TargetData> XPath::TargetDataVectorType

## Member Enumeration Documentation

enum XPath::eMatchScore

Enumeration values:

  eMatchScoreNone |
  eMatchScoreNodeTest |
  eMatchScoreNSWild |
  eMatchScoreQName |
  eMatchScoreOther |

## Constructor & Destructor Documentation

XPath::XPath ( | const LocatorType * theLocator = 0 )`[explicit]`

Construct an XPath.

Parameters:

  theLocator | The applicable LocatorType, if any.

XPath::~XPath ( | )

## Member Function Documentation

bool XPath::And ( | XalanNode * context,
| int opPos,
| XPathExecutionContext & executionContext ) const`[protected]`

OR two expressions and return the boolean result.

Parameters:

  context | The current source tree context node.
  opPos | The current position in the m_opMap array.
  executionContext | current execution context

Returns:
  true if the two arguments are both true.

bool XPath::Or ( | XalanNode * context,
| int opPos,
| XPathExecutionContext & executionContext ) const`[protected]`

OR two expressions and return the boolean result.

Parameters:

  context | The current source tree context node.
  opPos | The current position in the m_opMap array.
  executionContext | current execution context

Returns:
  true if the one of the two arguments are true.

void XPath::Union ( | XalanNode * context,
| int opPos,
| XPathExecutionContext & executionContext,
| MutableNodeRefList & result ) const`[protected]`

Computes the union of its operands which must be node-sets.

Parameters:

  context | The current source tree context node.
  opPos | The current position in the m_opMap array.
  executionContext | current execution context

Returns:
  the result of the union of node-set operands.

void XPath::Union ( | XalanNode * context,
| int opPos,
| XPathExecutionContext & executionContext,
| FormatterListener & formatterListener,
| MemberFunctionPtr function ) const`[protected]`

Computes the union of its operands which must be node-sets.

Parameters:

  context | The current source tree context node.
  opPos | The current position in the m_opMap array.
  executionContext | current execution context
  formatterListener | the FormatterListener instance to receive the result
  function | A pointer to the member function of FormatterListener to call

void XPath::Union ( | XalanNode * context,
| int opPos,
| XPathExecutionContext & executionContext,
| XalanDOMString & result ) const`[protected]`

Computes the union of its operands which must be node-sets.

Parameters:

  context | The current source tree context node.
  opPos | The current position in the m_opMap array.
  executionContext | current execution context

Returns:
  the result of the union of node-set operands.

void XPath::Union ( | XalanNode * context,
| int opPos,
| XPathExecutionContext & executionContext,
| double & result ) const`[protected]`

Computes the union of its operands which must be node-sets.

Parameters:

  context | The current source tree context node.
  opPos | The current position in the m_opMap array.
  executionContext | current execution context

Returns:
  the result of the union of node-set operands.

void XPath::Union ( | XalanNode * context,
| int opPos,
| XPathExecutionContext & executionContext,
| bool & result ) const`[protected]`

Computes the union of its operands which must be node-sets.

Parameters:

  context | The current source tree context node.
  opPos | The current position in the m_opMap array.
  executionContext | current execution context

Returns:
  the result of the union of node-set operands.

const XObjectPtr XPath::Union ( | XalanNode * context,
| int opPos,
| XPathExecutionContext & executionContext ) const`[protected]`

Computes the union of its operands which must be node-sets.

Parameters:

  context | The current source tree context node.
  opPos | The current position in the m_opMap array.
  executionContext | current execution context

Returns:
  the union of node-set operands.

void XPath::destroyTable ( | )`[static]`

void XPath::div ( | XalanNode * context,
| int opPos,
| XPathExecutionContext & executionContext,
| FormatterListener & formatterListener,
| MemberFunctionPtr function ) const`[protected]`

Divide a number.

Parameters:

  context | The current source tree context node.
  opPos | The current position in the m_opMap array.
  executionContext | current execution context
  formatterListener | the FormatterListener instance to receive the result
  function | A pointer to the member function of FormatterListener to call

double XPath::div ( | XalanNode * context,
| int opPos,
| XPathExecutionContext & executionContext ) const`[protected]`

Divide a number.

Parameters:

  context | The current source tree context node.
  opPos | The current position in the m_opMap array.
  executionContext | current execution context

Returns:
  arg1 / arg2.

void XPath::doGetMatchScore ( | XalanNode * context,
| XPathExecutionContext & executionContext,
| eMatchScore & score ) const`[protected]`

Helper function to get match score.

Parameters:

  context | The current source tree context node.
  executionContext | The current execution context
  score | The match score

bool XPath::equals ( | XalanNode * context,
| int opPos,
| XPathExecutionContext & executionContext ) const`[protected]`

Tell if two expressions are functionally equal.

Parameters:

  context | The current source tree context node.
  opPos | The current position in the m_opMap array.
  executionContext | current execution context

Returns:
  true if the two arguments are equal.

XObjectPtr XPath::execute ( | const PrefixResolver & prefixResolver,
| XPathExecutionContext & executionContext,
| MutableNodeRefList & result ) const`[]`

Execute the XPath from the provided context.

Normally, the expression will be evaluated and the result placed in the parameter result. However, some cases (such as the evalution of a variable) could result in the copying of a node-set, which is extremely expensive. In that case, the return value will contain the result of the evaluation. If the call to XObject::null() on the return value is true, that indicates the value was executed directly into the parameter. Otherwise, the parameter will be empty, and the result will be in the XObject instance returned.

The current node must already be set execution context, and must not be 0.

Parameters:

  executionContext | current execution context
  prefixResolver | prefix resolver to use
  result | A node list for the result. This may or may not contain the actual result.

Returns:
  the node-set result, if the result was not returned in the parameter

void XPath::execute ( | const PrefixResolver & prefixResolver,
| XPathExecutionContext & executionContext,
| FormatterListener & formatterListener,
| MemberFunctionPtr function ) const`[]`

Execute the XPath from the provided context.

Parameters:

  prefixResolver | prefix resolver to use
  executionContext | current execution context
  formatterListener | the FormatterListener instance to receive the result
  function | A pointer to the member function of FormatterListener to call

void XPath::execute ( | const PrefixResolver & prefixResolver,
| XPathExecutionContext & executionContext,
| XalanDOMString & result ) const`[]`

Execute the XPath from the provided context.

The result is appended to the supplied string.

The current node must already be set execution context, and must not be 0.

Parameters:

  executionContext | current execution context
  prefixResolver | prefix resolver to use
  result | the string result

void XPath::execute ( | const PrefixResolver & prefixResolver,
| XPathExecutionContext & executionContext,
| double & result ) const`[]`

Execute the XPath from the provided context.

The current node must already be set execution context, and must not be 0.

Parameters:

  executionContext | current execution context
  prefixResolver | prefix resolver to use
  result | the numeric result

void XPath::execute ( | const PrefixResolver & prefixResolver,
| XPathExecutionContext & executionContext,
| bool & result ) const`[]`

Execute the XPath from the provided context.

The current node must already be set execution context, and must not be 0.

Parameters:

  executionContext | current execution context
  prefixResolver | prefix resolver to use
  result | the boolean result

const XObjectPtr XPath::execute ( | const PrefixResolver & prefixResolver,
| XPathExecutionContext & executionContext ) const`[]`

Execute the XPath from the provided context.

The current node must already be set execution context, and must not be 0.

Parameters:

  executionContext | current execution context
  prefixResolver | prefix resolver to use

Returns:
  smart-pointer to result XObject

const XObjectPtr XPath::execute ( | XPathExecutionContext & executionContext,
| MutableNodeRefList & result ) const`[]`

Execute the XPath from the provided context.

Normally, the expression will be evaluated and the result placed in the parameter result. However, some cases (such as the evalution of a variable) could result in the copying of a node-set, which is extremely expensive. In that case, the return value will contain the result of the evaluation. If the call to XObject::null() on the return value is true, that indicates the value was executed directly into the parameter. Otherwise, the parameter will be empty, and the result will be in the XObject instance returned.

The prefix resolver and current node must already be set execution context, and must not be 0.

Parameters:

  executionContext | current execution context
  result | A node list for the result. This may or may not contain the actual result.

Returns:
  the node-set result, if the result was not returned in the parameter

void XPath::execute ( | XPathExecutionContext & executionContext,
| FormatterListener & formatterListener,
| MemberFunctionPtr function ) const`[]`

Execute the XPath from the provided context.

The prefix resolver and current node must already be set execution context, and must not be 0.

Parameters:

  executionContext | current execution context
  formatterListener | the FormatterListener instance to receive the result
  function | A pointer to the member function of FormatterListener to call

void XPath::execute ( | XPathExecutionContext & executionContext,
| XalanDOMString & result ) const`[]`

Execute the XPath from the provided context.

The result is appended to the supplied string.

The prefix resolver and current node must already be set execution context, and must not be 0.

Parameters:

  executionContext | current execution context
  result | the string result

void XPath::execute ( | XPathExecutionContext & executionContext,
| double & result ) const`[]`

Execute the XPath from the provided context.

The prefix resolver must already be set in the execution context.

Parameters:

  executionContext | current execution context
  result | the numeric result

void XPath::execute ( | XPathExecutionContext & executionContext,
| bool & result ) const`[]`

Execute the XPath from the provided context.

The prefix resolver and current node must already be set execution context, and must not be 0.

Parameters:

  executionContext | current execution context
  result | the boolean result

const XObjectPtr XPath::execute ( | XPathExecutionContext & executionContext ) const`[]`

Execute the XPath from the provided context.

The prefix resolver and current node must already be set execution context, and must not be 0.

Parameters:

  executionContext | current execution context

Returns:
  smart-pointer to result XObject

const XObjectPtr XPath::execute ( | XalanNode * context,
| const PrefixResolver & prefixResolver,
| const NodeRefListBase & contextNodeList,
| XPathExecutionContext & executionContext,
| MutableNodeRefList & result ) const`[]`

Execute the XPath from the provided context.

Normally, the expression will be evaluated and the result placed in the parameter result. However, some cases (such as the evalution of a variable) could result in the copying of a node-set, which is extremely expensive. In that case, the return value will contain the result of the evaluation. If the call to XObject::null() on the return value is true, that indicates the value was executed directly into the parameter. Otherwise, the parameter will be empty, and the result will be in the XObject instance returned.

Parameters:

  context | current source tree context node, which must not be 0
  prefixResolver | prefix resolver to use
  contextNodeList | node list for current context
  executionContext | current execution context
  result | the result as a set of nodes

Returns:
  the node-set result, if the result was not returned in the parameter

void XPath::execute ( | XalanNode * context,
| const PrefixResolver & prefixResolver,
| const NodeRefListBase & contextNodeList,
| XPathExecutionContext & executionContext,
| FormatterListener & formatterListener,
| MemberFunctionPtr function ) const`[]`

Execute the XPath from the provided context.

Parameters:

  context | current source tree context node, which must not be 0
  prefixResolver | prefix resolver to use
  contextNodeList | node list for current context
  executionContext | current execution context
  formatterListener | the FormatterListener instance to receive the result
  function | A pointer to the member function of FormatterListener to call

void XPath::execute ( | XalanNode * context,
| const PrefixResolver & prefixResolver,
| const NodeRefListBase & contextNodeList,
| XPathExecutionContext & executionContext,
| XalanDOMString & result ) const`[]`

Execute the XPath from the provided context.

The result is appended to the supplied string.

Parameters:

  context | current source tree context node, which must not be 0
  prefixResolver | prefix resolver to use
  contextNodeList | node list for current context
  executionContext | current execution context
  result | the string result

void XPath::execute ( | XalanNode * context,
| const PrefixResolver & prefixResolver,
| const NodeRefListBase & contextNodeList,
| XPathExecutionContext & executionContext,
| double & result ) const`[]`

Execute the XPath from the provided context.

Parameters:

  context | current source tree context node, which must not be 0
  prefixResolver | prefix resolver to use
  contextNodeList | node list for current context
  executionContext | current execution context
  result | the numeric result

void XPath::execute ( | XalanNode * context,
| const PrefixResolver & prefixResolver,
| const NodeRefListBase & contextNodeList,
| XPathExecutionContext & executionContext,
| bool & result ) const`[]`

Execute the XPath from the provided context.

Parameters:

  context | current source tree context node, which must not be 0
  prefixResolver | prefix resolver to use
  contextNodeList | node list for current context
  executionContext | current execution context
  result | the boolean result

const XObjectPtr XPath::execute ( | XalanNode * context,
| const PrefixResolver & prefixResolver,
| const NodeRefListBase & contextNodeList,
| XPathExecutionContext & executionContext ) const`[]`

Execute the XPath from the provided context.

Parameters:

  context | current source tree context node, which must not be 0
  prefixResolver | prefix resolver to use
  contextNodeList | node list for current context
  executionContext | current execution context

Returns:
  smart-pointer to result XObject

const XObjectPtr XPath::execute ( | XalanNode * context,
| const PrefixResolver & prefixResolver,
| XPathExecutionContext & executionContext,
| MutableNodeRefList & result ) const

Execute the XPath from the provided context.

Normally, the expression will be evaluated and the result placed in the parameter result. However, some cases (such as the evalution of a variable) could result in the copying of a node-set, which is extremely expensive. In that case, the return value will contain the result of the evaluation. If the call to XObject::null() on the return value is true, that indicates the value was executed directly into the parameter. Otherwise, the parameter will be empty, and the result will be in the XObject instance returned.

Parameters:

  context | current source tree context node, which must not be 0
  prefixResolver | prefix resolver to use
  executionContext | current execution context
  result | the node-set result

Returns:
  the node-set result, if the result was not returned in the parameter

void XPath::execute ( | XalanNode * context,
| const PrefixResolver & prefixResolver,
| XPathExecutionContext & executionContext,
| FormatterListener & formatterListener,
| MemberFunctionPtr function ) const

Execute the XPath from the provided context.

Parameters:

  context | current source tree context node, which must not be 0
  prefixResolver | prefix resolver to use
  executionContext | current execution context
  formatterListener | the FormatterListener instance to receive the result
  function | A pointer to the member function of FormatterListener to call

void XPath::execute ( | XalanNode * context,
| const PrefixResolver & prefixResolver,
| XPathExecutionContext & executionContext,
| XalanDOMString & result ) const

Execute the XPath from the provided context.

The result is appended to the supplied string.

Parameters:

  context | current source tree context node, which must not be 0
  prefixResolver | prefix resolver to use
  executionContext | current execution context
  result | the string result

void XPath::execute ( | XalanNode * context,
| const PrefixResolver & prefixResolver,
| XPathExecutionContext & executionContext,
| double & result ) const

Execute the XPath from the provided context.

Parameters:

  context | current source tree context node, which must not be 0
  prefixResolver | prefix resolver to use
  executionContext | current execution context
  result | the numeric result

void XPath::execute ( | XalanNode * context,
| const PrefixResolver & prefixResolver,
| XPathExecutionContext & executionContext,
| bool & result ) const

Execute the XPath from the provided context.

Parameters:

  context | current source tree context node, which must not be 0
  prefixResolver | prefix resolver to use
  executionContext | current execution context
  result | the boolean result

const XObjectPtr XPath::execute ( | XalanNode * context,
| const PrefixResolver & prefixResolver,
| XPathExecutionContext & executionContext ) const

Execute the XPath from the provided context.

Parameters:

  context | current source tree context node, which must not be 0
  prefixResolver | prefix resolver to use
  executionContext | current execution context

Returns:
  smart-pointer to result XObject

const XObjectPtr XPath::executeMore ( | XalanNode * context,
| int opPos,
| XPathExecutionContext & executionContext,
| MutableNodeRefList & theResult ) const`[protected]`

Execute the XPath from the provided context.

Parameters:

  context | current source tree context node
  opPos | current position in the m_opMap array
  executionContext | current execution context
  theResult | The result of the execution

Returns:
  the node-set result, if the result was not returned in the parameter

void XPath::executeMore ( | XalanNode * context,
| int opPos,
| XPathExecutionContext & executionContext,
| FormatterListener & formatterListener,
| MemberFunctionPtr function ) const`[protected]`

Execute the XPath from the provided context.

Parameters:

  context | current source tree context node
  opPos | current position in the m_opMap array
  executionContext | current execution context
  formatterListener | the FormatterListener instance to receive the result
  function | A pointer to the member function of FormatterListener to call

void XPath::executeMore ( | XalanNode * context,
| int opPos,
| XPathExecutionContext & executionContext,
| XalanDOMString & theResult ) const`[protected]`

Execute the XPath from the provided context.

The result is appended to the supplied string.

Parameters:

  context | current source tree context node
  opPos | current position in the m_opMap array
  executionContext | current execution context
  theResult | The result of the execution

void XPath::executeMore ( | XalanNode * context,
| int opPos,
| XPathExecutionContext & executionContext,
| double & theResult ) const`[protected]`

Execute the XPath from the provided context.

Parameters:

  context | current source tree context node
  opPos | current position in the m_opMap array
  executionContext | current execution context
  theResult | The result of the execution

void XPath::executeMore ( | XalanNode * context,
| int opPos,
| XPathExecutionContext & executionContext,
| bool & theResult ) const`[protected]`

Execute the XPath from the provided context.

Parameters:

  context | current source tree context node
  opPos | current position in the m_opMap array
  executionContext | current execution context
  theResult | The result of the execution

const XObjectPtr XPath::executeMore ( | XalanNode * context,
| int opPos,
| XPathExecutionContext & executionContext ) const`[protected]`

Execute the XPath from the provided context.

Parameters:

  context | current source tree context node
  opPos | current position in the m_opMap array
  executionContext | current execution context

Returns:
  pointer to union of node-set operands

const XObjectPtr XPath::extfunction ( | XalanNode * context,
| int,
| const XalanDOMString & theNamespace,
| const XalanDOMString & functionName,
| const Function::XObjectArgVectorType & argVec,
| XPathExecutionContext & executionContext ) const`[protected]`

Handle an extension function.

Parameters:

  context | The current source tree context node.
  opPos | The current position in the m_opMap array.
  theNamespace | The namespace of the function.
  functionName | The name of the function.
  opPos | The current position in the m_opMap array.
  executionContext | current execution context

Returns:
  the result of the function.

int XPath::findAncestors ( | XPathExecutionContext & executionContext,
| XalanNode * context,
| int opPos,
| int stepType,
| MutableNodeRefList & subQueryResults ) const`[protected]`

int XPath::findAncestorsOrSelf ( | XPathExecutionContext & executionContext,
| XalanNode * context,
| int opPos,
| int stepType,
| MutableNodeRefList & subQueryResults ) const`[protected]`

int XPath::findAttributes ( | XPathExecutionContext & executionContext,
| XalanNode * context,
| int opPos,
| int stepType,
| MutableNodeRefList & subQueryResults ) const`[protected]`

int XPath::findChildren ( | XPathExecutionContext & executionContext,
| XalanNode * context,
| int opPos,
| int stepType,
| MutableNodeRefList & subQueryResults ) const`[protected]`

int XPath::findDescendants ( | XPathExecutionContext & executionContext,
| XalanNode * context,
| int opPos,
| int stepType,
| MutableNodeRefList & subQueryResults ) const`[protected]`

int XPath::findFollowing ( | XPathExecutionContext & executionContext,
| XalanNode * context,
| int opPos,
| int stepType,
| MutableNodeRefList & subQueryResults ) const`[protected]`

int XPath::findFollowingSiblings ( | XPathExecutionContext & executionContext,
| XalanNode * context,
| int opPos,
| int stepType,
| MutableNodeRefList & subQueryResults ) const`[protected]`

int XPath::findNamespace ( | XPathExecutionContext & executionContext,
| XalanNode * context,
| int opPos,
| int stepType,
| MutableNodeRefList & subQueryResults ) const`[protected]`

int XPath::findNodeSet ( | XPathExecutionContext & executionContext,
| XalanNode * context,
| int opPos,
| int stepType,
| MutableNodeRefList & subQueryResults ) const`[protected]`

int XPath::findNodesOnUnknownAxis ( | XPathExecutionContext & executionContext,
| XalanNode * context,
| int opPos,
| int stepType,
| MutableNodeRefList & subQueryResults ) const`[protected]`

int XPath::findParent ( | XPathExecutionContext & executionContext,
| XalanNode * context,
| int opPos,
| int stepType,
| MutableNodeRefList & subQueryResults ) const`[protected]`

int XPath::findPreceeding ( | XPathExecutionContext & executionContext,
| XalanNode * context,
| int opPos,
| int stepType,
| MutableNodeRefList & subQueryResults ) const`[protected]`

int XPath::findPreceedingSiblings ( | XPathExecutionContext & executionContext,
| XalanNode * context,
| int opPos,
| int stepType,
| MutableNodeRefList & subQueryResults ) const`[protected]`

int XPath::findRoot ( | XPathExecutionContext & executionContext,
| XalanNode * context,
| int opPos,
| int stepType,
| MutableNodeRefList & subQueryResults ) const`[protected]`

int XPath::findSelf ( | XPathExecutionContext & executionContext,
| XalanNode * context,
| int opPos,
| int stepType,
| MutableNodeRefList & subQueryResults ) const`[protected]`

const XObjectPtr XPath::function ( | XalanNode * context,
| int funcID,
| const Function::XObjectArgVectorType & argVec,
| XPathExecutionContext & executionContext ) const`[protected]`

Handle a built-in function.

Parameters:

  context | The current source tree context node.
  opPos | The current position in the m_opMap array.
  argVec | The arguments for the function.
  executionContext | current execution context

Returns:
  the result of the function.

bool XPath::functionBoolean ( | XalanNode * context,
| int opPos,
| XPathExecutionContext & executionContext ) const`[protected]`

Handle the built-in function "boolean".

Parameters:

  context | The current source tree context node, which must not be 0.
  opPos | The current position in the m_opMap array.
  executionContext | current execution context

Returns:
  the result of the function.

double XPath::functionCeiling ( | XalanNode * context,
| int opPos,
| XPathExecutionContext & executionContext ) const`[protected]`

Handle the built-in function "ceiling".

Parameters:

  context | The current source tree context node, which must not be 0.
  opPos | The current position in the m_opMap array.
  executionContext | current execution context

Returns:
  the result of the function.

double XPath::functionCount ( | XalanNode * context,
| int opPos,
| XPathExecutionContext & executionContext ) const`[protected]`

Handle the built-in function "count".

Parameters:

  context | The current source tree context node.
  opPos | The current position in the m_opMap array.
  executionContext | current execution context

Returns:
  the result of the function.

double XPath::functionFloor ( | XalanNode * context,
| int opPos,
| XPathExecutionContext & executionContext ) const`[protected]`

Handle the built-in function "floor".

Parameters:

  context | The current source tree context node, which must not be 0.
  opPos | The current position in the m_opMap array.
  executionContext | current execution context

Returns:
  the result of the function.

double XPath::functionLast ( | XPathExecutionContext & executionContext ) const`[protected]`

Handle the built-in function "last".

Parameters:

  executionContext | current execution context

Returns:
  the result of the function.

const XalanDOMString & XPath::functionLocalName ( | XalanNode * context,
| int opPos,
| XPathExecutionContext & executionContext ) const`[protected]`

Handle the built-in function "local-name".

Parameters:

  context | The current source tree context node, which must not be 0.
  opPos | The current position in the m_opMap array.
  executionContext | current execution context

Returns:
  the result of the function.

const XalanDOMString & XPath::functionLocalName ( | XalanNode * context ) const`[protected]`

Handle the built-in function "local-name".

Parameters:

  context | The current source tree context node, which must not be 0.

Returns:
  the result of the function.

const XalanDOMString & XPath::functionName ( | XalanNode * context,
| int opPos,
| XPathExecutionContext & executionContext ) const`[protected]`

Handle the built-in function "name".

Parameters:

  context | The current source tree context node, which must not be 0.
  opPos | The current position in the m_opMap array.
  executionContext | current execution context

Returns:
  the result of the function.

const XalanDOMString & XPath::functionName ( | XalanNode * context ) const`[protected]`

Handle the built-in function "name".

Parameters:

  context | The current source tree context node, which must not be 0.

Returns:
  the result of the function.

bool XPath::functionNot ( | XalanNode * context,
| int opPos,
| XPathExecutionContext & executionContext ) const`[protected]`

Handle the built-in function "not".

Parameters:

  context | The current source tree context node, which must not be 0.
  opPos | The current position in the m_opMap array.
  executionContext | current execution context

Returns:
  the result of the function.

double XPath::functionNumber ( | XalanNode * context,
| int opPos,
| XPathExecutionContext & executionContext ) const`[protected]`

Handle the built-in function "number".

Parameters:

  context | The current source tree context node, which must not be 0.
  opPos | The current position in the m_opMap array.
  executionContext | current execution context

Returns:
  the result of the function.

double XPath::functionNumber ( | XalanNode * context,
| XPathExecutionContext & executionContext ) const`[protected]`

Handle the built-in function "number".

Parameters:

  context | The current source tree context node, which must not be 0.
  executionContext | current execution context

Returns:
  the result of the function.

double XPath::functionPosition ( | XalanNode * context,
| XPathExecutionContext & executionContext ) const`[protected]`

Handle the built-in function "position".

Parameters:

  context | The current source tree context node, which must not be 0.
  executionContext | current execution context

Returns:
  the result of the function.

double XPath::functionRound ( | XalanNode * context,
| int opPos,
| XPathExecutionContext & executionContext ) const`[protected]`

Handle the built-in function "round".

Parameters:

  context | The current source tree context node, which must not be 0.
  opPos | The current position in the m_opMap array.
  executionContext | current execution context

Returns:
  the result of the function.

double XPath::functionStringLength ( | XalanNode * context,
| int opPos,
| XPathExecutionContext & executionContext ) const`[protected]`

Handle the built-in function "string-length".

Parameters:

  context | The current source tree context node, which must not be 0.
  opPos | The current position in the m_opMap array.
  executionContext | current execution context

Returns:
  the result of the function.

double XPath::functionStringLength ( | XalanNode * context ) const`[protected]`

Handle the built-in function "string-length".

Parameters:

  context | The current source tree context node, which must not be 0.

Returns:
  the result of the function.

double XPath::functionSum ( | XalanNode * context,
| int opPos,
| XPathExecutionContext & executionContext ) const`[protected]`

Handle the built-in function "sum".

Parameters:

  context | The current source tree context node.
  opPos | The current position in the m_opMap array.
  executionContext | current execution context

Returns:
  the result of the function.

const XPathExpression & XPath::getExpression ( | ) const`[]`

Retrieve a reference to the current expression.

Returns:
  current expression

XPathExpression & XPath::getExpression ( | )`[]`

Retrieve a reference to the current expression.

Returns:
  current expression

const FunctionTableType & XPath::getFunctionTable ( | )`[static]`

Retrieve the table of installed functions.

Returns:
  function table

bool XPath::getInStylesheet ( | ) const`[]`

template<classOutputIteratorType>
void XPath::getInstalledFunctionNames ( | OutputIteratorType theIterator )`[static]`

Add the names for the installed functions to a vector strings.

Parameters:

  theIterator | vector added to

const LocatorType * XPath::getLocator ( | ) const`[]`

eMatchScore XPath::getMatchScore ( | XalanNode * node,
| const PrefixResolver & resolver,
| XPathExecutionContext & executionContext ) const

Get the match score for the specified node.

Parameters:

  node | The node for the score
  resolver | The prefix resolver
  executionContext | current execution context

Returns:
  union of node-set operands

eMatchScore XPath::getMatchScore ( | XalanNode * node,
| XPathExecutionContext & executionContext ) const

Get the match score for the specified node.

Parameters:

  node | The node for the score
  executionContext | current execution context

Returns:
  union of node-set operands

double XPath::getMatchScoreValue ( | eMatchScore score )`[static]`

double XPath::getNumericOperand ( | XalanNode * context,
| int opPos,
| XPathExecutionContext & executionContext ) const`[protected]`

Get a numeric operand for an expression.

Parameters:

  context | The current source tree context node.
  opPos | The current position in the m_opMap array.
  executionContext | current execution context

Returns:
  The value of the operand.

void XPath::getTargetData ( | TargetDataVectorType & targetData ) const

Add the data for the target of match pattern to a vector.

Parameters:

  targetData | The vector for the data

void XPath::group ( | XalanNode * context,
| int opPos,
| XPathExecutionContext & executionContext,
| MutableNodeRefList & theResult ) const`[protected]`

Execute an expression as a group.

Parameters:

  context | The current source tree context node.
  opPos | The current position in the m_opMap array.
  executionContext | current execution context
  theResult | The result of the execution

void XPath::group ( | XalanNode * context,
| int opPos,
| XPathExecutionContext & executionContext,
| FormatterListener & formatterListener,
| MemberFunctionPtr function ) const`[protected]`

Execute an expression as a group.

Parameters:

  context | The current source tree context node.
  opPos | The current position in the m_opMap array.
  executionContext | current execution context
  formatterListener | the FormatterListener instance to receive the result
  function | A pointer to the member function of FormatterListener to call

void XPath::group ( | XalanNode * context,
| int opPos,
| XPathExecutionContext & executionContext,
| XalanDOMString & theResult ) const`[protected]`

Execute an expression as a group.

Parameters:

  context | The current source tree context node.
  opPos | The current position in the m_opMap array.
  executionContext | current execution context
  theResult | The result of the execution

void XPath::group ( | XalanNode * context,
| int opPos,
| XPathExecutionContext & executionContext,
| double & theResult ) const`[protected]`

Execute an expression as a group.

Parameters:

  context | The current source tree context node.
  opPos | The current position in the m_opMap array.
  executionContext | current execution context
  theResult | The result of the execution

void XPath::group ( | XalanNode * context,
| int opPos,
| XPathExecutionContext & executionContext,
| bool & theResult ) const`[protected]`

Execute an expression as a group.

Parameters:

  context | The current source tree context node.
  opPos | The current position in the m_opMap array.
  executionContext | current execution context
  theResult | The result of the execution

const XObjectPtr XPath::group ( | XalanNode * context,
| int opPos,
| XPathExecutionContext & executionContext ) const`[protected]`

Execute an expression as a group.

Parameters:

  context | The current source tree context node.
  opPos | The current position in the m_opMap array.
  executionContext | current execution context

Returns:
  arg.

bool XPath::gt ( | XalanNode * context,
| int opPos,
| XPathExecutionContext & executionContext ) const`[protected]`

Tell if one argument is greater than the other argument.

Parameters:

  context | The current source tree context node.
  opPos | The current position in the m_opMap array.
  executionContext | current execution context

Returns:
  true if arg 1 is greater than arg 2.

bool XPath::gte ( | XalanNode * context,
| int opPos,
| XPathExecutionContext & executionContext ) const`[protected]`

Tell if one argument is greater than or equal to the other argument.

Parameters:

  context | The current source tree context node.
  opPos | The current position in the m_opMap array.
  executionContext | current execution context

Returns:
  true if arg 1 is greater than or equal to arg 2.

eMatchScore XPath::handleFoundIndex ( | XPathExecutionContext & executionContext,
| XalanNode * localContext,
| int startOpPos ) const`[protected]`

eMatchScore XPath::handleFoundIndexPositional ( | XPathExecutionContext & executionContext,
| XalanNode * localContext,
| int startOpPos ) const`[protected]`

void XPath::initialize ( | )`[static]`

Perform static initialization.

See class XPathInit.

void XPath::installFunction ( | const XalanDOMChar * funcName,
| const Function & func )`[static]`

Install a built-in function.

Parameters:

  funcName | unqualified name of the function
  func | instance of an XPath function object

void XPath::installFunction ( | const XalanDOMString & funcName,
| const Function & func )`[static]`

Install a built-in function.

Parameters:

  funcName | unqualified name of the function
  func | instance of an XPath function object

bool XPath::isInstalledFunction ( | const XalanDOMString & theFunctionName )`[static]`

Whether the named function is installed in the function table.

Parameters:

  name | of function

Returns:
  true if the function has been installed

void XPath::literal ( | int opPos,
| FormatterListener & formatterListener,
| MemberFunctionPtr function ) const`[protected]`

Get a literal value.

Parameters:

  opPos | The current position in the m_opMap array.
  executionContext | current execution context

Returns:
  The result as a double.

void XPath::literal ( | int opPos,
| XalanDOMString & theResult ) const`[protected]`

Get a literal value.

The value is appended to the supplied string.

Parameters:

  opPos | The current position in the m_opMap array.
  theResult | The string.

void XPath::literal ( | int opPos,
| double & theResult ) const`[protected]`

Get a literal value as a number.

Parameters:

  opPos | The current position in the m_opMap array.
  theResult | The value.

void XPath::literal ( | int opPos,
| bool & theResult ) const`[protected]`

Get a literal value as a boolean.

Parameters:

  opPos | The current position in the m_opMap array.
  theResult | The value.

const XObjectPtr XPath::literal ( | int opPos,
| XPathExecutionContext & executionContext ) const`[protected]`

Get a literal value.

Parameters:

  opPos | The current position in the m_opMap array.
  executionContext | current execution context

Returns:
  an XObject object.

void XPath::locationPath ( | XalanNode * context,
| int opPos,
| XPathExecutionContext & executionContext,
| MutableNodeRefList & theResult ) const`[protected]`

Execute a location path.

Parameters:

  context | current source tree context node
  opPos | current position in the m_opMap array
  executionContext | current execution context
  theResult | the result as a node list

void XPath::locationPath ( | XalanNode * context,
| int opPos,
| XPathExecutionContext & executionContext,
| FormatterListener & formatterListener,
| MemberFunctionPtr function ) const`[protected]`

Execute a location path.

Parameters:

  context | current source tree context node
  opPos | current position in the m_opMap array
  executionContext | current execution context
  formatterListener | the FormatterListener instance to receive the result
  function | A pointer to the member function of FormatterListener to call

void XPath::locationPath ( | XalanNode * context,
| int opPos,
| XPathExecutionContext & executionContext,
| XalanDOMString & theResult ) const`[protected]`

Execute a location path.

Parameters:

  context | current source tree context node
  opPos | current position in the m_opMap array
  executionContext | current execution context
  theResult | the result as a node list

void XPath::locationPath ( | XalanNode * context,
| int opPos,
| XPathExecutionContext & executionContext,
| double & theResult ) const`[protected]`

Execute a location path.

Parameters:

  context | current source tree context node
  opPos | current position in the m_opMap array
  executionContext | current execution context
  theResult | the result as a node list

void XPath::locationPath ( | XalanNode * context,
| int opPos,
| XPathExecutionContext & executionContext,
| bool & theResult ) const`[protected]`

Execute a location path.

Parameters:

  context | current source tree context node
  opPos | current position in the m_opMap array
  executionContext | current execution context
  theResult | the result as a node list

const XObjectPtr XPath::locationPath ( | XalanNode * context,
| int opPos,
| XPathExecutionContext & executionContext ) const`[protected]`

Execute a location path.

Parameters:

  context | current source tree context node
  opPos | current position in the m_opMap array
  executionContext | current execution context

Returns:
  node-set

bool XPath::lt ( | XalanNode * context,
| int opPos,
| XPathExecutionContext & executionContext ) const`[protected]`

Tell if one argument is less than the other argument.

Parameters:

  context | The current source tree context node.
  opPos | The current position in the m_opMap array.
  executionContext | current execution context

Returns:
  true if arg 1 is less than arg 2.

bool XPath::lte ( | XalanNode * context,
| int opPos,
| XPathExecutionContext & executionContext ) const`[protected]`

Tell if one argument is less than or equal to the other argument.

Parameters:

  context | The current source tree context node.
  opPos | The current position in the m_opMap array.
  executionContext | current execution context

Returns:
  true if arg 1 is less than or equal to arg 2.

void XPath::minus ( | XalanNode * context,
| int opPos,
| XPathExecutionContext & executionContext,
| FormatterListener & formatterListener,
| MemberFunctionPtr function ) const`[protected]`

Give the difference of two arguments.

Parameters:

  context | The current source tree context node.
  opPos | The current position in the m_opMap array.
  executionContext | current execution context
  formatterListener | the FormatterListener instance to receive the result
  function | A pointer to the member function of FormatterListener to call

double XPath::minus ( | XalanNode * context,
| int opPos,
| XPathExecutionContext & executionContext ) const`[protected]`

Give the difference of two arguments.

Parameters:

  context | The current source tree context node.
  opPos | The current position in the m_opMap array.
  executionContext | current execution context

Returns:
  difference of arg1 and arg2.

void XPath::mod ( | XalanNode * context,
| int opPos,
| XPathExecutionContext & executionContext,
| FormatterListener & formatterListener,
| MemberFunctionPtr function ) const`[protected]`

Return the remainder from a truncating division.

Parameters:

  context | The current source tree context node.
  opPos | The current position in the m_opMap array.
  executionContext | current execution context
  formatterListener | the FormatterListener instance to receive the result
  function | A pointer to the member function of FormatterListener to call

double XPath::mod ( | XalanNode * context,
| int opPos,
| XPathExecutionContext & executionContext ) const`[protected]`

Return the remainder from a truncating division.

Parameters:

  context | The current source tree context node.
  opPos | The current position in the m_opMap array.
  executionContext | current execution context

Returns:
  arg1 mod arg2.

void XPath::mult ( | XalanNode * context,
| int opPos,
| XPathExecutionContext & executionContext,
| FormatterListener & formatterListener,
| MemberFunctionPtr function ) const`[protected]`

Multiply two arguments.

Parameters:

  context | The current source tree context node.
  opPos | The current position in the m_opMap array.
  executionContext | current execution context
  formatterListener | the FormatterListener instance to receive the result
  function | A pointer to the member function of FormatterListener to call

double XPath::mult ( | XalanNode * context,
| int opPos,
| XPathExecutionContext & executionContext ) const`[protected]`

Multiply two arguments.

Parameters:

  context | The current source tree context node.
  opPos | The current position in the m_opMap array.
  executionContext | current execution context

Returns:
  arg1 * arg2.

void XPath::neg ( | XalanNode * context,
| int opPos,
| XPathExecutionContext & executionContext,
| FormatterListener & formatterListener,
| MemberFunctionPtr function ) const`[protected]`

Return the negation of a number.

Parameters:

  context | The current source tree context node.
  opPos | The current position in the m_opMap array.
  executionContext | current execution context
  formatterListener | the FormatterListener instance to receive the result
  function | A pointer to the member function of FormatterListener to call

double XPath::neg ( | XalanNode * context,
| int opPos,
| XPathExecutionContext & executionContext ) const`[protected]`

Return the negation of a number.

Parameters:

  context | The current source tree context node.
  opPos | The current position in the m_opMap array.
  executionContext | current execution context

Returns:
  -arg.

eMatchScore XPath::nodeTest ( | XPathExecutionContext & executionContext,
| XalanNode * context,
| XalanNode::NodeType nodeType,
| int opPos,
| int argLen,
| int stepType ) const`[protected]`

bool XPath::notequals ( | XalanNode * context,
| int opPos,
| XPathExecutionContext & executionContext ) const`[protected]`

Tell if two expressions are functionally not equal.

Parameters:

  context | The current source tree context node.
  opPos | The current position in the m_opMap array.
  executionContext | current execution context

Returns:
  true if the two arguments are not equal.

void XPath::numberlit ( | int opPos,
| FormatterListener & formatterListener,
| MemberFunctionPtr function ) const`[protected]`

Get a literal value.

Parameters:

  opPos | The current position in the m_opMap array.
  formatterListener | the FormatterListener instance to receive the result
  function | A pointer to the member function of FormatterListener to call

void XPath::numberlit ( | int opPos,
| XalanDOMString & theResult ) const`[protected]`

Get a literal value.

The value is appended to the supplied string.

Parameters:

  opPos | The current position in the m_opMap array.
  theResult | The string.

void XPath::numberlit ( | int opPos,
| bool & theResult ) const`[protected]`

Get a literal value as a boolean.

Parameters:

  opPos | The current position in the m_opMap array.
  theResult | The string.

const XObjectPtr XPath::numberlit ( | int opPos,
| XPathExecutionContext & executionContext ) const`[protected]`

Get a literal value.

Parameters:

  opPos | The current position in the m_opMap array.

Returns:
  The result as a double.

double XPath::numberlit ( | int opPos ) const`[protected]`

Get a literal value.

Parameters:

  opPos | The current position in the m_opMap array.

Returns:
  The result as a double.

void XPath::plus ( | XalanNode * context,
| int opPos,
| XPathExecutionContext & executionContext,
| FormatterListener & formatterListener,
| MemberFunctionPtr function ) const`[protected]`

Give the sum of two arguments.

Parameters:

  context | The current source tree context node.
  opPos | The current position in the m_opMap array.
  executionContext | current execution context
  formatterListener | the FormatterListener instance to receive the result
  function | A pointer to the member function of FormatterListener to call

double XPath::plus ( | XalanNode * context,
| int opPos,
| XPathExecutionContext & executionContext ) const`[protected]`

Give the sum of two arguments.

Parameters:

  context | The current source tree context node.
  opPos | The current position in the m_opMap array.
  executionContext | current execution context

Returns:
  sum of arg1 and arg2.

const XObjectPtr XPath::predicate ( | XalanNode * context,
| int opPos,
| XPathExecutionContext & executionContext ) const`[]`

Evaluate a predicate.

Parameters:

  context | current source tree context node
  opPos | current position in the m_opMap array
  executionContext | current execution context

Returns:
  pointer to either a boolean or a number

int XPath::predicates ( | XPathExecutionContext & executionContext,
| int opPos,
| MutableNodeRefList & subQueryResults ) const`[protected]`

const XObjectPtr XPath::runExtFunction ( | XalanNode * context,
| int opPos,
| XPathExecutionContext & executionContext ) const`[protected]`

Setup for and run an extension function.

Parameters:

  context | The current source tree context node.
  opPos | The current position in the m_opMap array.
  executionContext | current execution context

Returns:
  the result of the function.

const XObjectPtr XPath::runFunction ( | XalanNode * context,
| int opPos,
| XPathExecutionContext & executionContext ) const`[protected]`

Setup for and run a function.

Parameters:

  context | The current source tree context node.
  opPos | The current position in the m_opMap array.
  executionContext | current execution context

Returns:
  the result of the function.

void XPath::setInStylesheet ( | bool fValue )`[]`

void XPath::setLocator ( | const LocatorType * theLocator )`[]`

void XPath::shrink ( | )`[]`

Shrink internal tables.

void XPath::step ( | XPathExecutionContext & executionContext,
| XalanNode * context,
| int opPos,
| MutableNodeRefList & queryResults ) const`[protected]`

XalanNode * XPath::stepPattern ( | XPathExecutionContext & executionContext,
| XalanNode * context,
| int opPos,
| eMatchScore & scoreHolder ) const`[protected]`

Execute a step in a location path.

Parameters:

  xpath | The xpath that is executing
  context | The current source tree context node
  opPos | The current position in the xpath operation map array
  scoreHolder | a reference to an eMatchScore to receive the result.

Returns:
  the last matched context node

void XPath::terminate ( | )`[static]`

Perform static shut down.

See class XPathInit.

bool XPath::uninstallFunction ( | const XalanDOMChar * funcName )`[static]`

Remove a named function from the function table.

Parameters:

  funcName | name of function

Returns:
  true if the function was found and removed.

bool XPath::uninstallFunction ( | const XalanDOMString & funcName )`[static]`

Remove a named function from the function table.

Parameters:

  funcName | name of function

Returns:
  true if the function was found and removed.

const XObjectPtr XPath::variable ( | int opPos,
| XPathExecutionContext & executionContext ) const`[protected]`

Get the value of a variable.

Parameters:

  opPos | The current position in the m_opMap array.
  executionContext | current execution context

Returns:
  an XObject object.

## Member Data Documentation

const XalanDOMChar XPath::PSEUDONAME_ANY[]`[static]`

const XalanDOMChar XPath::PSEUDONAME_COMMENT[]`[static]`

const XalanDOMChar XPath::PSEUDONAME_NODE[]`[static]`

const XalanDOMChar XPath::PSEUDONAME_OTHER[]`[static]`

const XalanDOMChar XPath::PSEUDONAME_PI[]`[static]`

const XalanDOMChar XPath::PSEUDONAME_ROOT[]`[static]`

const XalanDOMChar XPath::PSEUDONAME_TEXT[]`[static]`

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

- XPath.hpp

Interpreting class diagrams

Doxygen and GraphViz are used to generate this API documentation from the Xalan-C header files.

Xalan-C++ XSLT Processor Version 1.6 Copyright © 2000, 2001, 2002, 2003 The Apache Software Foundation. All Rights Reserved.