Xalan-C++ API Documentation

The Xalan C++ XSLT Processor Version 1.10

Classes | Public Types | Public Member Functions | Static Public Member Functions | Static Public Attributes | Protected Member Functions | Friends
XPath Class Reference

List of all members.

Classes

Public Types

Public Member Functions

Static Public Member Functions

Static Public Attributes

Protected Member Functions

Friends


Member Typedef Documentation

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

Member Enumeration Documentation

Enumerator:
eMatchScoreNone 
eMatchScoreNodeTest 
eMatchScoreNSWild 
eMatchScoreQName 
eMatchScoreOther 

Constructor & Destructor Documentation

XPath::XPath ( MemoryManagerType theManager,
const LocatorType theLocator = 0 
) [explicit]

Construct an XPath.

Parameters:
theLocatorThe applicable LocatorType, if any.
XPath::~XPath ( )

Member Function Documentation

bool XPath::And ( XalanNode context,
OpCodeMapPositionType  opPos,
XPathExecutionContext executionContext 
) const [protected]

OR two expressions and return the boolean result.

Parameters:
contextThe current source tree context node.
opPosThe current position in the Op Map.
executionContextcurrent execution context
Returns:
true if the two arguments are both true.
static XPath* XPath::create ( MemoryManagerType theManager,
const LocatorType theLocator = 0 
) [static]
static void XPath::destroyTable ( ) [static]
double XPath::div ( XalanNode context,
OpCodeMapPositionType  opPos,
XPathExecutionContext executionContext 
) const [protected]

Divide a number.

Parameters:
contextThe current source tree context node.
opPosThe current position in the Op Map.
executionContextcurrent execution context
Returns:
arg1 / arg2.
void XPath::div ( XalanNode context,
OpCodeMapPositionType  opPos,
XPathExecutionContext executionContext,
FormatterListener formatterListener,
MemberFunctionPtr  function 
) const [protected]

Divide a number.

Parameters:
contextThe current source tree context node.
opPosThe current position in the Op Map.
executionContextcurrent execution context
formatterListenerthe FormatterListener instance to receive the result
functionA pointer to the member function of FormatterListener to call
void XPath::doGetMatchScore ( XalanNode context,
XPathExecutionContext executionContext,
eMatchScore score 
) const [protected]

Helper function to get match score.

Parameters:
contextThe current source tree context node.
executionContextThe current execution context
scoreThe match score
bool XPath::equals ( XalanNode context,
OpCodeMapPositionType  opPos,
XPathExecutionContext executionContext 
) const [protected]

Tell if two expressions are functionally equal.

Parameters:
contextThe current source tree context node.
opPosThe current position in the Op Map.
executionContextcurrent execution context
Returns:
true if the two arguments are equal.
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:
contextcurrent source tree context node, which must not be 0
prefixResolverprefix resolver to use
executionContextcurrent execution context
resultthe string result
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:
contextcurrent source tree context node, which must not be 0
prefixResolverprefix resolver to use
contextNodeListnode list for current context
executionContextcurrent execution context
formatterListenerthe FormatterListener instance to receive the result
functionA pointer to the member function of FormatterListener to call
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:
contextcurrent source tree context node, which must not be 0
prefixResolverprefix resolver to use
contextNodeListnode list for current context
executionContextcurrent execution context
resultthe result as a set of nodes
Returns:
the node-set result, if the result was not returned in the parameter
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:
executionContextcurrent execution context
Returns:
smart-pointer to result XObject
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:
executionContextcurrent execution context
resultthe boolean result
void XPath::execute ( XalanNode context,
const PrefixResolver prefixResolver,
XPathExecutionContext executionContext,
double &  result 
) const

Execute the XPath from the provided context.

Parameters:
contextcurrent source tree context node, which must not be 0
prefixResolverprefix resolver to use
executionContextcurrent execution context
resultthe numeric 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:
executionContextcurrent execution context
resultthe numeric result
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:
executionContextcurrent execution context
resultthe string result
void XPath::execute ( XalanNode context,
const PrefixResolver prefixResolver,
XPathExecutionContext executionContext,
FormatterListener formatterListener,
MemberFunctionPtr  function 
) const

Execute the XPath from the provided context.

Parameters:
contextcurrent source tree context node, which must not be 0
prefixResolverprefix resolver to use
executionContextcurrent execution context
formatterListenerthe FormatterListener instance to receive the result
functionA pointer to the member function of FormatterListener to call
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:
contextcurrent source tree context node, which must not be 0
prefixResolverprefix resolver to use
executionContextcurrent execution context
resultthe node-set 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:
executionContextcurrent execution context
formatterListenerthe FormatterListener instance to receive the result
functionA pointer to the member function of FormatterListener to call
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:
executionContextcurrent execution context
resultA 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
const XObjectPtr XPath::execute ( XalanNode context,
const PrefixResolver prefixResolver,
const NodeRefListBase contextNodeList,
XPathExecutionContext executionContext 
) const

Execute the XPath from the provided context.

Parameters:
contextcurrent source tree context node, which must not be 0
prefixResolverprefix resolver to use
contextNodeListnode list for current context
executionContextcurrent execution context
Returns:
smart-pointer to result XObject
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:
executionContextcurrent execution context
prefixResolverprefix resolver to use
Returns:
smart-pointer to result XObject
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:
executionContextcurrent execution context
prefixResolverprefix resolver to use
resultthe boolean 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:
contextcurrent source tree context node, which must not be 0
prefixResolverprefix resolver to use
contextNodeListnode list for current context
executionContextcurrent execution context
resultthe boolean 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:
executionContextcurrent execution context
prefixResolverprefix resolver to use
resultthe numeric result
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:
executionContextcurrent execution context
prefixResolverprefix resolver to use
resultthe 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:
contextcurrent source tree context node, which must not be 0
prefixResolverprefix resolver to use
contextNodeListnode list for current context
executionContextcurrent execution context
resultthe numeric result
void XPath::execute ( const PrefixResolver prefixResolver,
XPathExecutionContext executionContext,
FormatterListener formatterListener,
MemberFunctionPtr  function 
) const

Execute the XPath from the provided context.

Parameters:
prefixResolverprefix resolver to use
executionContextcurrent execution context
formatterListenerthe FormatterListener instance to receive the result
functionA pointer to the member function of FormatterListener to call
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:
executionContextcurrent execution context
prefixResolverprefix resolver to use
resultA 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
const XObjectPtr XPath::execute ( XalanNode context,
const PrefixResolver prefixResolver,
XPathExecutionContext executionContext 
) const

Execute the XPath from the provided context.

Parameters:
contextcurrent source tree context node, which must not be 0
prefixResolverprefix resolver to use
executionContextcurrent execution context
Returns:
smart-pointer to result XObject
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:
contextcurrent source tree context node, which must not be 0
prefixResolverprefix resolver to use
contextNodeListnode list for current context
executionContextcurrent execution context
resultthe string result
void XPath::execute ( XalanNode context,
const PrefixResolver prefixResolver,
XPathExecutionContext executionContext,
bool &  result 
) const

Execute the XPath from the provided context.

Parameters:
contextcurrent source tree context node, which must not be 0
prefixResolverprefix resolver to use
executionContextcurrent execution context
resultthe boolean result
const XObjectPtr XPath::executeMore ( XalanNode context,
OpCodeMapPositionType  opPos,
XPathExecutionContext executionContext 
) const [protected]

Execute the XPath from the provided context.

Parameters:
contextcurrent source tree context node
opPoscurrent position in the Op Map
executionContextcurrent execution context
Returns:
pointer to union of node-set operands
void XPath::executeMore ( XalanNode context,
OpCodeMapPositionType  opPos,
XPathExecutionContext executionContext,
bool &  theResult 
) const [protected]

Execute the XPath from the provided context.

Parameters:
contextcurrent source tree context node
opPoscurrent position in the Op Map
executionContextcurrent execution context
theResultThe result of the execution
void XPath::executeMore ( XalanNode context,
OpCodeMapPositionType  opPos,
XPathExecutionContext executionContext,
double &  theResult 
) const [protected]

Execute the XPath from the provided context.

Parameters:
contextcurrent source tree context node
opPoscurrent position in the Op Map
executionContextcurrent execution context
theResultThe result of the execution
void XPath::executeMore ( XalanNode context,
OpCodeMapPositionType  opPos,
XPathExecutionContext executionContext,
XalanDOMString theResult 
) const [protected]

Execute the XPath from the provided context.

The result is appended to the supplied string.

Parameters:
contextcurrent source tree context node
opPoscurrent position in the Op Map
executionContextcurrent execution context
theResultThe result of the execution
void XPath::executeMore ( XalanNode context,
OpCodeMapPositionType  opPos,
XPathExecutionContext executionContext,
FormatterListener formatterListener,
MemberFunctionPtr  function 
) const [protected]

Execute the XPath from the provided context.

Parameters:
contextcurrent source tree context node
opPoscurrent position in the Op Map
executionContextcurrent execution context
formatterListenerthe FormatterListener instance to receive the result
functionA pointer to the member function of FormatterListener to call
const XObjectPtr XPath::executeMore ( XalanNode context,
OpCodeMapPositionType  opPos,
XPathExecutionContext executionContext,
MutableNodeRefList theResult 
) const [protected]

Execute the XPath from the provided context.

Parameters:
contextcurrent source tree context node
opPoscurrent position in the Op Map
executionContextcurrent execution context
theResultThe result of the execution
Returns:
the node-set result, if the result was not returned in the parameter
const XObjectPtr XPath::extfunction ( XalanNode context,
OpCodeMapPositionType  ,
const XalanDOMString theNamespace,
const XalanDOMString functionName,
const Function::XObjectArgVectorType argVec,
XPathExecutionContext executionContext 
) const [protected]

Handle an extension function.

Parameters:
contextThe current source tree context node.
opPosThe current position in the Op Map.
theNamespaceThe namespace of the function.
functionNameThe name of the function.
executionContextcurrent execution context
Returns:
the result of the function.
OpCodeMapPositionType XPath::findAncestors ( XPathExecutionContext executionContext,
XalanNode context,
OpCodeMapPositionType  opPos,
OpCodeMapValueType  stepType,
MutableNodeRefList subQueryResults 
) const [protected]
OpCodeMapPositionType XPath::findAncestorsOrSelf ( XPathExecutionContext executionContext,
XalanNode context,
OpCodeMapPositionType  opPos,
OpCodeMapValueType  stepType,
MutableNodeRefList subQueryResults 
) const [protected]
OpCodeMapPositionType XPath::findAttributes ( XPathExecutionContext executionContext,
XalanNode context,
OpCodeMapPositionType  opPos,
OpCodeMapValueType  stepType,
MutableNodeRefList subQueryResults 
) const [protected]
OpCodeMapPositionType XPath::findChildren ( XPathExecutionContext executionContext,
XalanNode context,
OpCodeMapPositionType  opPos,
OpCodeMapValueType  stepType,
MutableNodeRefList subQueryResults 
) const [protected]
OpCodeMapPositionType XPath::findDescendants ( XPathExecutionContext executionContext,
XalanNode context,
OpCodeMapPositionType  opPos,
OpCodeMapValueType  stepType,
MutableNodeRefList subQueryResults 
) const [protected]
OpCodeMapPositionType XPath::findFollowing ( XPathExecutionContext executionContext,
XalanNode context,
OpCodeMapPositionType  opPos,
OpCodeMapValueType  stepType,
MutableNodeRefList subQueryResults 
) const [protected]
OpCodeMapPositionType XPath::findFollowingSiblings ( XPathExecutionContext executionContext,
XalanNode context,
OpCodeMapPositionType  opPos,
OpCodeMapValueType  stepType,
MutableNodeRefList subQueryResults 
) const [protected]
OpCodeMapPositionType XPath::findNamespace ( XPathExecutionContext executionContext,
XalanNode context,
OpCodeMapPositionType  opPos,
OpCodeMapValueType  stepType,
MutableNodeRefList subQueryResults 
) const [protected]
OpCodeMapPositionType XPath::findNodeSet ( XPathExecutionContext executionContext,
XalanNode context,
OpCodeMapPositionType  opPos,
OpCodeMapValueType  stepType,
MutableNodeRefList subQueryResults 
) const [protected]
OpCodeMapPositionType XPath::findNodesOnUnknownAxis ( XPathExecutionContext executionContext,
XalanNode context,
OpCodeMapPositionType  opPos,
OpCodeMapValueType  stepType,
MutableNodeRefList subQueryResults 
) const [protected]
OpCodeMapPositionType XPath::findParent ( XPathExecutionContext executionContext,
XalanNode context,
OpCodeMapPositionType  opPos,
OpCodeMapValueType  stepType,
MutableNodeRefList subQueryResults 
) const [protected]
OpCodeMapPositionType XPath::findPreceeding ( XPathExecutionContext executionContext,
XalanNode context,
OpCodeMapPositionType  opPos,
OpCodeMapValueType  stepType,
MutableNodeRefList subQueryResults 
) const [protected]
OpCodeMapPositionType XPath::findPreceedingSiblings ( XPathExecutionContext executionContext,
XalanNode context,
OpCodeMapPositionType  opPos,
OpCodeMapValueType  stepType,
MutableNodeRefList subQueryResults 
) const [protected]
OpCodeMapPositionType XPath::findRoot ( XPathExecutionContext executionContext,
XalanNode context,
OpCodeMapPositionType  opPos,
OpCodeMapValueType  stepType,
MutableNodeRefList subQueryResults 
) const [protected]
OpCodeMapPositionType XPath::findSelf ( XPathExecutionContext executionContext,
XalanNode context,
OpCodeMapPositionType  opPos,
OpCodeMapValueType  stepType,
MutableNodeRefList subQueryResults 
) const [protected]
const XObjectPtr XPath::function ( XalanNode context,
OpCodeMapValueType  funcID,
const Function::XObjectArgVectorType argVec,
XPathExecutionContext executionContext 
) const [protected]

Handle a built-in function.

Parameters:
contextThe current source tree context node.
funcIDThe function ID.
argVecThe arguments for the function.
executionContextcurrent execution context
Returns:
the result of the function.
bool XPath::functionBoolean ( XalanNode context,
OpCodeMapPositionType  opPos,
XPathExecutionContext executionContext 
) const [protected]

Handle the built-in function "boolean".

Parameters:
contextThe current source tree context node, which must not be 0.
opPosThe current position in the Op Map.
executionContextcurrent execution context
Returns:
the result of the function.
double XPath::functionCeiling ( XalanNode context,
OpCodeMapPositionType  opPos,
XPathExecutionContext executionContext 
) const [protected]

Handle the built-in function "ceiling".

Parameters:
contextThe current source tree context node, which must not be 0.
opPosThe current position in the Op Map.
executionContextcurrent execution context
Returns:
the result of the function.
double XPath::functionCount ( XalanNode context,
OpCodeMapPositionType  opPos,
XPathExecutionContext executionContext 
) const [protected]

Handle the built-in function "count".

Parameters:
contextThe current source tree context node.
opPosThe current position in the Op Map.
executionContextcurrent execution context
Returns:
the result of the function.
double XPath::functionFloor ( XalanNode context,
OpCodeMapPositionType  opPos,
XPathExecutionContext executionContext 
) const [protected]

Handle the built-in function "floor".

Parameters:
contextThe current source tree context node, which must not be 0.
opPosThe current position in the Op Map.
executionContextcurrent execution context
Returns:
the result of the function.
double XPath::functionLast ( XPathExecutionContext executionContext) const [protected]

Handle the built-in function "last".

Parameters:
executionContextcurrent execution context
Returns:
the result of the function.
const XalanDOMString& XPath::functionLocalName ( XalanNode context) const [protected]

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

Parameters:
contextThe current source tree context node, which must not be 0.
Returns:
the result of the function.
const XalanDOMString& XPath::functionLocalName ( XalanNode context,
OpCodeMapPositionType  opPos,
XPathExecutionContext executionContext 
) const [protected]

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

Parameters:
contextThe current source tree context node, which must not be 0.
opPosThe current position in the Op Map.
executionContextcurrent execution context
Returns:
the result of the function.
const XalanDOMString& XPath::functionName ( XalanNode context,
OpCodeMapPositionType  opPos,
XPathExecutionContext executionContext 
) const [protected]

Handle the built-in function "name".

Parameters:
contextThe current source tree context node, which must not be 0.
opPosThe current position in the Op Map.
executionContextcurrent execution context
Returns:
the result of the function.
const XalanDOMString& XPath::functionName ( XalanNode context) const [protected]

Handle the built-in function "name".

Parameters:
contextThe current source tree context node, which must not be 0.
Returns:
the result of the function.
bool XPath::functionNot ( XalanNode context,
OpCodeMapPositionType  opPos,
XPathExecutionContext executionContext 
) const [protected]

Handle the built-in function "not".

Parameters:
contextThe current source tree context node, which must not be 0.
opPosThe current position in the Op Map.
executionContextcurrent execution context
Returns:
the result of the function.
double XPath::functionNumber ( XalanNode context,
OpCodeMapPositionType  opPos,
XPathExecutionContext executionContext 
) const [protected]

Handle the built-in function "number".

Parameters:
contextThe current source tree context node, which must not be 0.
opPosThe current position in the Op Map.
executionContextcurrent execution context
Returns:
the result of the function.
double XPath::functionNumber ( XalanNode context,
XPathExecutionContext executionContext 
) const [protected]

Handle the built-in function "number".

Parameters:
contextThe current source tree context node, which must not be 0.
executionContextcurrent execution context
Returns:
the result of the function.
double XPath::functionPosition ( XalanNode context,
XPathExecutionContext executionContext 
) const [protected]

Handle the built-in function "position".

Parameters:
contextThe current source tree context node, which must not be 0.
executionContextcurrent execution context
Returns:
the result of the function.
double XPath::functionRound ( XalanNode context,
OpCodeMapPositionType  opPos,
XPathExecutionContext executionContext 
) const [protected]

Handle the built-in function "round".

Parameters:
contextThe current source tree context node, which must not be 0.
opPosThe current position in the Op Map.
executionContextcurrent execution context
Returns:
the result of the function.
double XPath::functionStringLength ( XalanNode context) const [protected]

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

Parameters:
contextThe current source tree context node, which must not be 0.
Returns:
the result of the function.
double XPath::functionStringLength ( XalanNode context,
OpCodeMapPositionType  opPos,
XPathExecutionContext executionContext 
) const [protected]

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

Parameters:
contextThe current source tree context node, which must not be 0.
opPosThe current position in the Op Map.
executionContextcurrent execution context
Returns:
the result of the function.
double XPath::functionSum ( XalanNode context,
OpCodeMapPositionType  opPos,
XPathExecutionContext executionContext 
) const [protected]

Handle the built-in function "sum".

Parameters:
contextThe current source tree context node.
opPosThe current position in the Op Map.
executionContextcurrent execution context
Returns:
the result of the function.
XPathExpression& XPath::getExpression ( )

Retrieve a reference to the current expression.

Returns:
current expression
const XPathExpression& XPath::getExpression ( ) const

Retrieve a reference to the current expression.

Returns:
current expression
static const FunctionTableType& XPath::getFunctionTable ( ) [static]

Retrieve the table of installed functions.

Returns:
function table
template<class OutputIteratorType >
static void XPath::getInstalledFunctionNames ( OutputIteratorType  theIterator) [static]

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

Parameters:
theIteratorvector added to
bool XPath::getInStylesheet ( ) const
const LocatorType* XPath::getLocator ( ) const
eMatchScore XPath::getMatchScore ( XalanNode node,
XPathExecutionContext executionContext 
) const

Get the match score for the specified node.

Parameters:
nodeThe node for the score
executionContextcurrent execution context
Returns:
union of node-set operands
eMatchScore XPath::getMatchScore ( XalanNode node,
const PrefixResolver resolver,
XPathExecutionContext executionContext 
) const

Get the match score for the specified node.

Parameters:
nodeThe node for the score
resolverThe prefix resolver
executionContextcurrent execution context
Returns:
union of node-set operands
static double XPath::getMatchScoreValue ( eMatchScore  score) [static]
MemoryManagerType& XPath::getMemoryManager ( )
double XPath::getNumericOperand ( XalanNode context,
OpCodeMapPositionType  opPos,
XPathExecutionContext executionContext 
) const [protected]

Get a numeric operand for an expression.

Parameters:
contextThe current source tree context node.
opPosThe current position in the Op Map.
executionContextcurrent 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:
targetDataThe vector for the data
const XObjectPtr XPath::group ( XalanNode context,
OpCodeMapPositionType  opPos,
XPathExecutionContext executionContext 
) const [protected]

Execute an expression as a group.

Parameters:
contextThe current source tree context node.
opPosThe current position in the Op Map.
executionContextcurrent execution context
Returns:
arg.
void XPath::group ( XalanNode context,
OpCodeMapPositionType  opPos,
XPathExecutionContext executionContext,
double &  theResult 
) const [protected]

Execute an expression as a group.

Parameters:
contextThe current source tree context node.
opPosThe current position in the Op Map.
executionContextcurrent execution context
theResultThe result of the execution
void XPath::group ( XalanNode context,
OpCodeMapPositionType  opPos,
XPathExecutionContext executionContext,
XalanDOMString theResult 
) const [protected]

Execute an expression as a group.

Parameters:
contextThe current source tree context node.
opPosThe current position in the Op Map.
executionContextcurrent execution context
theResultThe result of the execution
void XPath::group ( XalanNode context,
OpCodeMapPositionType  opPos,
XPathExecutionContext executionContext,
FormatterListener formatterListener,
MemberFunctionPtr  function 
) const [protected]

Execute an expression as a group.

Parameters:
contextThe current source tree context node.
opPosThe current position in the Op Map.
executionContextcurrent execution context
formatterListenerthe FormatterListener instance to receive the result
functionA pointer to the member function of FormatterListener to call
void XPath::group ( XalanNode context,
OpCodeMapPositionType  opPos,
XPathExecutionContext executionContext,
MutableNodeRefList theResult 
) const [protected]

Execute an expression as a group.

Parameters:
contextThe current source tree context node.
opPosThe current position in the Op Map.
executionContextcurrent execution context
theResultThe result of the execution
void XPath::group ( XalanNode context,
OpCodeMapPositionType  opPos,
XPathExecutionContext executionContext,
bool &  theResult 
) const [protected]

Execute an expression as a group.

Parameters:
contextThe current source tree context node.
opPosThe current position in the Op Map.
executionContextcurrent execution context
theResultThe result of the execution
bool XPath::gt ( XalanNode context,
OpCodeMapPositionType  opPos,
XPathExecutionContext executionContext 
) const [protected]

Tell if one argument is greater than the other argument.

Parameters:
contextThe current source tree context node.
opPosThe current position in the Op Map.
executionContextcurrent execution context
Returns:
true if arg 1 is greater than arg 2.
bool XPath::gte ( XalanNode context,
OpCodeMapPositionType  opPos,
XPathExecutionContext executionContext 
) const [protected]

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

Parameters:
contextThe current source tree context node.
opPosThe current position in the Op Map.
executionContextcurrent execution context
Returns:
true if arg 1 is greater than or equal to arg 2.
eMatchScore XPath::handleFoundIndex ( XPathExecutionContext executionContext,
XalanNode localContext,
OpCodeMapPositionType  startOpPos 
) const [protected]
eMatchScore XPath::handleFoundIndexPositional ( XPathExecutionContext executionContext,
XalanNode localContext,
OpCodeMapPositionType  startOpPos 
) const [protected]
static void XPath::initialize ( MemoryManagerType theManager) [static]

Perform static initialization.

See class XPathInit.

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

Install a built-in function.

Parameters:
funcNameunqualified name of the function
funcinstance of an XPath function object
static void XPath::installFunction ( const XalanDOMChar *  funcName,
const Function func 
) [static]

Install a built-in function.

Parameters:
funcNameunqualified name of the function
funcinstance of an XPath function object
static bool XPath::isInstalledFunction ( const XalanDOMString theFunctionName) [static]

Whether the named function is installed in the function table.

Parameters:
nameof function
Returns:
true if the function has been installed
const XObjectPtr XPath::literal ( OpCodeMapPositionType  opPos,
XPathExecutionContext executionContext 
) const [protected]

Get a literal value.

Parameters:
opPosThe current position in the Op Map.
executionContextcurrent execution context
Returns:
an XObject object.
void XPath::literal ( OpCodeMapPositionType  opPos,
bool &  theResult 
) const [protected]

Get a literal value as a boolean.

Parameters:
opPosThe current position in the Op Map.
theResultThe value.
void XPath::literal ( OpCodeMapPositionType  opPos,
double &  theResult 
) const [protected]

Get a literal value as a number.

Parameters:
opPosThe current position in the Op Map.
theResultThe value.
void XPath::literal ( OpCodeMapPositionType  opPos,
FormatterListener formatterListener,
MemberFunctionPtr  function 
) const [protected]

Get a literal value.

Parameters:
opPosThe current position in the Op Map.
executionContextcurrent execution context
Returns:
The result as a double.
void XPath::literal ( OpCodeMapPositionType  opPos,
XalanDOMString theResult 
) const [protected]

Get a literal value.

The value is appended to the supplied string.

Parameters:
opPosThe current position in the Op Map.
theResultThe string.
void XPath::locationPath ( XalanNode context,
OpCodeMapPositionType  opPos,
XPathExecutionContext executionContext,
MutableNodeRefList theResult 
) const [protected]

Execute a location path.

Parameters:
contextcurrent source tree context node
opPoscurrent position in the Op Map
executionContextcurrent execution context
theResultthe result as a node list
const XObjectPtr XPath::locationPath ( XalanNode context,
OpCodeMapPositionType  opPos,
XPathExecutionContext executionContext 
) const [protected]

Execute a location path.

Parameters:
contextcurrent source tree context node
opPoscurrent position in the Op Mpa
executionContextcurrent execution context
Returns:
node-set
void XPath::locationPath ( XalanNode context,
OpCodeMapPositionType  opPos,
XPathExecutionContext executionContext,
bool &  theResult 
) const [protected]

Execute a location path.

Parameters:
contextcurrent source tree context node
opPoscurrent position in the Op Map
executionContextcurrent execution context
theResultthe result as a node list
void XPath::locationPath ( XalanNode context,
OpCodeMapPositionType  opPos,
XPathExecutionContext executionContext,
double &  theResult 
) const [protected]

Execute a location path.

Parameters:
contextcurrent source tree context node
opPoscurrent position in the Op Map
executionContextcurrent execution context
theResultthe result as a node list
void XPath::locationPath ( XalanNode context,
OpCodeMapPositionType  opPos,
XPathExecutionContext executionContext,
XalanDOMString theResult 
) const [protected]

Execute a location path.

Parameters:
contextcurrent source tree context node
opPoscurrent position in the Op Map
executionContextcurrent execution context
theResultthe result as a node list
void XPath::locationPath ( XalanNode context,
OpCodeMapPositionType  opPos,
XPathExecutionContext executionContext,
FormatterListener formatterListener,
MemberFunctionPtr  function 
) const [protected]

Execute a location path.

Parameters:
contextcurrent source tree context node
opPoscurrent position in the Op Map
executionContextcurrent execution context
formatterListenerthe FormatterListener instance to receive the result
functionA pointer to the member function of FormatterListener to call
bool XPath::lt ( XalanNode context,
OpCodeMapPositionType  opPos,
XPathExecutionContext executionContext 
) const [protected]

Tell if one argument is less than the other argument.

Parameters:
contextThe current source tree context node.
opPosThe current position in the Op Map.
executionContextcurrent execution context
Returns:
true if arg 1 is less than arg 2.
bool XPath::lte ( XalanNode context,
OpCodeMapPositionType  opPos,
XPathExecutionContext executionContext 
) const [protected]

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

Parameters:
contextThe current source tree context node.
opPosThe current position in the Op Map.
executionContextcurrent execution context
Returns:
true if arg 1 is less than or equal to arg 2.
double XPath::minus ( XalanNode context,
OpCodeMapPositionType  opPos,
XPathExecutionContext executionContext 
) const [protected]

Give the difference of two arguments.

Parameters:
contextThe current source tree context node.
opPosThe current position in the Op Map.
executionContextcurrent execution context
Returns:
difference of arg1 and arg2.
void XPath::minus ( XalanNode context,
OpCodeMapPositionType  opPos,
XPathExecutionContext executionContext,
FormatterListener formatterListener,
MemberFunctionPtr  function 
) const [protected]

Give the difference of two arguments.

Parameters:
contextThe current source tree context node.
opPosThe current position in the Op Map.
executionContextcurrent execution context
formatterListenerthe FormatterListener instance to receive the result
functionA pointer to the member function of FormatterListener to call
double XPath::mod ( XalanNode context,
OpCodeMapPositionType  opPos,
XPathExecutionContext executionContext 
) const [protected]

Return the remainder from a truncating division.

Parameters:
contextThe current source tree context node.
opPosThe current position in the Op Map.
executionContextcurrent execution context
Returns:
arg1 mod arg2.
void XPath::mod ( XalanNode context,
OpCodeMapPositionType  opPos,
XPathExecutionContext executionContext,
FormatterListener formatterListener,
MemberFunctionPtr  function 
) const [protected]

Return the remainder from a truncating division.

Parameters:
contextThe current source tree context node.
opPosThe current position in the Op Map.
executionContextcurrent execution context
formatterListenerthe FormatterListener instance to receive the result
functionA pointer to the member function of FormatterListener to call
double XPath::mult ( XalanNode context,
OpCodeMapPositionType  opPos,
XPathExecutionContext executionContext 
) const [protected]

Multiply two arguments.

Parameters:
contextThe current source tree context node.
opPosThe current position in the Op Map.
executionContextcurrent execution context
Returns:
arg1 * arg2.
void XPath::mult ( XalanNode context,
OpCodeMapPositionType  opPos,
XPathExecutionContext executionContext,
FormatterListener formatterListener,
MemberFunctionPtr  function 
) const [protected]

Multiply two arguments.

Parameters:
contextThe current source tree context node.
opPosThe current position in the Op Map.
executionContextcurrent execution context
formatterListenerthe FormatterListener instance to receive the result
functionA pointer to the member function of FormatterListener to call
double XPath::neg ( XalanNode context,
OpCodeMapPositionType  opPos,
XPathExecutionContext executionContext 
) const [protected]

Return the negation of a number.

Parameters:
contextThe current source tree context node.
opPosThe current position in the Op Map.
executionContextcurrent execution context
Returns:
-arg.
void XPath::neg ( XalanNode context,
OpCodeMapPositionType  opPos,
XPathExecutionContext executionContext,
FormatterListener formatterListener,
MemberFunctionPtr  function 
) const [protected]

Return the negation of a number.

Parameters:
contextThe current source tree context node.
opPosThe current position in the Op Map.
executionContextcurrent execution context
formatterListenerthe FormatterListener instance to receive the result
functionA pointer to the member function of FormatterListener to call
eMatchScore XPath::nodeTest ( XPathExecutionContext executionContext,
XalanNode context,
XalanNode::NodeType  nodeType,
OpCodeMapPositionType  opPos,
OpCodeMapValueType  argLen,
OpCodeMapValueType  stepType 
) const [protected]
bool XPath::notequals ( XalanNode context,
OpCodeMapPositionType  opPos,
XPathExecutionContext executionContext 
) const [protected]

Tell if two expressions are functionally not equal.

Parameters:
contextThe current source tree context node.
opPosThe current position in the Op Map.
executionContextcurrent execution context
Returns:
true if the two arguments are not equal.
void XPath::numberlit ( OpCodeMapPositionType  opPos,
FormatterListener formatterListener,
MemberFunctionPtr  function 
) const [protected]

Get a literal value.

Parameters:
opPosThe current position in the Op Map.
formatterListenerthe FormatterListener instance to receive the result
functionA pointer to the member function of FormatterListener to call
void XPath::numberlit ( OpCodeMapPositionType  opPos,
bool &  theResult 
) const [protected]

Get a literal value as a boolean.

Parameters:
opPosThe current position in the Op Map.
theResultThe string.
void XPath::numberlit ( OpCodeMapPositionType  opPos,
XalanDOMString theResult 
) const [protected]

Get a literal value.

The value is appended to the supplied string.

Parameters:
opPosThe current position in the Op Map.
theResultThe string.
const XObjectPtr XPath::numberlit ( OpCodeMapPositionType  opPos,
XPathExecutionContext executionContext 
) const [protected]

Get a literal value.

Parameters:
opPosThe current position in the Op Map.
Returns:
The result as a double.
double XPath::numberlit ( OpCodeMapPositionType  opPos) const [protected]

Get a literal value.

Parameters:
opPosThe current position in the Op Map.
Returns:
The result as a double.
bool XPath::Or ( XalanNode context,
OpCodeMapPositionType  opPos,
XPathExecutionContext executionContext 
) const [protected]

OR two expressions and return the boolean result.

Parameters:
contextThe current source tree context node.
opPosThe current position in the Op Map.
executionContextcurrent execution context
Returns:
true if the one of the two arguments are true.
void XPath::plus ( XalanNode context,
OpCodeMapPositionType  opPos,
XPathExecutionContext executionContext,
FormatterListener formatterListener,
MemberFunctionPtr  function 
) const [protected]

Give the sum of two arguments.

Parameters:
contextThe current source tree context node.
opPosThe current position in the Op Map.
executionContextcurrent execution context
formatterListenerthe FormatterListener instance to receive the result
functionA pointer to the member function of FormatterListener to call
double XPath::plus ( XalanNode context,
OpCodeMapPositionType  opPos,
XPathExecutionContext executionContext 
) const [protected]

Give the sum of two arguments.

Parameters:
contextThe current source tree context node.
opPosThe current position in the Op Map.
executionContextcurrent execution context
Returns:
sum of arg1 and arg2.
const XObjectPtr XPath::predicate ( XalanNode context,
OpCodeMapPositionType  opPos,
XPathExecutionContext executionContext 
) const

Evaluate a predicate.

Parameters:
contextcurrent source tree context node
opPoscurrent position in the Op Map
executionContextcurrent execution context
Returns:
pointer to either a boolean or a number
OpCodeMapPositionType XPath::predicates ( XPathExecutionContext executionContext,
OpCodeMapPositionType  opPos,
MutableNodeRefList subQueryResults 
) const [protected]
const XObjectPtr XPath::runExtFunction ( XalanNode context,
OpCodeMapPositionType  opPos,
XPathExecutionContext executionContext 
) const [protected]

Setup for and run an extension function.

Parameters:
contextThe current source tree context node.
opPosThe current position in the Op Map.
executionContextcurrent execution context
Returns:
the result of the function.
const XObjectPtr XPath::runFunction ( XalanNode context,
OpCodeMapPositionType  opPos,
XPathExecutionContext executionContext 
) const [protected]

Setup for and run a function.

Parameters:
contextThe current source tree context node.
opPosThe current position in the Op Map.
executionContextcurrent 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,
OpCodeMapPositionType  opPos,
MutableNodeRefList queryResults 
) const [protected]
XalanNode* XPath::stepPattern ( XPathExecutionContext executionContext,
XalanNode context,
OpCodeMapPositionType  opPos,
eMatchScore scoreHolder 
) const [protected]

Execute a step in a location path.

Parameters:
xpathThe xpath that is executing
contextThe current source tree context node
opPosThe current position in the xpath operation map array
scoreHoldera reference to an eMatchScore to receive the result.
Returns:
the last matched context node
static void XPath::terminate ( ) [static]

Perform static shut down.

See class XPathInit.

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

Remove a named function from the function table.

Parameters:
funcNamename of function
Returns:
true if the function was found and removed.
static bool XPath::uninstallFunction ( const XalanDOMChar *  funcName) [static]

Remove a named function from the function table.

Parameters:
funcNamename of function
Returns:
true if the function was found and removed.
void XPath::Union ( XalanNode context,
OpCodeMapPositionType  opPos,
XPathExecutionContext executionContext,
XalanDOMString result 
) const [protected]

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

Parameters:
contextThe current source tree context node.
opPosThe current position in the Op Map.
executionContextcurrent execution context
Returns:
the result of the union of node-set operands.
void XPath::Union ( XalanNode context,
OpCodeMapPositionType  opPos,
XPathExecutionContext executionContext,
FormatterListener formatterListener,
MemberFunctionPtr  function 
) const [protected]

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

Parameters:
contextThe current source tree context node.
opPosThe current position in the Op Map.
executionContextcurrent execution context
formatterListenerthe FormatterListener instance to receive the result
functionA pointer to the member function of FormatterListener to call
void XPath::Union ( XalanNode context,
OpCodeMapPositionType  opPos,
XPathExecutionContext executionContext,
MutableNodeRefList result 
) const [protected]

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

Parameters:
contextThe current source tree context node.
opPosThe current position in the Op Map.
executionContextcurrent execution context
Returns:
the result of the union of node-set operands.
void XPath::Union ( XalanNode context,
OpCodeMapPositionType  opPos,
XPathExecutionContext executionContext,
bool &  result 
) const [protected]

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

Parameters:
contextThe current source tree context node.
opPosThe current position in the Op Map.
executionContextcurrent execution context
Returns:
the result of the union of node-set operands.
void XPath::Union ( XalanNode context,
OpCodeMapPositionType  opPos,
XPathExecutionContext executionContext,
double &  result 
) const [protected]

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

Parameters:
contextThe current source tree context node.
opPosThe current position in the Op Map.
executionContextcurrent execution context
Returns:
the result of the union of node-set operands.
const XObjectPtr XPath::Union ( XalanNode context,
OpCodeMapPositionType  opPos,
XPathExecutionContext executionContext 
) const [protected]

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

Parameters:
contextThe current source tree context node.
opPosThe current position in the Op Map.
executionContextcurrent execution context
Returns:
the union of node-set operands.
const XObjectPtr XPath::variable ( OpCodeMapPositionType  opPos,
XPathExecutionContext executionContext 
) const [protected]

Get the value of a variable.

Parameters:
opPosThe current position in the Op Map.
executionContextcurrent execution context
Returns:
an XObject object.

Friends And Related Function Documentation

friend class NodeTester [friend]

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:

Interpreting class diagrams

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

dot

Xalan-C++ XSLT Processor Version 1.10
Copyright © 1999-2004 The Apache Software Foundation. All Rights Reserved.

Apache Logo