Xalan-C++ API Documentation

The Xalan C++ XSLT Processor Version 1.11


Public Types | Public Member Functions | Protected Member Functions | List of all members
Function Class Referenceabstract

#include <Function.hpp>

Inherited by FunctionConcat, FunctionContains, FunctionCurrent, FunctionDifference, FunctionDistinct, FunctionDocument, FunctionElementAvailable, FunctionEvaluate, FunctionFormatNumber, FunctionFunctionAvailable, FunctionGenerateID, FunctionHasSameNodes, FunctionID, FunctionIntersection, FunctionKey, FunctionLang, FunctionNamespaceURI, FunctionNodeSet, FunctionNormalizeSpace, FunctionStartsWith, FunctionString, FunctionSubstring, FunctionSubstringAfter, FunctionSubstringBefore, FunctionSystemProperty, FunctionTranslate, FunctionUnparsedEntityURI, XalanEXSLTFunctionAbs, XalanEXSLTFunctionAcos, XalanEXSLTFunctionAlign, XalanEXSLTFunctionAsin, XalanEXSLTFunctionAtan, XalanEXSLTFunctionAtan2, XalanEXSLTFunctionConcat, XalanEXSLTFunctionConstant, XalanEXSLTFunctionCos, XalanEXSLTFunctionDateTime, XalanEXSLTFunctionDecodeURI, XalanEXSLTFunctionEncodeURI, XalanEXSLTFunctionExp, XalanEXSLTFunctionHasSameNode, XalanEXSLTFunctionHighest, XalanEXSLTFunctionLeading, XalanEXSLTFunctionLog, XalanEXSLTFunctionLowest, XalanEXSLTFunctionMax, XalanEXSLTFunctionMin, XalanEXSLTFunctionObjectType, XalanEXSLTFunctionPadding, XalanEXSLTFunctionPower, XalanEXSLTFunctionRandom, XalanEXSLTFunctionSin, XalanEXSLTFunctionSqrt, XalanEXSLTFunctionTan, and XalanEXSLTFunctionTrailing.

Public Types

typedef XERCES_CPP_NAMESPACE_QUALIFIER Locator LocatorType
 
typedef XPathExecutionContext::XObjectArgVectorType XObjectArgVectorType
 
typedef XPathExecutionContext::GetCachedString GetCachedString
 
typedef XPathExecutionContext::GetCachedNodeList GetCachedNodeList
 

Public Member Functions

 Function ()
 
virtual ~Function ()
 
virtual XObjectPtr execute (XPathExecutionContext &executionContext, XalanNode *context, const XObjectArgVectorType &args, const Locator *locator) const
 Execute an XPath function object. More...
 
virtual XObjectPtr execute (XPathExecutionContext &executionContext, XalanNode *context, const Locator *locator) const
 Execute an XPath function object. More...
 
virtual XObjectPtr execute (XPathExecutionContext &executionContext, XalanNode *context, const XObjectPtr arg, const Locator *locator) const
 Execute an XPath function object. More...
 
virtual XObjectPtr execute (XPathExecutionContext &executionContext, XalanNode *context, const XObjectPtr arg1, const XObjectPtr arg2, const Locator *locator) const
 Execute an XPath function object. More...
 
virtual XObjectPtr execute (XPathExecutionContext &executionContext, XalanNode *context, const XObjectPtr arg1, const XObjectPtr arg2, const XObjectPtr arg3, const Locator *locator) const
 Execute an XPath function object. More...
 
virtual Functionclone (MemoryManager &theManager) const =0
 Create a copy of the function object. More...
 

Protected Member Functions

virtual const XalanDOMStringgetError (XalanDOMString &theBuffer) const =0
 Get the error message to report when the function is called with the wrong number of arguments. More...
 
void generalError (XPathExecutionContext &executionContext, const XalanNode *context, const Locator *locator) const
 Report the error returned from the getError() call. More...
 

Detailed Description

Definition at line 54 of file Function.hpp.

Member Typedef Documentation

◆ GetCachedNodeList

Definition at line 68 of file Function.hpp.

◆ GetCachedString

Definition at line 67 of file Function.hpp.

◆ LocatorType

typedef XERCES_CPP_NAMESPACE_QUALIFIER Locator Function::LocatorType

Definition at line 58 of file Function.hpp.

◆ XObjectArgVectorType

Definition at line 66 of file Function.hpp.

Constructor & Destructor Documentation

◆ Function()

Function::Function ( )
explicit

◆ ~Function()

virtual Function::~Function ( )
virtual

Member Function Documentation

◆ clone()

virtual Function* Function::clone ( MemoryManager &  theManager) const
pure virtual

◆ execute() [1/5]

virtual XObjectPtr Function::execute ( XPathExecutionContext executionContext,
XalanNode context,
const XObjectArgVectorType args,
const Locator *  locator 
) const
virtual

Execute an XPath function object.

The function must return a valid object. Extension functions should override this version of execute(), rather than one of the other calls designed for a specific number of arguments, since the extension function mechanism will call this version first. Extension functions that accept more than three arguments must override this version.

Parameters
executionContextexecuting context
contextcurrent context node
argsvector of pointers to XObject arguments
locatorLocator instance for the XPath expression that contains the function call
Returns
pointer to the result XObject

Reimplemented in XalanEXSLTFunctionTan, XalanEXSLTFunctionSqrt, XalanEXSLTFunctionSin, XalanEXSLTFunctionPower, XalanEXSLTFunctionMin, XalanEXSLTFunctionMax, XalanEXSLTFunctionLowest, XalanEXSLTFunctionLog, XalanEXSLTFunctionHighest, XalanEXSLTFunctionExp, XalanEXSLTFunctionCos, XalanEXSLTFunctionConstant, XalanEXSLTFunctionDecodeURI, XalanEXSLTFunctionTrailing, XalanEXSLTFunctionAtan2, XalanEXSLTFunctionAtan, XalanEXSLTFunctionLeading, XalanEXSLTFunctionEncodeURI, XalanEXSLTFunctionAsin, XalanEXSLTFunctionPadding, XalanEXSLTFunctionAcos, XalanEXSLTFunctionHasSameNode, XalanEXSLTFunctionObjectType, XalanEXSLTFunctionConcat, XalanEXSLTFunctionRandom, FunctionNodeSet, XalanEXSLTFunctionEvaluate, XalanEXSLTFunctionAlign, XalanEXSLTFunctionAbs, FunctionEvaluate, FunctionDifference, FunctionDistinct, FunctionHasSameNodes, FunctionIntersection, FunctionConcat, and XalanEXSLTFunctionDateTime.

◆ execute() [2/5]

virtual XObjectPtr Function::execute ( XPathExecutionContext executionContext,
XalanNode context,
const Locator *  locator 
) const
virtual

Execute an XPath function object.

The function must return a valid object. Called if function has no parameters.

Parameters
executionContextexecuting context
contextcurrent context node
locatorLocator instance for the XPath expression that contains the function call
Returns
pointer to the result XObject

Reimplemented in FunctionNamespaceURI, FunctionString, FunctionNormalizeSpace, FunctionCurrent, and FunctionGenerateID.

◆ execute() [3/5]

virtual XObjectPtr Function::execute ( XPathExecutionContext executionContext,
XalanNode context,
const XObjectPtr  arg,
const Locator *  locator 
) const
virtual

Execute an XPath function object.

The function must return a valid object. Called if function has one parameter.

Parameters
executionContextexecuting context
contextcurrent context node
argpointer to XObject argument
locatorLocator instance for the XPath expression that contains the function call
Returns
pointer to the result XObject

Reimplemented in FunctionID, FunctionNamespaceURI, FunctionString, FunctionLang, FunctionNormalizeSpace, FunctionGenerateID, FunctionElementAvailable, FunctionFunctionAvailable, FunctionSystemProperty, FunctionUnparsedEntityURI, and FunctionDocument.

◆ execute() [4/5]

virtual XObjectPtr Function::execute ( XPathExecutionContext executionContext,
XalanNode context,
const XObjectPtr  arg1,
const XObjectPtr  arg2,
const Locator *  locator 
) const
virtual

Execute an XPath function object.

The function must return a valid object. Called if function has two parameters.

Parameters
executionContextexecuting context
contextcurrent context node
arg1pointer to XObject argument
arg2pointer to XObject argument
locatorLocator instance for the XPath expression that contains the function call
Returns
pointer to the result XObject

Reimplemented in FunctionSubstring, FunctionConcat, FunctionDocument, FunctionKey, FunctionContains, FunctionStartsWith, FunctionSubstringAfter, FunctionSubstringBefore, and FunctionFormatNumber.

◆ execute() [5/5]

virtual XObjectPtr Function::execute ( XPathExecutionContext executionContext,
XalanNode context,
const XObjectPtr  arg1,
const XObjectPtr  arg2,
const XObjectPtr  arg3,
const Locator *  locator 
) const
virtual

Execute an XPath function object.

The function must return a valid object. Called if function has three parameters.

Parameters
executionContextexecuting context
contextcurrent context node
arg1pointer to XObject arguments
arg2pointer to XObject argument
arg3pointer to XObject argument
locatorLocator instance for the XPath expression that contains the function call
Returns
pointer to the result XObject

Reimplemented in FunctionSubstring, FunctionConcat, FunctionFormatNumber, and FunctionTranslate.

◆ generalError()

void Function::generalError ( XPathExecutionContext executionContext,
const XalanNode context,
const Locator *  locator 
) const
protected

Report the error returned from the getError() call.

Parameters
executionContextThe current XPathExecutionContext
contextThe context node
locatorThe Locator instance for the XPath expression that contains the function call

◆ getError()

virtual const XalanDOMString& Function::getError ( XalanDOMString theBuffer) const
protectedpure virtual

Get the error message to report when the function is called with the wrong number of arguments.

Parameters
theBufferThe XalanDOMString for the message.
Returns
The error message

Implemented in XalanEXSLTFunctionTan, XalanEXSLTFunctionSqrt, XalanEXSLTFunctionSin, XalanEXSLTFunctionPower, XalanEXSLTFunctionMin, XalanEXSLTFunctionMax, XalanEXSLTFunctionLowest, XalanEXSLTFunctionLog, XalanEXSLTFunctionHighest, XalanEXSLTFunctionExp, XalanEXSLTFunctionCos, XalanEXSLTFunctionConstant, XalanEXSLTFunctionDecodeURI, XalanEXSLTFunctionTrailing, XalanEXSLTFunctionAtan2, XalanEXSLTFunctionAtan, XalanEXSLTFunctionLeading, XalanEXSLTFunctionEncodeURI, XalanEXSLTFunctionAsin, XalanEXSLTFunctionIntersection, XalanEXSLTFunctionPadding, XalanEXSLTFunctionAcos, XalanEXSLTFunctionHasSameNode, XalanEXSLTFunctionObjectType, XalanEXSLTFunctionConcat, XalanEXSLTFunctionRandom, XalanEXSLTFunctionDistinct, FunctionSubstring, FunctionConcat, FunctionID, FunctionNamespaceURI, FunctionString, FunctionLang, FunctionNormalizeSpace, FunctionNodeSet, XalanEXSLTFunctionEvaluate, XalanEXSLTFunctionAlign, FunctionDocument, FunctionGenerateID, XalanEXSLTFunctionAbs, FunctionKey, FunctionFunctionAvailable, XalanEXSLTFunctionDateTime, FunctionContains, FunctionStartsWith, FunctionSubstringAfter, FunctionTranslate, FunctionDifference, FunctionDistinct, FunctionEvaluate, FunctionHasSameNodes, FunctionIntersection, FunctionSystemProperty, XalanEXSLTFunctionDifference, FunctionSubstringBefore, FunctionUnparsedEntityURI, and XalanEXSLTFunctionNodeSet.


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.

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

Apache Logo