<!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="headertitle">
<h1>FunctionElementAvailable Member List</h1>  </div>
</div>
<div class="contents">
This is the complete list of members for <a class="el" href="classFunctionElementAvailable.html">FunctionElementAvailable</a>, including all inherited members.<table>
  <tr class="memlist"><td><a class="el" href="classFunctionElementAvailable.html#af84257c17b9f95880e928a5c864397a3">clone</a>(MemoryManager &amp;theManager) const </td><td><a class="el" href="classFunctionElementAvailable.html">FunctionElementAvailable</a></td><td><code> [virtual]</code></td></tr>
  <tr class="memlist"><td><a class="el" href="classFunctionElementAvailable.html#af37aeb6c98164867d591017154ad7430">execute</a>(XPathExecutionContext &amp;executionContext, XalanNode *context, const XObjectPtr arg, const Locator *locator) const </td><td><a class="el" href="classFunctionElementAvailable.html">FunctionElementAvailable</a></td><td><code> [virtual]</code></td></tr>
  <tr class="memlist"><td><a class="el" href="classFunction.html#aa4b335cec171fe9b244240d7cc23cc9a">Function::execute</a>(XPathExecutionContext &amp;executionContext, XalanNode *context, const XObjectArgVectorType &amp;args, const Locator *locator) const </td><td><a class="el" href="classFunction.html">Function</a></td><td><code> [virtual]</code></td></tr>
  <tr class="memlist"><td><a class="el" href="classFunction.html#a86b2e6c4db9df56d704f8573f3d3114e">Function::execute</a>(XPathExecutionContext &amp;executionContext, XalanNode *context, const Locator *locator) const </td><td><a class="el" href="classFunction.html">Function</a></td><td><code> [virtual]</code></td></tr>
  <tr class="memlist"><td><a class="el" href="classFunction.html#a6f66ecef47d99b212cd1caa7c42fec4a">Function::execute</a>(XPathExecutionContext &amp;executionContext, XalanNode *context, const XObjectPtr arg1, const XObjectPtr arg2, const Locator *locator) const </td><td><a class="el" href="classFunction.html">Function</a></td><td><code> [virtual]</code></td></tr>
  <tr class="memlist"><td><a class="el" href="classFunction.html#adb321088aef6b80affffe9682d95b338">Function::execute</a>(XPathExecutionContext &amp;executionContext, XalanNode *context, const XObjectPtr arg1, const XObjectPtr arg2, const XObjectPtr arg3, const Locator *locator) const </td><td><a class="el" href="classFunction.html">Function</a></td><td><code> [virtual]</code></td></tr>
  <tr class="memlist"><td><a class="el" href="classFunction.html#ae206568fd4fd4c885e3ccff76345c4e6">Function</a>()</td><td><a class="el" href="classFunction.html">Function</a></td><td><code> [explicit]</code></td></tr>
  <tr class="memlist"><td><a class="el" href="classFunctionElementAvailable.html#a6d321500a746b73f511ec6bdcbbfd038">FunctionElementAvailable</a>()</td><td><a class="el" href="classFunctionElementAvailable.html">FunctionElementAvailable</a></td><td></td></tr>
  <tr class="memlist"><td><a class="el" href="classFunction.html#af3b456a19b64929620aaa6711c576dda">generalError</a>(XPathExecutionContext &amp;executionContext, const XalanNode *context, const Locator *locator) const </td><td><a class="el" href="classFunction.html">Function</a></td><td><code> [protected]</code></td></tr>
  <tr class="memlist"><td><a class="el" href="classFunction.html#a576fdc6b6e32876fd9f5d32675e8386e">GetCachedNodeList</a> typedef</td><td><a class="el" href="classFunction.html">Function</a></td><td></td></tr>
  <tr class="memlist"><td><a class="el" href="classFunction.html#a6dd53b7044ede581f17209bc0fa39be3">GetCachedString</a> typedef</td><td><a class="el" href="classFunction.html">Function</a></td><td></td></tr>
  <tr class="memlist"><td><a class="el" href="classFunction.html#ab892cd729e84214b890ecd373a67648e">LocatorType</a> typedef</td><td><a class="el" href="classFunction.html">Function</a></td><td></td></tr>
  <tr class="memlist"><td><a class="el" href="classFunctionElementAvailable.html#a69a10ecc9c61420fb71b112e36f7fb7d">ParentType</a> typedef</td><td><a class="el" href="classFunctionElementAvailable.html">FunctionElementAvailable</a></td><td></td></tr>
  <tr class="memlist"><td><a class="el" href="classFunction.html#a49b61727a73531c5dccb3267a9c148eb">XObjectArgVectorType</a> typedef</td><td><a class="el" href="classFunction.html">Function</a></td><td></td></tr>
  <tr class="memlist"><td><a class="el" href="classFunction.html#a8697b2e490a4314a7ccbb17aea8ce537">~Function</a>()</td><td><a class="el" href="classFunction.html">Function</a></td><td><code> [virtual]</code></td></tr>
  <tr class="memlist"><td><a class="el" href="classFunctionElementAvailable.html#a22829a90fb6081d79bb63deb29d09c75">~FunctionElementAvailable</a>()</td><td><a class="el" href="classFunctionElementAvailable.html">FunctionElementAvailable</a></td><td><code> [virtual]</code></td></tr>
</table></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>
