<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<title>Xalan-C++ API : Main Page</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<link href="doxygen.css" rel="stylesheet" type="text/css"/>
</head>
<!-- The head section is copied from Doxygen 1.7.1 generated default output -->
<body>
<h2 align="center">Xalan-C++ API Documentation</h2>
<h3 align="center"><a href="../index.html">The Xalan C++ XSLT Processor Version 1.11</a></h3>
<hr/>
<!-- Generated by Doxygen 1.7.1 -->
<div class="navigation" id="top">
  <div class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
      <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
      <li><a href="files.html"><span>Files</span></a></li>
    </ul>
  </div>
  <div class="tabs2">
    <ul class="tablist">
      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
      <li><a href="classes.html"><span>Class&nbsp;Index</span></a></li>
      <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
    </ul>
  </div>
</div>
<div class="header">
  <div class="summary">
<a href="#pub-types">Public Types</a> &#124;
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pro-methods">Protected Member Functions</a>  </div>
  <div class="headertitle">
<h1>FunctionDocument Class Reference</h1>  </div>
</div>
<div class="contents">
<!-- doxytag: class="FunctionDocument" --><!-- doxytag: inherits="Function" -->
<p><code>#include &lt;<a class="el" href="FunctionDocument_8hpp_source.html">FunctionDocument.hpp</a>&gt;</code></p>

<p>Inherits <a class="el" href="classFunction.html">Function</a>.</p>
<div class="dynheader">
Collaboration diagram for FunctionDocument:</div>
<div class="dyncontent">
<div class="center"><img src="classFunctionDocument__coll__graph.png" border="0" usemap="#FunctionDocument_coll__map" alt="Collaboration graph"/></div>
<map name="FunctionDocument_coll__map" id="FunctionDocument_coll__map">
<area shape="rect" id="node2" href="classFunction.html" title="Function" alt="" coords="39,5,113,35"/></map>
<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>

<p><a href="classFunctionDocument-members.html">List of all members.</a></p>
<h2><a name="pub-types"></a>
Public Types</h2>
<ul>
<li>typedef <a class="el" href="classFunction.html">Function</a> <a class="el" href="classFunctionDocument.html#aa1375a71b34d6611aa2f8218fa3dc466">ParentType</a>
</ul>
<h2><a name="pub-methods"></a>
Public Member Functions</h2>
<ul>
<li><a class="el" href="classFunctionDocument.html#a927aff775b2e4f5a27214f1902247b34">FunctionDocument</a> ()
<li>virtual <a class="el" href="classFunctionDocument.html#a889a27f3abeeae1c7cb3577019bdc6cd">~FunctionDocument</a> ()
<li>virtual <a class="el" href="classXObjectPtr.html">XObjectPtr</a> <a class="el" href="classFunctionDocument.html#a8a58889625bf3c10479c769cb4a0a940">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 Locator *locator) const 
<dl class="el"><dd class="mdescRight">Execute an <a class="el" href="classXPath.html">XPath</a> function object.  <a href="#a8a58889625bf3c10479c769cb4a0a940"></a><br/></dl><li>virtual <a class="el" href="classXObjectPtr.html">XObjectPtr</a> <a class="el" href="classFunctionDocument.html#a6163cc8a980d342eeacb374143f89a27">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 Locator *locator) const 
<dl class="el"><dd class="mdescRight">Execute an <a class="el" href="classXPath.html">XPath</a> function object.  <a href="#a6163cc8a980d342eeacb374143f89a27"></a><br/></dl><li>virtual <a class="el" href="classFunctionDocument.html">FunctionDocument</a> * <a class="el" href="classFunctionDocument.html#a5014c5dae2b7da044b16d75c68da91f4">clone</a> (MemoryManager &amp;theManager) const 
<dl class="el"><dd class="mdescRight">Create a copy of the function object.  <a href="#a5014c5dae2b7da044b16d75c68da91f4"></a><br/></dl></ul>
<h2><a name="pro-methods"></a>
Protected Member Functions</h2>
<ul>
<li>virtual const <a class="el" href="classXalanDOMString.html">XalanDOMString</a> &amp; <a class="el" href="classFunctionDocument.html#a5c123127529d896b61820e9820224adb">getError</a> (<a class="el" href="classXalanDOMString.html">XalanDOMString</a> &amp;<a class="el" href="XalanDOMString_8hpp.html#ad0987a2085caff760532b7f16b5c6f2e">theResult</a>) const 
<dl class="el"><dd class="mdescRight">Get the error message to report when the function is called with the wrong number of arguments.  <a href="#a5c123127529d896b61820e9820224adb"></a><br/></dl></ul>
<hr/><a name="_details"></a><h2>Detailed Description</h2>

<p>Definition at line <a class="el" href="FunctionDocument_8hpp_source.html#l00038">38</a> of file <a class="el" href="FunctionDocument_8hpp_source.html">FunctionDocument.hpp</a>.</p>
<hr/><h2>Member Typedef Documentation</h2>
<a class="anchor" id="aa1375a71b34d6611aa2f8218fa3dc466"></a><!-- doxytag: member="FunctionDocument::ParentType" ref="aa1375a71b34d6611aa2f8218fa3dc466" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef <a class="el" href="classFunction.html">Function</a> <a class="el" href="classFunction.html">FunctionDocument::ParentType</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="FunctionDocument_8hpp_source.html#l00042">42</a> of file <a class="el" href="FunctionDocument_8hpp_source.html">FunctionDocument.hpp</a>.</p>

</div>
</div>
<hr/><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="a927aff775b2e4f5a27214f1902247b34"></a><!-- doxytag: member="FunctionDocument::FunctionDocument" ref="a927aff775b2e4f5a27214f1902247b34" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">FunctionDocument::FunctionDocument </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

</div>
</div>
<a class="anchor" id="a889a27f3abeeae1c7cb3577019bdc6cd"></a><!-- doxytag: member="FunctionDocument::~FunctionDocument" ref="a889a27f3abeeae1c7cb3577019bdc6cd" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual FunctionDocument::~FunctionDocument </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

</div>
</div>
<hr/><h2>Member Function Documentation</h2>
<a class="anchor" id="a5014c5dae2b7da044b16d75c68da91f4"></a><!-- doxytag: member="FunctionDocument::clone" ref="a5014c5dae2b7da044b16d75c68da91f4" args="(MemoryManager &amp;theManager) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="classFunctionDocument.html">FunctionDocument</a>* FunctionDocument::clone </td>
          <td>(</td>
          <td class="paramtype">MemoryManager &amp;&nbsp;</td>
          <td class="paramname"> <em>theManager</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Create a copy of the function object. </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>pointer to the new object </dd></dl>

<p>Implements <a class="el" href="classFunction.html#a2fadcb58a8f88f7cff630a30ce16203c">Function</a>.</p>

</div>
</div>
<a class="anchor" id="a6163cc8a980d342eeacb374143f89a27"></a><!-- doxytag: member="FunctionDocument::execute" ref="a6163cc8a980d342eeacb374143f89a27" args="(XPathExecutionContext &amp;executionContext, XalanNode *context, const XObjectPtr arg1, const XObjectPtr arg2, const Locator *locator) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="classXObjectPtr.html">XObjectPtr</a> FunctionDocument::execute </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classXPathExecutionContext.html">XPathExecutionContext</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>executionContext</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classXalanNode.html">XalanNode</a> *&nbsp;</td>
          <td class="paramname"> <em>context</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classXObjectPtr.html">XObjectPtr</a>&nbsp;</td>
          <td class="paramname"> <em>arg1</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classXObjectPtr.html">XObjectPtr</a>&nbsp;</td>
          <td class="paramname"> <em>arg2</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const Locator *&nbsp;</td>
          <td class="paramname"> <em>locator</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td> const<code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Execute an <a class="el" href="classXPath.html">XPath</a> function object. </p>
<p>The function must return a valid object. Called if function has two parameters.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>executionContext</em>&nbsp;</td><td>executing context </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>current context node </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>arg1</em>&nbsp;</td><td>pointer to <a class="el" href="classXObject.html" title="Class to hold XPath return types.">XObject</a> argument </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>arg2</em>&nbsp;</td><td>pointer to <a class="el" href="classXObject.html" title="Class to hold XPath return types.">XObject</a> argument </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>locator</em>&nbsp;</td><td>Locator instance for the <a class="el" href="classXPath.html">XPath</a> expression that contains the function call </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>pointer to the result <a class="el" href="classXObject.html" title="Class to hold XPath return types.">XObject</a> </dd></dl>

<p>Reimplemented from <a class="el" href="classFunction.html#a6f66ecef47d99b212cd1caa7c42fec4a">Function</a>.</p>

</div>
</div>
<a class="anchor" id="a8a58889625bf3c10479c769cb4a0a940"></a><!-- doxytag: member="FunctionDocument::execute" ref="a8a58889625bf3c10479c769cb4a0a940" args="(XPathExecutionContext &amp;executionContext, XalanNode *context, const XObjectPtr arg, const Locator *locator) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="classXObjectPtr.html">XObjectPtr</a> FunctionDocument::execute </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classXPathExecutionContext.html">XPathExecutionContext</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>executionContext</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classXalanNode.html">XalanNode</a> *&nbsp;</td>
          <td class="paramname"> <em>context</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classXObjectPtr.html">XObjectPtr</a>&nbsp;</td>
          <td class="paramname"> <em>arg</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const Locator *&nbsp;</td>
          <td class="paramname"> <em>locator</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td> const<code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Execute an <a class="el" href="classXPath.html">XPath</a> function object. </p>
<p>The function must return a valid object. Called if function has one parameter.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>executionContext</em>&nbsp;</td><td>executing context </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>current context node </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>arg</em>&nbsp;</td><td>pointer to <a class="el" href="classXObject.html" title="Class to hold XPath return types.">XObject</a> argument </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>locator</em>&nbsp;</td><td>Locator instance for the <a class="el" href="classXPath.html">XPath</a> expression that contains the function call </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>pointer to the result <a class="el" href="classXObject.html" title="Class to hold XPath return types.">XObject</a> </dd></dl>

<p>Reimplemented from <a class="el" href="classFunction.html#a8dcc603403fe9bc1f0b3671dd1660791">Function</a>.</p>

</div>
</div>
<a class="anchor" id="a5c123127529d896b61820e9820224adb"></a><!-- doxytag: member="FunctionDocument::getError" ref="a5c123127529d896b61820e9820224adb" args="(XalanDOMString &amp;theResult) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual const <a class="el" href="classXalanDOMString.html">XalanDOMString</a>&amp; FunctionDocument::getError </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classXalanDOMString.html">XalanDOMString</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>theBuffer</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [protected, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get the error message to report when the function is called with the wrong number of arguments. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>theBuffer</em>&nbsp;</td><td>The <a class="el" href="classXalanDOMString.html">XalanDOMString</a> for the message. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>The error message </dd></dl>

<p>Implements <a class="el" href="classFunction.html#a2a9ce8b0b9ec2d6581355346ec84ae30">Function</a>.</p>

</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="FunctionDocument_8hpp_source.html">FunctionDocument.hpp</a></li>
</ul>
</div>
<p align="center"><a href="graph_legend.html">Interpreting class diagrams</a></p>
<p><font color="#000000" face="arial,helvetica,sanserif" size="-1">
<i><a href="http://www.doxygen.org/">Doxygen</a> and 
<a href="http://www.graphviz.org/">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="80%">
 <tr>
  <td width="80%" valign="top">
	<p align="center"><b>Xalan-C++ XSLT Processor Version 1.11</b><br/>
	Copyright &copy; 1999-2012 The Apache Software Foundation.<br/>
	All Rights Reserved.</p>
  </td>
 </tr>
 <tr>
  <td width="100%">
	<p align="center"><img src="asf_logo_wide.gif" width="268" height="25" align="bottom" border="0" alt="Apache Logo">
  </td>
 </tr>
</table>
</body>
</html>
