blob: ed54a2b493e8003ec3fe5f26b8ebec4a17b970a4 [file] [log] [blame]
<HTML><HEAD><TITLE>Xalan-C++ API Documentation</TITLE></HEAD>
<BODY>
<h2 align="center">Xalan-C++ API Documentation</h2>
<h3 align="center">The Xalan C++ XSLT Processor Version 1.10</h3>
</BODY>
<!-- Generated by Doxygen 1.2.8.1 -->
<center>
<a class="qindex" href="index.html">Main Page</a> &nbsp; <a class="qindex" href="hierarchy.html">Class Hierarchy</a> &nbsp; <a class="qindex" href="classes.html">Alphabetical List</a> &nbsp; <a class="qindex" href="annotated.html">Compound List</a> &nbsp; <a class="qindex" href="files.html">File List</a> &nbsp; <a class="qindex" href="functions.html">Compound Members</a> &nbsp; <a class="qindex" href="globals.html">File Members</a> &nbsp; </center>
<hr><h1>Function Class Reference</h1><code>#include &lt;<a class="el" href="Function_8hpp-source.html">Function.hpp</a>&gt;</code>
<p>
Inheritance diagram for Function:<p><center><img src="classFunction__inherit__graph.gif" border="0" usemap="#Function_inherit_map" alt="Inheritance graph"></center>
<map name="Function_inherit_map">
<area href="classFunctionConcat.html" shape="rect" coords="191,31,298,7">
<area href="classFunctionContains.html" shape="rect" coords="188,79,302,55">
<area href="classFunctionCurrent.html" shape="rect" coords="189,127,301,103">
<area href="classFunctionDifference.html" shape="rect" coords="182,175,307,151">
<area href="classFunctionDistinct.html" shape="rect" coords="190,223,299,199">
<area href="classFunctionDocument.html" shape="rect" coords="182,271,307,247">
<area href="classFunctionElementAvailable.html" shape="rect" coords="162,319,327,295">
<area href="classFunctionEvaluate.html" shape="rect" coords="188,367,302,343">
<area href="classFunctionFormatNumber.html" shape="rect" coords="168,415,322,391">
<area href="classFunctionFunctionAvailable.html" shape="rect" coords="161,463,329,439">
<area href="classFunctionGenerateID.html" shape="rect" coords="180,511,310,487">
<area href="classFunctionHasSameNodes.html" shape="rect" coords="166,559,323,535">
<area href="classFunctionID.html" shape="rect" coords="206,607,283,583">
<area href="classFunctionIntersection.html" shape="rect" coords="180,655,310,631">
<area href="classFunctionKey.html" shape="rect" coords="201,703,289,679">
<area href="classFunctionLang.html" shape="rect" coords="198,751,291,727">
<area href="classFunctionNamespaceURI.html" shape="rect" coords="166,799,323,775">
<area href="classFunctionNodeSet.html" shape="rect" coords="188,847,302,823">
<area href="classFunctionNormalizeSpace.html" shape="rect" coords="164,895,326,871">
<area href="classFunctionStartsWith.html" shape="rect" coords="182,943,307,919">
<area href="classFunctionString.html" shape="rect" coords="194,991,295,967">
<area href="classFunctionSubstring.html" shape="rect" coords="184,1039,306,1015">
<area href="classFunctionSubstringAfter.html" shape="rect" coords="169,1087,321,1063">
<area href="classFunctionSubstringBefore.html" shape="rect" coords="165,1135,325,1111">
<area href="classFunctionSystemProperty.html" shape="rect" coords="166,1183,323,1159">
<area href="classFunctionTranslate.html" shape="rect" coords="185,1231,305,1207">
<area href="classFunctionUnparsedEntityURI.html" shape="rect" coords="158,1279,331,1255">
<area href="classXalanEXSLTFunctionAbs.html" shape="rect" coords="164,1326,326,1303">
<area href="classXalanEXSLTFunctionAcos.html" shape="rect" coords="161,1374,329,1350">
<area href="classXalanEXSLTFunctionAlign.html" shape="rect" coords="160,1422,330,1398">
<area href="classXalanEXSLTFunctionAsin.html" shape="rect" coords="162,1470,327,1446">
<area href="classXalanEXSLTFunctionAtan.html" shape="rect" coords="162,1518,327,1494">
<area href="classXalanEXSLTFunctionAtan2.html" shape="rect" coords="158,1566,331,1542">
<area href="classXalanEXSLTFunctionConcat.html" shape="rect" coords="154,1614,335,1590">
<area href="classXalanEXSLTFunctionConstant.html" shape="rect" coords="150,1662,339,1638">
<area href="classXalanEXSLTFunctionCos.html" shape="rect" coords="164,1710,326,1686">
<area href="classXalanEXSLTFunctionDateTime.html" shape="rect" coords="148,1758,342,1734">
<area href="classXalanEXSLTFunctionDecodeURI.html" shape="rect" coords="142,1806,347,1782">
<area href="classXalanEXSLTFunctionEncodeURI.html" shape="rect" coords="142,1854,347,1830">
<area href="classXalanEXSLTFunctionExp.html" shape="rect" coords="164,1902,326,1878">
<area href="classXalanEXSLTFunctionHasSameNode.html" shape="rect" coords="133,1950,357,1926">
<area href="classXalanEXSLTFunctionHighest.html" shape="rect" coords="153,1998,337,1974">
<area href="classXalanEXSLTFunctionLeading.html" shape="rect" coords="153,2046,337,2022">
<area href="classXalanEXSLTFunctionLog.html" shape="rect" coords="165,2094,325,2070">
<area href="classXalanEXSLTFunctionLowest.html" shape="rect" coords="156,2142,334,2118">
<area href="classXalanEXSLTFunctionMax.html" shape="rect" coords="162,2190,327,2166">
<area href="classXalanEXSLTFunctionMin.html" shape="rect" coords="165,2238,325,2214">
<area href="classXalanEXSLTFunctionObjectType.html" shape="rect" coords="142,2286,347,2262">
<area href="classXalanEXSLTFunctionPadding.html" shape="rect" coords="150,2334,339,2310">
<area href="classXalanEXSLTFunctionPower.html" shape="rect" coords="157,2382,333,2358">
<area href="classXalanEXSLTFunctionRandom.html" shape="rect" coords="152,2430,338,2406">
<area href="classXalanEXSLTFunctionSin.html" shape="rect" coords="165,2478,325,2454">
<area href="classXalanEXSLTFunctionSqrt.html" shape="rect" coords="162,2526,327,2502">
<area href="classXalanEXSLTFunctionTan.html" shape="rect" coords="165,2574,325,2550">
<area href="classXalanEXSLTFunctionTrailing.html" shape="rect" coords="153,2622,337,2598">
</map>
<center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center><a href="classFunction-members.html">List of all members.</a><h2>Public Types</h2>
<ul>
<li>typedef XERCES_CPP_NAMESPACE_QUALIFIER <br>
Locator <a class="el" href="classFunction.html#s0">LocatorType</a>
<li>typedef XPathExecutionContext::XObjectArgVectorType <a class="el" href="classFunction.html#s1">XObjectArgVectorType</a>
</ul>
<h2>Public Methods</h2>
<ul>
<li><a class="el" href="classFunction.html#a0">Function</a> ()
<li>virtual <a class="el" href="classFunction.html#a1">~Function</a> ()
<li>virtual <a class="el" href="classXObjectPtr.html">XObjectPtr</a> <a class="el" href="classFunction.html#a2">execute</a> (<a class="el" href="classXPathExecutionContext.html">XPathExecutionContext</a> &amp;executionContext, <a class="el" href="classXalanNode.html">XalanNode</a> *context, const <a class="el" href="classFunction.html#s1">XObjectArgVectorType</a> &amp;args, const <a class="el" href="classFunction.html#s0">LocatorType</a> *locator) const
<dl class="el"><dd><font size=-1><em>Execute an <a class="el" href="classXPath.html">XPath</a> function object.</em> <a href="#a2">More...</a><em><br><br></em></font></dl><li>virtual <a class="el" href="classXObjectPtr.html">XObjectPtr</a> <a class="el" href="classFunction.html#a3">execute</a> (<a class="el" href="classXPathExecutionContext.html">XPathExecutionContext</a> &amp;executionContext, <a class="el" href="classXalanNode.html">XalanNode</a> *context, const <a class="el" href="classFunction.html#s0">LocatorType</a> *locator) const
<dl class="el"><dd><font size=-1><em>Execute an <a class="el" href="classXPath.html">XPath</a> function object.</em> <a href="#a3">More...</a><em><br><br></em></font></dl><li>virtual <a class="el" href="classXObjectPtr.html">XObjectPtr</a> <a class="el" href="classFunction.html#a4">execute</a> (<a class="el" href="classXPathExecutionContext.html">XPathExecutionContext</a> &amp;executionContext, <a class="el" href="classXalanNode.html">XalanNode</a> *context, const <a class="el" href="classXObjectPtr.html">XObjectPtr</a> arg, const <a class="el" href="classFunction.html#s0">LocatorType</a> *locator) const
<dl class="el"><dd><font size=-1><em>Execute an <a class="el" href="classXPath.html">XPath</a> function object.</em> <a href="#a4">More...</a><em><br><br></em></font></dl><li>virtual <a class="el" href="classXObjectPtr.html">XObjectPtr</a> <a class="el" href="classFunction.html#a5">execute</a> (<a class="el" href="classXPathExecutionContext.html">XPathExecutionContext</a> &amp;executionContext, <a class="el" href="classXalanNode.html">XalanNode</a> *context, const <a class="el" href="classXObjectPtr.html">XObjectPtr</a> arg1, const <a class="el" href="classXObjectPtr.html">XObjectPtr</a> arg2, const <a class="el" href="classFunction.html#s0">LocatorType</a> *locator) const
<dl class="el"><dd><font size=-1><em>Execute an <a class="el" href="classXPath.html">XPath</a> function object.</em> <a href="#a5">More...</a><em><br><br></em></font></dl><li>virtual <a class="el" href="classXObjectPtr.html">XObjectPtr</a> <a class="el" href="classFunction.html#a6">execute</a> (<a class="el" href="classXPathExecutionContext.html">XPathExecutionContext</a> &amp;executionContext, <a class="el" href="classXalanNode.html">XalanNode</a> *context, const <a class="el" href="classXObjectPtr.html">XObjectPtr</a> arg1, const <a class="el" href="classXObjectPtr.html">XObjectPtr</a> arg2, const <a class="el" href="classXObjectPtr.html">XObjectPtr</a> arg3, const <a class="el" href="classFunction.html#s0">LocatorType</a> *locator) const
<dl class="el"><dd><font size=-1><em>Execute an <a class="el" href="classXPath.html">XPath</a> function object.</em> <a href="#a6">More...</a><em><br><br></em></font></dl><li>virtual Function* <a class="el" href="classFunction.html#a7">clone</a> (<a class="el" href="XalanMemoryManagement_8hpp.html#a5">MemoryManagerType</a> &amp;theManager) const=0
<dl class="el"><dd><font size=-1><em>Create a copy of the function object.</em> <a href="#a7">More...</a><em><br><br></em></font></dl></ul>
<h2>Protected Methods</h2>
<ul>
<li>virtual const <a class="el" href="classXalanDOMString.html">XalanDOMString</a>&amp; <a class="el" href="classFunction.html#b0">getError</a> (<a class="el" href="classXalanDOMString.html">XalanDOMString</a> &amp;theBuffer) const=0
<dl class="el"><dd><font size=-1><em>Get the error message to report when the function is called with the wrong number of arguments.</em> <a href="#b0">More...</a><em><br><br></em></font></dl></ul>
<hr><h2>Member Typedef Documentation</h2>
<a name="s0" doxytag="Function::LocatorType"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
<tr>
<td class="md">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td nowrap valign="top"><b>
typedef XERCES_CPP_NAMESPACE_QUALIFIER Locator Function::LocatorType
</b></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
<tr>
<td>
&nbsp;
</td>
<td>
<p>
</td>
</tr>
</table>
<a name="s1" doxytag="Function::XObjectArgVectorType"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
<tr>
<td class="md">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td nowrap valign="top"><b>
typedef XPathExecutionContext::XObjectArgVectorType Function::XObjectArgVectorType
</b></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
<tr>
<td>
&nbsp;
</td>
<td>
<p>
</td>
</tr>
</table>
<hr><h2>Constructor &amp; Destructor Documentation</h2>
<a name="a0" doxytag="Function::Function"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
<tr>
<td class="md">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td nowrap valign="top"><b>
Function::Function (
</b></td>
<td valign="bottom"><b>
)<code> [explicit]</code>
</b></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
<tr>
<td>
&nbsp;
</td>
<td>
<p>
</td>
</tr>
</table>
<a name="a1" doxytag="Function::~Function"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
<tr>
<td class="md">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td nowrap valign="top"><b>
Function::~Function (
</b></td>
<td valign="bottom"><b>
)<code> [virtual]</code>
</b></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
<tr>
<td>
&nbsp;
</td>
<td>
<p>
</td>
</tr>
</table>
<hr><h2>Member Function Documentation</h2>
<a name="a7" doxytag="Function::clone"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
<tr>
<td class="md">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td nowrap valign="top"><b>
Function * Function::clone (
</b></td>
<td valign="bottom"><b>
<a class="el" href="XalanMemoryManagement_8hpp.html#a5">MemoryManagerType</a> &amp; <em>theManager</em>&nbsp;) const<code> [pure virtual]</code>
</b></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
<tr>
<td>
&nbsp;
</td>
<td>
<p>
Create a copy of the function object.
<p>
<dl compact><dt>
<b>Returns: </b><dd>
pointer to the new object </dl>
<p>
Reimplemented in <a class="el" href="classXalanEXSLTFunctionNodeSet.html#a2">XalanEXSLTFunctionNodeSet</a>, <a class="el" href="classXalanEXSLTFunctionObjectType.html#a4">XalanEXSLTFunctionObjectType</a>, <a class="el" href="classXalanEXSLTFunctionDateTime.html#a3">XalanEXSLTFunctionDateTime</a>, <a class="el" href="classXalanEXSLTFunctionEvaluate.html#a3">XalanEXSLTFunctionEvaluate</a>, <a class="el" href="classXalanEXSLTFunctionAbs.html#a3">XalanEXSLTFunctionAbs</a>, <a class="el" href="classXalanEXSLTFunctionRandom.html#a3">XalanEXSLTFunctionRandom</a>, <a class="el" href="classXalanEXSLTFunctionAcos.html#a3">XalanEXSLTFunctionAcos</a>, <a class="el" href="classXalanEXSLTFunctionAsin.html#a3">XalanEXSLTFunctionAsin</a>, <a class="el" href="classXalanEXSLTFunctionAtan.html#a3">XalanEXSLTFunctionAtan</a>, <a class="el" href="classXalanEXSLTFunctionAtan2.html#a3">XalanEXSLTFunctionAtan2</a>, <a class="el" href="classXalanEXSLTFunctionConstant.html#a3">XalanEXSLTFunctionConstant</a>, <a class="el" href="classXalanEXSLTFunctionCos.html#a3">XalanEXSLTFunctionCos</a>, <a class="el" href="classXalanEXSLTFunctionExp.html#a3">XalanEXSLTFunctionExp</a>, <a class="el" href="classXalanEXSLTFunctionHighest.html#a3">XalanEXSLTFunctionHighest</a>, <a class="el" href="classXalanEXSLTFunctionLog.html#a3">XalanEXSLTFunctionLog</a>, <a class="el" href="classXalanEXSLTFunctionLowest.html#a3">XalanEXSLTFunctionLowest</a>, <a class="el" href="classXalanEXSLTFunctionMax.html#a3">XalanEXSLTFunctionMax</a>, <a class="el" href="classXalanEXSLTFunctionMin.html#a3">XalanEXSLTFunctionMin</a>, <a class="el" href="classXalanEXSLTFunctionPower.html#a3">XalanEXSLTFunctionPower</a>, <a class="el" href="classXalanEXSLTFunctionSin.html#a3">XalanEXSLTFunctionSin</a>, <a class="el" href="classXalanEXSLTFunctionSqrt.html#a3">XalanEXSLTFunctionSqrt</a>, <a class="el" href="classXalanEXSLTFunctionTan.html#a3">XalanEXSLTFunctionTan</a>, <a class="el" href="classXalanEXSLTFunctionDifference.html#a2">XalanEXSLTFunctionDifference</a>, <a class="el" href="classXalanEXSLTFunctionDistinct.html#a2">XalanEXSLTFunctionDistinct</a>, <a class="el" href="classXalanEXSLTFunctionHasSameNode.html#a3">XalanEXSLTFunctionHasSameNode</a>, <a class="el" href="classXalanEXSLTFunctionIntersection.html#a2">XalanEXSLTFunctionIntersection</a>, <a class="el" href="classXalanEXSLTFunctionLeading.html#a3">XalanEXSLTFunctionLeading</a>, <a class="el" href="classXalanEXSLTFunctionTrailing.html#a3">XalanEXSLTFunctionTrailing</a>, <a class="el" href="classXalanEXSLTFunctionAlign.html#a3">XalanEXSLTFunctionAlign</a>, <a class="el" href="classXalanEXSLTFunctionConcat.html#a3">XalanEXSLTFunctionConcat</a>, <a class="el" href="classXalanEXSLTFunctionPadding.html#a5">XalanEXSLTFunctionPadding</a>, <a class="el" href="classXalanEXSLTFunctionEncodeURI.html#a3">XalanEXSLTFunctionEncodeURI</a>, <a class="el" href="classXalanEXSLTFunctionDecodeURI.html#a3">XalanEXSLTFunctionDecodeURI</a>, <a class="el" href="classFunctionDifference.html#a3">FunctionDifference</a>, <a class="el" href="classFunctionDistinct.html#a3">FunctionDistinct</a>, <a class="el" href="classFunctionEvaluate.html#a3">FunctionEvaluate</a>, <a class="el" href="classFunctionHasSameNodes.html#a3">FunctionHasSameNodes</a>, <a class="el" href="classFunctionIntersection.html#a3">FunctionIntersection</a>, <a class="el" href="classFunctionNodeSet.html#a3">FunctionNodeSet</a>, <a class="el" href="classFunctionConcat.html#a5">FunctionConcat</a>, <a class="el" href="classFunctionContains.html#a3">FunctionContains</a>, <a class="el" href="classFunctionID.html#a3">FunctionID</a>, <a class="el" href="classFunctionLang.html#a3">FunctionLang</a>, <a class="el" href="classFunctionNamespaceURI.html#a4">FunctionNamespaceURI</a>, <a class="el" href="classFunctionNormalizeSpace.html#a4">FunctionNormalizeSpace</a>, <a class="el" href="classFunctionStartsWith.html#a3">FunctionStartsWith</a>, <a class="el" href="classFunctionString.html#a4">FunctionString</a>, <a class="el" href="classFunctionSubstring.html#a4">FunctionSubstring</a>, <a class="el" href="classFunctionSubstringAfter.html#a3">FunctionSubstringAfter</a>, <a class="el" href="classFunctionSubstringBefore.html#a3">FunctionSubstringBefore</a>, <a class="el" href="classFunctionTranslate.html#a3">FunctionTranslate</a>, <a class="el" href="classFunctionCurrent.html#a3">FunctionCurrent</a>, <a class="el" href="classFunctionDocument.html#a4">FunctionDocument</a>, <a class="el" href="classFunctionElementAvailable.html#a3">FunctionElementAvailable</a>, <a class="el" href="classFunctionFormatNumber.html#a4">FunctionFormatNumber</a>, <a class="el" href="classFunctionFunctionAvailable.html#a3">FunctionFunctionAvailable</a>, <a class="el" href="classFunctionGenerateID.html#a4">FunctionGenerateID</a>, <a class="el" href="classFunctionKey.html#a3">FunctionKey</a>, <a class="el" href="classFunctionSystemProperty.html#a4">FunctionSystemProperty</a>, and <a class="el" href="classFunctionUnparsedEntityURI.html#a3">FunctionUnparsedEntityURI</a>. </td>
</tr>
</table>
<a name="a6" doxytag="Function::execute"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
<tr>
<td class="md">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td nowrap valign="top"><b>
<a class="el" href="classXObjectPtr.html">XObjectPtr</a> Function::execute (
</b></td>
<td valign="bottom"><b>
<a class="el" href="classXPathExecutionContext.html">XPathExecutionContext</a> &amp; <em>executionContext</em>,
</b></td>
</tr>
<tr>
<td></td>
<td><b>
<a class="el" href="classXalanNode.html">XalanNode</a> * <em>context</em>,
</b></td>
</tr>
<tr>
<td></td>
<td><b>
const <a class="el" href="classXObjectPtr.html">XObjectPtr</a> <em>arg1</em>,
</b></td>
</tr>
<tr>
<td></td>
<td><b>
const <a class="el" href="classXObjectPtr.html">XObjectPtr</a> <em>arg2</em>,
</b></td>
</tr>
<tr>
<td></td>
<td><b>
const <a class="el" href="classXObjectPtr.html">XObjectPtr</a> <em>arg3</em>,
</b></td>
</tr>
<tr>
<td></td>
<td><b>
const <a class="el" href="classFunction.html#s0">LocatorType</a> * <em>locator</em>&nbsp;) const<code> [virtual]</code>
</b></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
<tr>
<td>
&nbsp;
</td>
<td>
<p>
Execute an <a class="el" href="classXPath.html">XPath</a> function object.
<p>
The function must return a valid object. Called if function has three parameters.<dl compact><dt>
<b>Parameters: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>executionContext</em>
&nbsp;</td><td>
executing context </td></tr>
<tr><td valign=top><em>context</em>
&nbsp;</td><td>
current context node </td></tr>
<tr><td valign=top><em>arg1</em>
&nbsp;</td><td>
pointer to <a class="el" href="classXObject.html">XObject</a> arguments </td></tr>
<tr><td valign=top><em>arg2</em>
&nbsp;</td><td>
pointer to <a class="el" href="classXObject.html">XObject</a> argument </td></tr>
<tr><td valign=top><em>arg3</em>
&nbsp;</td><td>
pointer to <a class="el" href="classXObject.html">XObject</a> argument </td></tr>
<tr><td valign=top><em>locator</em>
&nbsp;</td><td>
LocatorType instance for the <a class="el" href="classXPath.html">XPath</a> expression that contains the function call </td></tr>
</table>
</dl><dl compact><dt>
<b>Returns: </b><dd>
pointer to the result <a class="el" href="classXObject.html">XObject</a> </dl>
<p>
Reimplemented in <a class="el" href="classFunctionConcat.html#a4">FunctionConcat</a>, <a class="el" href="classFunctionSubstring.html#a3">FunctionSubstring</a>, <a class="el" href="classFunctionTranslate.html#a2">FunctionTranslate</a>, and <a class="el" href="classFunctionFormatNumber.html#a3">FunctionFormatNumber</a>. </td>
</tr>
</table>
<a name="a5" doxytag="Function::execute"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
<tr>
<td class="md">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td nowrap valign="top"><b>
<a class="el" href="classXObjectPtr.html">XObjectPtr</a> Function::execute (
</b></td>
<td valign="bottom"><b>
<a class="el" href="classXPathExecutionContext.html">XPathExecutionContext</a> &amp; <em>executionContext</em>,
</b></td>
</tr>
<tr>
<td></td>
<td><b>
<a class="el" href="classXalanNode.html">XalanNode</a> * <em>context</em>,
</b></td>
</tr>
<tr>
<td></td>
<td><b>
const <a class="el" href="classXObjectPtr.html">XObjectPtr</a> <em>arg1</em>,
</b></td>
</tr>
<tr>
<td></td>
<td><b>
const <a class="el" href="classXObjectPtr.html">XObjectPtr</a> <em>arg2</em>,
</b></td>
</tr>
<tr>
<td></td>
<td><b>
const <a class="el" href="classFunction.html#s0">LocatorType</a> * <em>locator</em>&nbsp;) const<code> [virtual]</code>
</b></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
<tr>
<td>
&nbsp;
</td>
<td>
<p>
Execute an <a class="el" href="classXPath.html">XPath</a> function object.
<p>
The function must return a valid object. Called if function has two parameters.<dl compact><dt>
<b>Parameters: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>executionContext</em>
&nbsp;</td><td>
executing context </td></tr>
<tr><td valign=top><em>context</em>
&nbsp;</td><td>
current context node </td></tr>
<tr><td valign=top><em>arg1</em>
&nbsp;</td><td>
pointer to <a class="el" href="classXObject.html">XObject</a> argument </td></tr>
<tr><td valign=top><em>arg2</em>
&nbsp;</td><td>
pointer to <a class="el" href="classXObject.html">XObject</a> argument </td></tr>
<tr><td valign=top><em>locator</em>
&nbsp;</td><td>
LocatorType instance for the <a class="el" href="classXPath.html">XPath</a> expression that contains the function call </td></tr>
</table>
</dl><dl compact><dt>
<b>Returns: </b><dd>
pointer to the result <a class="el" href="classXObject.html">XObject</a> </dl>
<p>
Reimplemented in <a class="el" href="classFunctionConcat.html#a3">FunctionConcat</a>, <a class="el" href="classFunctionContains.html#a2">FunctionContains</a>, <a class="el" href="classFunctionStartsWith.html#a2">FunctionStartsWith</a>, <a class="el" href="classFunctionSubstring.html#a2">FunctionSubstring</a>, <a class="el" href="classFunctionSubstringAfter.html#a2">FunctionSubstringAfter</a>, <a class="el" href="classFunctionSubstringBefore.html#a2">FunctionSubstringBefore</a>, <a class="el" href="classFunctionDocument.html#a3">FunctionDocument</a>, <a class="el" href="classFunctionFormatNumber.html#a2">FunctionFormatNumber</a>, and <a class="el" href="classFunctionKey.html#a2">FunctionKey</a>. </td>
</tr>
</table>
<a name="a4" doxytag="Function::execute"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
<tr>
<td class="md">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td nowrap valign="top"><b>
<a class="el" href="classXObjectPtr.html">XObjectPtr</a> Function::execute (
</b></td>
<td valign="bottom"><b>
<a class="el" href="classXPathExecutionContext.html">XPathExecutionContext</a> &amp; <em>executionContext</em>,
</b></td>
</tr>
<tr>
<td></td>
<td><b>
<a class="el" href="classXalanNode.html">XalanNode</a> * <em>context</em>,
</b></td>
</tr>
<tr>
<td></td>
<td><b>
const <a class="el" href="classXObjectPtr.html">XObjectPtr</a> <em>arg</em>,
</b></td>
</tr>
<tr>
<td></td>
<td><b>
const <a class="el" href="classFunction.html#s0">LocatorType</a> * <em>locator</em>&nbsp;) const<code> [virtual]</code>
</b></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
<tr>
<td>
&nbsp;
</td>
<td>
<p>
Execute an <a class="el" href="classXPath.html">XPath</a> function object.
<p>
The function must return a valid object. Called if function has one parameter.<dl compact><dt>
<b>Parameters: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>executionContext</em>
&nbsp;</td><td>
executing context </td></tr>
<tr><td valign=top><em>context</em>
&nbsp;</td><td>
current context node </td></tr>
<tr><td valign=top><em>arg</em>
&nbsp;</td><td>
pointer to <a class="el" href="classXObject.html">XObject</a> argument </td></tr>
<tr><td valign=top><em>locator</em>
&nbsp;</td><td>
LocatorType instance for the <a class="el" href="classXPath.html">XPath</a> expression that contains the function call </td></tr>
</table>
</dl><dl compact><dt>
<b>Returns: </b><dd>
pointer to the result <a class="el" href="classXObject.html">XObject</a> </dl>
<p>
Reimplemented in <a class="el" href="classFunctionID.html#a2">FunctionID</a>, <a class="el" href="classFunctionLang.html#a2">FunctionLang</a>, <a class="el" href="classFunctionNamespaceURI.html#a3">FunctionNamespaceURI</a>, <a class="el" href="classFunctionNormalizeSpace.html#a3">FunctionNormalizeSpace</a>, <a class="el" href="classFunctionString.html#a3">FunctionString</a>, <a class="el" href="classFunctionDocument.html#a2">FunctionDocument</a>, <a class="el" href="classFunctionElementAvailable.html#a2">FunctionElementAvailable</a>, <a class="el" href="classFunctionFunctionAvailable.html#a2">FunctionFunctionAvailable</a>, <a class="el" href="classFunctionGenerateID.html#a3">FunctionGenerateID</a>, <a class="el" href="classFunctionSystemProperty.html#a3">FunctionSystemProperty</a>, and <a class="el" href="classFunctionUnparsedEntityURI.html#a2">FunctionUnparsedEntityURI</a>. </td>
</tr>
</table>
<a name="a3" doxytag="Function::execute"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
<tr>
<td class="md">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td nowrap valign="top"><b>
<a class="el" href="classXObjectPtr.html">XObjectPtr</a> Function::execute (
</b></td>
<td valign="bottom"><b>
<a class="el" href="classXPathExecutionContext.html">XPathExecutionContext</a> &amp; <em>executionContext</em>,
</b></td>
</tr>
<tr>
<td></td>
<td><b>
<a class="el" href="classXalanNode.html">XalanNode</a> * <em>context</em>,
</b></td>
</tr>
<tr>
<td></td>
<td><b>
const <a class="el" href="classFunction.html#s0">LocatorType</a> * <em>locator</em>&nbsp;) const<code> [virtual]</code>
</b></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
<tr>
<td>
&nbsp;
</td>
<td>
<p>
Execute an <a class="el" href="classXPath.html">XPath</a> function object.
<p>
The function must return a valid object. Called if function has no parameters.<dl compact><dt>
<b>Parameters: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>executionContext</em>
&nbsp;</td><td>
executing context </td></tr>
<tr><td valign=top><em>context</em>
&nbsp;</td><td>
current context node </td></tr>
<tr><td valign=top><em>locator</em>
&nbsp;</td><td>
LocatorType instance for the <a class="el" href="classXPath.html">XPath</a> expression that contains the function call </td></tr>
</table>
</dl><dl compact><dt>
<b>Returns: </b><dd>
pointer to the result <a class="el" href="classXObject.html">XObject</a> </dl>
<p>
Reimplemented in <a class="el" href="classFunctionNamespaceURI.html#a2">FunctionNamespaceURI</a>, <a class="el" href="classFunctionNormalizeSpace.html#a2">FunctionNormalizeSpace</a>, <a class="el" href="classFunctionString.html#a2">FunctionString</a>, <a class="el" href="classFunctionCurrent.html#a2">FunctionCurrent</a>, and <a class="el" href="classFunctionGenerateID.html#a2">FunctionGenerateID</a>. </td>
</tr>
</table>
<a name="a2" doxytag="Function::execute"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
<tr>
<td class="md">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td nowrap valign="top"><b>
<a class="el" href="classXObjectPtr.html">XObjectPtr</a> Function::execute (
</b></td>
<td valign="bottom"><b>
<a class="el" href="classXPathExecutionContext.html">XPathExecutionContext</a> &amp; <em>executionContext</em>,
</b></td>
</tr>
<tr>
<td></td>
<td><b>
<a class="el" href="classXalanNode.html">XalanNode</a> * <em>context</em>,
</b></td>
</tr>
<tr>
<td></td>
<td><b>
const <a class="el" href="classFunction.html#s1">XObjectArgVectorType</a> &amp; <em>args</em>,
</b></td>
</tr>
<tr>
<td></td>
<td><b>
const <a class="el" href="classFunction.html#s0">LocatorType</a> * <em>locator</em>&nbsp;) const<code> [virtual]</code>
</b></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
<tr>
<td>
&nbsp;
</td>
<td>
<p>
Execute an <a class="el" href="classXPath.html">XPath</a> function object.
<p>
The function must return a valid object. Extension functions should override this version of <a class="el" href="classFunction.html#a2">execute</a>(), 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.<dl compact><dt>
<b>Parameters: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>executionContext</em>
&nbsp;</td><td>
executing context </td></tr>
<tr><td valign=top><em>context</em>
&nbsp;</td><td>
current context node </td></tr>
<tr><td valign=top><em>args</em>
&nbsp;</td><td>
vector of pointers to <a class="el" href="classXObject.html">XObject</a> arguments </td></tr>
<tr><td valign=top><em>locator</em>
&nbsp;</td><td>
LocatorType instance for the <a class="el" href="classXPath.html">XPath</a> expression that contains the function call </td></tr>
</table>
</dl><dl compact><dt>
<b>Returns: </b><dd>
pointer to the result <a class="el" href="classXObject.html">XObject</a> </dl>
<p>
Reimplemented in <a class="el" href="classXalanEXSLTFunctionObjectType.html#a3">XalanEXSLTFunctionObjectType</a>, <a class="el" href="classXalanEXSLTFunctionDateTime.html#a2">XalanEXSLTFunctionDateTime</a>, <a class="el" href="classXalanEXSLTFunctionEvaluate.html#a2">XalanEXSLTFunctionEvaluate</a>, <a class="el" href="classXalanEXSLTFunctionAbs.html#a2">XalanEXSLTFunctionAbs</a>, <a class="el" href="classXalanEXSLTFunctionRandom.html#a2">XalanEXSLTFunctionRandom</a>, <a class="el" href="classXalanEXSLTFunctionAcos.html#a2">XalanEXSLTFunctionAcos</a>, <a class="el" href="classXalanEXSLTFunctionAsin.html#a2">XalanEXSLTFunctionAsin</a>, <a class="el" href="classXalanEXSLTFunctionAtan.html#a2">XalanEXSLTFunctionAtan</a>, <a class="el" href="classXalanEXSLTFunctionAtan2.html#a2">XalanEXSLTFunctionAtan2</a>, <a class="el" href="classXalanEXSLTFunctionConstant.html#a2">XalanEXSLTFunctionConstant</a>, <a class="el" href="classXalanEXSLTFunctionCos.html#a2">XalanEXSLTFunctionCos</a>, <a class="el" href="classXalanEXSLTFunctionExp.html#a2">XalanEXSLTFunctionExp</a>, <a class="el" href="classXalanEXSLTFunctionHighest.html#a2">XalanEXSLTFunctionHighest</a>, <a class="el" href="classXalanEXSLTFunctionLog.html#a2">XalanEXSLTFunctionLog</a>, <a class="el" href="classXalanEXSLTFunctionLowest.html#a2">XalanEXSLTFunctionLowest</a>, <a class="el" href="classXalanEXSLTFunctionMax.html#a2">XalanEXSLTFunctionMax</a>, <a class="el" href="classXalanEXSLTFunctionMin.html#a2">XalanEXSLTFunctionMin</a>, <a class="el" href="classXalanEXSLTFunctionPower.html#a2">XalanEXSLTFunctionPower</a>, <a class="el" href="classXalanEXSLTFunctionSin.html#a2">XalanEXSLTFunctionSin</a>, <a class="el" href="classXalanEXSLTFunctionSqrt.html#a2">XalanEXSLTFunctionSqrt</a>, <a class="el" href="classXalanEXSLTFunctionTan.html#a2">XalanEXSLTFunctionTan</a>, <a class="el" href="classXalanEXSLTFunctionHasSameNode.html#a2">XalanEXSLTFunctionHasSameNode</a>, <a class="el" href="classXalanEXSLTFunctionLeading.html#a2">XalanEXSLTFunctionLeading</a>, <a class="el" href="classXalanEXSLTFunctionTrailing.html#a2">XalanEXSLTFunctionTrailing</a>, <a class="el" href="classXalanEXSLTFunctionAlign.html#a2">XalanEXSLTFunctionAlign</a>, <a class="el" href="classXalanEXSLTFunctionConcat.html#a2">XalanEXSLTFunctionConcat</a>, <a class="el" href="classXalanEXSLTFunctionPadding.html#a4">XalanEXSLTFunctionPadding</a>, <a class="el" href="classXalanEXSLTFunctionEncodeURI.html#a2">XalanEXSLTFunctionEncodeURI</a>, <a class="el" href="classXalanEXSLTFunctionDecodeURI.html#a2">XalanEXSLTFunctionDecodeURI</a>, <a class="el" href="classFunctionDifference.html#a2">FunctionDifference</a>, <a class="el" href="classFunctionDistinct.html#a2">FunctionDistinct</a>, <a class="el" href="classFunctionEvaluate.html#a2">FunctionEvaluate</a>, <a class="el" href="classFunctionHasSameNodes.html#a2">FunctionHasSameNodes</a>, <a class="el" href="classFunctionIntersection.html#a2">FunctionIntersection</a>, <a class="el" href="classFunctionNodeSet.html#a2">FunctionNodeSet</a>, and <a class="el" href="classFunctionConcat.html#a2">FunctionConcat</a>. </td>
</tr>
</table>
<a name="b0" doxytag="Function::getError"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
<tr>
<td class="md">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td nowrap valign="top"><b>
const <a class="el" href="classXalanDOMString.html">XalanDOMString</a> &amp; Function::getError (
</b></td>
<td valign="bottom"><b>
<a class="el" href="classXalanDOMString.html">XalanDOMString</a> &amp; <em>theBuffer</em>&nbsp;) const<code> [protected, pure virtual]</code>
</b></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
<tr>
<td>
&nbsp;
</td>
<td>
<p>
Get the error message to report when the function is called with the wrong number of arguments.
<p>
<dl compact><dt>
<b>Returns: </b><dd>
function error message </dl>
<p>
Reimplemented in <a class="el" href="classXalanEXSLTFunctionNodeSet.html#b0">XalanEXSLTFunctionNodeSet</a>, <a class="el" href="classXalanEXSLTFunctionObjectType.html#b0">XalanEXSLTFunctionObjectType</a>, <a class="el" href="classXalanEXSLTFunctionDateTime.html#b0">XalanEXSLTFunctionDateTime</a>, <a class="el" href="classXalanEXSLTFunctionEvaluate.html#b0">XalanEXSLTFunctionEvaluate</a>, <a class="el" href="classXalanEXSLTFunctionAbs.html#b0">XalanEXSLTFunctionAbs</a>, <a class="el" href="classXalanEXSLTFunctionRandom.html#b0">XalanEXSLTFunctionRandom</a>, <a class="el" href="classXalanEXSLTFunctionAcos.html#b0">XalanEXSLTFunctionAcos</a>, <a class="el" href="classXalanEXSLTFunctionAsin.html#b0">XalanEXSLTFunctionAsin</a>, <a class="el" href="classXalanEXSLTFunctionAtan.html#b0">XalanEXSLTFunctionAtan</a>, <a class="el" href="classXalanEXSLTFunctionAtan2.html#b0">XalanEXSLTFunctionAtan2</a>, <a class="el" href="classXalanEXSLTFunctionConstant.html#b0">XalanEXSLTFunctionConstant</a>, <a class="el" href="classXalanEXSLTFunctionCos.html#b0">XalanEXSLTFunctionCos</a>, <a class="el" href="classXalanEXSLTFunctionExp.html#b0">XalanEXSLTFunctionExp</a>, <a class="el" href="classXalanEXSLTFunctionHighest.html#b0">XalanEXSLTFunctionHighest</a>, <a class="el" href="classXalanEXSLTFunctionLog.html#b0">XalanEXSLTFunctionLog</a>, <a class="el" href="classXalanEXSLTFunctionLowest.html#b0">XalanEXSLTFunctionLowest</a>, <a class="el" href="classXalanEXSLTFunctionMax.html#b0">XalanEXSLTFunctionMax</a>, <a class="el" href="classXalanEXSLTFunctionMin.html#b0">XalanEXSLTFunctionMin</a>, <a class="el" href="classXalanEXSLTFunctionPower.html#b0">XalanEXSLTFunctionPower</a>, <a class="el" href="classXalanEXSLTFunctionSin.html#b0">XalanEXSLTFunctionSin</a>, <a class="el" href="classXalanEXSLTFunctionSqrt.html#b0">XalanEXSLTFunctionSqrt</a>, <a class="el" href="classXalanEXSLTFunctionTan.html#b0">XalanEXSLTFunctionTan</a>, <a class="el" href="classXalanEXSLTFunctionDifference.html#b0">XalanEXSLTFunctionDifference</a>, <a class="el" href="classXalanEXSLTFunctionDistinct.html#b0">XalanEXSLTFunctionDistinct</a>, <a class="el" href="classXalanEXSLTFunctionHasSameNode.html#b0">XalanEXSLTFunctionHasSameNode</a>, <a class="el" href="classXalanEXSLTFunctionIntersection.html#b0">XalanEXSLTFunctionIntersection</a>, <a class="el" href="classXalanEXSLTFunctionLeading.html#b0">XalanEXSLTFunctionLeading</a>, <a class="el" href="classXalanEXSLTFunctionTrailing.html#b0">XalanEXSLTFunctionTrailing</a>, <a class="el" href="classXalanEXSLTFunctionAlign.html#b0">XalanEXSLTFunctionAlign</a>, <a class="el" href="classXalanEXSLTFunctionConcat.html#b0">XalanEXSLTFunctionConcat</a>, <a class="el" href="classXalanEXSLTFunctionPadding.html#b0">XalanEXSLTFunctionPadding</a>, <a class="el" href="classXalanEXSLTFunctionEncodeURI.html#b0">XalanEXSLTFunctionEncodeURI</a>, <a class="el" href="classXalanEXSLTFunctionDecodeURI.html#b0">XalanEXSLTFunctionDecodeURI</a>, <a class="el" href="classFunctionDifference.html#b0">FunctionDifference</a>, <a class="el" href="classFunctionDistinct.html#b0">FunctionDistinct</a>, <a class="el" href="classFunctionEvaluate.html#b0">FunctionEvaluate</a>, <a class="el" href="classFunctionHasSameNodes.html#b0">FunctionHasSameNodes</a>, <a class="el" href="classFunctionIntersection.html#b0">FunctionIntersection</a>, <a class="el" href="classFunctionNodeSet.html#b0">FunctionNodeSet</a>, <a class="el" href="classFunctionConcat.html#b0">FunctionConcat</a>, <a class="el" href="classFunctionContains.html#b0">FunctionContains</a>, <a class="el" href="classFunctionID.html#b0">FunctionID</a>, <a class="el" href="classFunctionLang.html#b0">FunctionLang</a>, <a class="el" href="classFunctionNamespaceURI.html#b0">FunctionNamespaceURI</a>, <a class="el" href="classFunctionNormalizeSpace.html#b0">FunctionNormalizeSpace</a>, <a class="el" href="classFunctionStartsWith.html#b0">FunctionStartsWith</a>, <a class="el" href="classFunctionString.html#b0">FunctionString</a>, <a class="el" href="classFunctionSubstring.html#b0">FunctionSubstring</a>, <a class="el" href="classFunctionSubstringAfter.html#b0">FunctionSubstringAfter</a>, <a class="el" href="classFunctionSubstringBefore.html#b0">FunctionSubstringBefore</a>, <a class="el" href="classFunctionTranslate.html#b0">FunctionTranslate</a>, <a class="el" href="classFunctionDocument.html#b0">FunctionDocument</a>, <a class="el" href="classFunctionFunctionAvailable.html#b0">FunctionFunctionAvailable</a>, <a class="el" href="classFunctionGenerateID.html#b0">FunctionGenerateID</a>, <a class="el" href="classFunctionKey.html#b0">FunctionKey</a>, <a class="el" href="classFunctionSystemProperty.html#b0">FunctionSystemProperty</a>, and <a class="el" href="classFunctionUnparsedEntityURI.html#b0">FunctionUnparsedEntityURI</a>. </td>
</tr>
</table>
<hr>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="Function_8hpp-source.html">Function.hpp</a></ul>
<p align="center"><a href="diagramnotes.html">Interpreting class diagrams</a></p>
<p><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
<i><A href="http://www.stack.nl/~dimitri/doxygen/">Doxygen</A> and
<A href="http://www.research.att.com/sw/tools/graphviz/">GraphViz</A> are used to generate this API documentation from the Xalan-C header files.</I></FONT></p>
<TABLE border="0" cellpadding="0" cellspacing="0" width="820"><TR><TD bgcolor="#0086b2"><IMG height="1" src="../resources/dot.gif" width="1" alt="dot"></TD></TR></TABLE>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0" WIDTH="80%">
<TR>
<TD WIDTH="80%" VALIGN="TOP">
<P ALIGN="CENTER"><B>Xalan-C++ XSLT Processor Version 1.10</B><BR>
Copyright &copy; 1999-2004 The Apache Software Foundation. All Rights Reserved.</i></p>
</TD>
</TR>
<TR>
<TD WIDTH="100%">
<P ALIGN="CENTER"><IMG SRC="ApacheLogo.jpg" WIDTH="387" HEIGHT="100" ALIGN="BOTTOM" BORDER="0" ALT="Apache Logo">
</TD>
</TR>
</TABLE>