<!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="#pub-static-methods">Static Public Member Functions</a> &#124;
<a href="#pro-methods">Protected Member Functions</a>  </div>
  <div class="headertitle">
<h1>FunctionLang Class Reference</h1>  </div>
</div>
<div class="contents">
<!-- doxytag: class="FunctionLang" --><!-- doxytag: inherits="Function" -->
<p><a class="el" href="classXPath.html">XPath</a> implementation of "lang" function.  
<a href="#_details">More...</a></p>

<p><code>#include &lt;<a class="el" href="FunctionLang_8hpp_source.html">FunctionLang.hpp</a>&gt;</code></p>

<p>Inherits <a class="el" href="classFunction.html">Function</a>.</p>
<div class="dynheader">
Collaboration diagram for FunctionLang:</div>
<div class="dyncontent">
<div class="center"><img src="classFunctionLang__coll__graph.png" border="0" usemap="#FunctionLang_coll__map" alt="Collaboration graph"/></div>
<map name="FunctionLang_coll__map" id="FunctionLang_coll__map">
<area shape="rect" id="node2" href="classFunction.html" title="Function" alt="" coords="5,101,80,131"/><area shape="rect" id="node4" href="classXalanDOMString.html" title="XalanDOMString" alt="" coords="104,101,232,131"/><area shape="rect" id="node6" href="classXalanVector.html" title="XalanVector\&lt; XalanDOMChar \&gt;" alt="" coords="55,5,281,35"/></map>
<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>

<p><a href="classFunctionLang-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="classFunctionLang.html#af50bb524b1bfde42a9d4d600c41c2a00">ParentType</a>
</ul>
<h2><a name="pub-methods"></a>
Public Member Functions</h2>
<ul>
<li><a class="el" href="classFunctionLang.html#ac39594700d688675ca60ed74c109d4f8">FunctionLang</a> ()
<li>virtual <a class="el" href="classFunctionLang.html#afc131552977355ec528c902dfe30a23b">~FunctionLang</a> ()
<li>virtual <a class="el" href="classXObjectPtr.html">XObjectPtr</a> <a class="el" href="classFunctionLang.html#a00cc52de73bea53e658dff46b08b204e">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 Locator *locator) const 
<dl class="el"><dd class="mdescRight">Execute an <a class="el" href="classXPath.html">XPath</a> function object.  <a href="#a00cc52de73bea53e658dff46b08b204e"></a><br/></dl><li>virtual <a class="el" href="classFunctionLang.html">FunctionLang</a> * <a class="el" href="classFunctionLang.html#a7ec45b8c551c2a60311d442ab0981d9c">clone</a> (MemoryManager &amp;theManager) const 
<dl class="el"><dd class="mdescRight">Create a copy of the function object.  <a href="#a7ec45b8c551c2a60311d442ab0981d9c"></a><br/></dl></ul>
<h2><a name="pub-static-methods"></a>
Static Public Member Functions</h2>
<ul>
<li>static void <a class="el" href="classFunctionLang.html#afc891beb8ee40c486fe8c52995067336">initialize</a> (MemoryManager &amp;theManager)
<dl class="el"><dd class="mdescRight">Perform static initialization.  <a href="#afc891beb8ee40c486fe8c52995067336"></a><br/></dl><li>static void <a class="el" href="classFunctionLang.html#a540c0adf1daa4e9c621f9d3503c70a7f">terminate</a> ()
<dl class="el"><dd class="mdescRight">Perform static shut down.  <a href="#a540c0adf1daa4e9c621f9d3503c70a7f"></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="classFunctionLang.html#a19f3c011902313325096f31b2c7fcfe0">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="#a19f3c011902313325096f31b2c7fcfe0"></a><br/></dl></ul>
<hr/><a name="_details"></a><h2>Detailed Description</h2>
<p><a class="el" href="classXPath.html">XPath</a> implementation of "lang" function. </p>

<p>Definition at line <a class="el" href="FunctionLang_8hpp_source.html#l00040">40</a> of file <a class="el" href="FunctionLang_8hpp_source.html">FunctionLang.hpp</a>.</p>
<hr/><h2>Member Typedef Documentation</h2>
<a class="anchor" id="af50bb524b1bfde42a9d4d600c41c2a00"></a><!-- doxytag: member="FunctionLang::ParentType" ref="af50bb524b1bfde42a9d4d600c41c2a00" 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">FunctionLang::ParentType</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="FunctionLang_8hpp_source.html#l00044">44</a> of file <a class="el" href="FunctionLang_8hpp_source.html">FunctionLang.hpp</a>.</p>

</div>
</div>
<hr/><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="ac39594700d688675ca60ed74c109d4f8"></a><!-- doxytag: member="FunctionLang::FunctionLang" ref="ac39594700d688675ca60ed74c109d4f8" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">FunctionLang::FunctionLang </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="afc131552977355ec528c902dfe30a23b"></a><!-- doxytag: member="FunctionLang::~FunctionLang" ref="afc131552977355ec528c902dfe30a23b" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual FunctionLang::~FunctionLang </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="a7ec45b8c551c2a60311d442ab0981d9c"></a><!-- doxytag: member="FunctionLang::clone" ref="a7ec45b8c551c2a60311d442ab0981d9c" args="(MemoryManager &amp;theManager) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="classFunctionLang.html">FunctionLang</a>* FunctionLang::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="a00cc52de73bea53e658dff46b08b204e"></a><!-- doxytag: member="FunctionLang::execute" ref="a00cc52de73bea53e658dff46b08b204e" args="(XPathExecutionContext &amp;executionContext, XalanNode *context, const XObjectPtr arg1, 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> FunctionLang::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="a19f3c011902313325096f31b2c7fcfe0"></a><!-- doxytag: member="FunctionLang::getError" ref="a19f3c011902313325096f31b2c7fcfe0" 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; FunctionLang::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>
<a class="anchor" id="afc891beb8ee40c486fe8c52995067336"></a><!-- doxytag: member="FunctionLang::initialize" ref="afc891beb8ee40c486fe8c52995067336" args="(MemoryManager &amp;theManager)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static void FunctionLang::initialize </td>
          <td>(</td>
          <td class="paramtype">MemoryManager &amp;&nbsp;</td>
          <td class="paramname"> <em>theManager</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Perform static initialization. </p>
<p>See class <a class="el" href="classXPathInit.html">XPathInit</a>. </p>

</div>
</div>
<a class="anchor" id="a540c0adf1daa4e9c621f9d3503c70a7f"></a><!-- doxytag: member="FunctionLang::terminate" ref="a540c0adf1daa4e9c621f9d3503c70a7f" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static void FunctionLang::terminate </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Perform static shut down. </p>
<p>See class <a class="el" href="classXPathInit.html">XPathInit</a>. </p>

</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="FunctionLang_8hpp_source.html">FunctionLang.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>
