<!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><a href="annotated.html"><span>Classes</span></a></li>
      <li class="current"><a href="files.html"><span>Files</span></a></li>
    </ul>
  </div>
  <div class="tabs2">
    <ul class="tablist">
      <li><a href="files.html"><span>File&nbsp;List</span></a></li>
      <li><a href="globals.html"><span>File&nbsp;Members</span></a></li>
    </ul>
  </div>
<div class="header">
  <div class="headertitle">
<h1>XPath.hpp</h1>  </div>
</div>
<div class="contents">
<a href="XPath_8hpp.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/*</span>
<a name="l00002"></a>00002 <span class="comment"> * Licensed to the Apache Software Foundation (ASF) under one</span>
<a name="l00003"></a>00003 <span class="comment"> * or more contributor license agreements. See the NOTICE file</span>
<a name="l00004"></a>00004 <span class="comment"> * distributed with this work for additional information</span>
<a name="l00005"></a>00005 <span class="comment"> * regarding copyright ownership. The ASF licenses this file</span>
<a name="l00006"></a>00006 <span class="comment"> * to you under the Apache License, Version 2.0 (the  &quot;License&quot;);</span>
<a name="l00007"></a>00007 <span class="comment"> * you may not use this file except in compliance with the License.</span>
<a name="l00008"></a>00008 <span class="comment"> * You may obtain a copy of the License at</span>
<a name="l00009"></a>00009 <span class="comment"> *</span>
<a name="l00010"></a>00010 <span class="comment"> *     http://www.apache.org/licenses/LICENSE-2.0</span>
<a name="l00011"></a>00011 <span class="comment"> *</span>
<a name="l00012"></a>00012 <span class="comment"> * Unless required by applicable law or agreed to in writing, software</span>
<a name="l00013"></a>00013 <span class="comment"> * distributed under the License is distributed on an &quot;AS IS&quot; BASIS,</span>
<a name="l00014"></a>00014 <span class="comment"> * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.</span>
<a name="l00015"></a>00015 <span class="comment"> * See the License for the specific language governing permissions and</span>
<a name="l00016"></a>00016 <span class="comment"> * limitations under the License.</span>
<a name="l00017"></a>00017 <span class="comment"> */</span>
<a name="l00018"></a>00018 <span class="preprocessor">#if !defined(XPATH_HEADER_GUARD_1357924680)</span>
<a name="l00019"></a>00019 <span class="preprocessor"></span><span class="preprocessor">#define XPATH_HEADER_GUARD_1357924680</span>
<a name="l00020"></a>00020 <span class="preprocessor"></span>
<a name="l00021"></a>00021 
<a name="l00022"></a>00022 
<a name="l00023"></a>00023 <span class="comment">// Base header file.  Must be first.</span>
<a name="l00024"></a>00024 <span class="preprocessor">#include &lt;<a class="code" href="XPathDefinitions_8hpp.html">xalanc/XPath/XPathDefinitions.hpp</a>&gt;</span>
<a name="l00025"></a>00025 
<a name="l00026"></a>00026 
<a name="l00027"></a>00027 
<a name="l00028"></a>00028 <span class="preprocessor">#include &lt;<a class="code" href="XalanDOMString_8hpp.html">xalanc/XalanDOM/XalanDOMString.hpp</a>&gt;</span>
<a name="l00029"></a>00029 
<a name="l00030"></a>00030 
<a name="l00031"></a>00031 
<a name="l00032"></a>00032 <span class="preprocessor">#include &lt;<a class="code" href="DoubleSupport_8hpp.html">xalanc/PlatformSupport/DoubleSupport.hpp</a>&gt;</span>
<a name="l00033"></a>00033 
<a name="l00034"></a>00034 
<a name="l00035"></a>00035 
<a name="l00036"></a>00036 <span class="comment">// Base class header files...</span>
<a name="l00037"></a>00037 <span class="preprocessor">#include &lt;<a class="code" href="XPathExecutionContext_8hpp.html">xalanc/XPath/XPathExecutionContext.hpp</a>&gt;</span>
<a name="l00038"></a>00038 
<a name="l00039"></a>00039 
<a name="l00040"></a>00040 
<a name="l00041"></a>00041 <span class="preprocessor">#include &lt;<a class="code" href="MutableNodeRefList_8hpp.html">xalanc/XPath/MutableNodeRefList.hpp</a>&gt;</span>
<a name="l00042"></a>00042 <span class="preprocessor">#include &lt;<a class="code" href="XPathExpression_8hpp.html">xalanc/XPath/XPathExpression.hpp</a>&gt;</span>
<a name="l00043"></a>00043 <span class="preprocessor">#include &lt;<a class="code" href="Function_8hpp.html">xalanc/XPath/Function.hpp</a>&gt;</span>
<a name="l00044"></a>00044 <span class="preprocessor">#include &lt;<a class="code" href="XPathFunctionTable_8hpp.html">xalanc/XPath/XPathFunctionTable.hpp</a>&gt;</span>
<a name="l00045"></a>00045 
<a name="l00046"></a>00046 
<a name="l00047"></a>00047 
<a name="l00048"></a>00048 XALAN_DECLARE_XERCES_CLASS(Locator)
<a name="l00049"></a>00049 
<a name="l00050"></a>00050 
<a name="l00051"></a>00051 
<a name="l00052"></a>00052 XALAN_CPP_NAMESPACE_BEGIN
<a name="l00053"></a>00053 
<a name="l00054"></a>00054 
<a name="l00055"></a>00055 
<a name="l00056"></a>00056 class <a class="code" href="classPrefixResolver.html" title="This class defines an interface for classes that resolve namespace prefixes to their URIs...">PrefixResolver</a>;
<a name="l00057"></a>00057 class <a class="code" href="classXObject.html" title="Class to hold XPath return types.">XObject</a>;
<a name="l00058"></a>00058 class <a class="code" href="classXalanElement.html">XalanElement</a>;
<a name="l00059"></a>00059 class <a class="code" href="classXalanNode.html">XalanNode</a>;
<a name="l00060"></a>00060 class <a class="code" href="classXPathConstructionContext.html">XPathConstructionContext</a>;
<a name="l00061"></a>00061 
<a name="l00062"></a>00062 
<a name="l00063"></a>00063 
<a name="l00064"></a><a class="code" href="classXPath.html">00064</a> class <a class="code" href="XPathDefinitions_8hpp.html#aa9c15f77ef5ab2dc518733b0fd07c141">XALAN_XPATH_EXPORT</a> <a class="code" href="classXPath.html">XPath</a>
<a name="l00065"></a>00065 {
<a name="l00066"></a>00066 <span class="keyword">public</span>:
<a name="l00067"></a>00067 
<a name="l00068"></a><a class="code" href="classXPath.html#a7cfc31a5c84dac83c7c5dd490bd6583f">00068</a>     <span class="keyword">typedef</span> XERCES_CPP_NAMESPACE_QUALIFIER Locator  LocatorType;
<a name="l00069"></a>00069 
<a name="l00070"></a><a class="code" href="classXPath.html#a96cce9ea3d1c42289c561a5bc51b2609">00070</a>     <span class="keyword">typedef</span> <a class="code" href="classXPathExpression.html#a9439bf8a741f6cdff4a14b6b8882b78d">XPathExpression::OpCodeMapPositionType</a>              OpCodeMapPositionType;
<a name="l00071"></a><a class="code" href="classXPath.html#a4fcc2efaff778b5a121bdd73a8121a02">00071</a>     <span class="keyword">typedef</span> <a class="code" href="classXPathExpression.html#a451cedec38214771273aeb0597d9c68d">XPathExpression::OpCodeMapValueType</a>                 OpCodeMapValueType;
<a name="l00072"></a><a class="code" href="classXPath.html#a95b3ca769aeae00e32e84ea1f3ba8571">00072</a>     <span class="keyword">typedef</span> <a class="code" href="classXPathExpression.html#a485585abcb5621a6d365345f15284cd5">XPathExpression::TokenQueuePositionType</a>             TokenQueuePositionType;
<a name="l00073"></a><a class="code" href="classXPath.html#a11ecdfe7509981ce80063124da3369b5">00073</a>     <span class="keyword">typedef</span> <a class="code" href="classXPathExecutionContext_1_1GetCachedString.html">XPathExecutionContext::GetCachedString</a>              <a class="code" href="classXPathExecutionContext_1_1GetCachedString.html">GetCachedString</a>;
<a name="l00074"></a><a class="code" href="classXPath.html#a252605a5db06f9397aab3d324eb8777a">00074</a>     <span class="keyword">typedef</span> <a class="code" href="classXPathExecutionContext_1_1PrefixResolverSetAndRestore.html">XPathExecutionContext::PrefixResolverSetAndRestore</a>  <a class="code" href="classXPathExecutionContext_1_1PrefixResolverSetAndRestore.html">PrefixResolverSetAndRestore</a>;
<a name="l00075"></a><a class="code" href="classXPath.html#a77471559b21446ca0f1575de5b387f3e">00075</a>     <span class="keyword">typedef</span> <a class="code" href="classXPathExecutionContext_1_1CurrentNodePushAndPop.html">XPathExecutionContext::CurrentNodePushAndPop</a>        <a class="code" href="classXPathExecutionContext_1_1CurrentNodePushAndPop.html">CurrentNodePushAndPop</a>;
<a name="l00076"></a>00076 
<a name="l00077"></a>00077 
<a name="l00078"></a><a class="code" href="classXPath.html#aa771615e696b232990b17db6a231e4f0">00078</a>     <span class="keyword">static</span> <span class="keyword">const</span> XalanDOMChar   PSEUDONAME_ANY[];
<a name="l00079"></a><a class="code" href="classXPath.html#ae08074226834298e431bb83adb84985a">00079</a>     <span class="keyword">static</span> <span class="keyword">const</span> XalanDOMChar   PSEUDONAME_ROOT[];
<a name="l00080"></a><a class="code" href="classXPath.html#a54091b8f2d9e5457cca899ef17bc5f37">00080</a>     <span class="keyword">static</span> <span class="keyword">const</span> XalanDOMChar   PSEUDONAME_TEXT[];
<a name="l00081"></a><a class="code" href="classXPath.html#a5bdc8041a717de2c5c878909cffc3be2">00081</a>     <span class="keyword">static</span> <span class="keyword">const</span> XalanDOMChar   PSEUDONAME_COMMENT[];
<a name="l00082"></a><a class="code" href="classXPath.html#ab5a773311966cb3617eb56d9722d9abd">00082</a>     <span class="keyword">static</span> <span class="keyword">const</span> XalanDOMChar   PSEUDONAME_PI[];
<a name="l00083"></a><a class="code" href="classXPath.html#ad45e6009423b2e7a2894474a5927cd14">00083</a>     <span class="keyword">static</span> <span class="keyword">const</span> XalanDOMChar   PSEUDONAME_OTHER[];
<a name="l00084"></a><a class="code" href="classXPath.html#ad195c0664754bdc41e25a5f66beb9b3c">00084</a>     <span class="keyword">static</span> <span class="keyword">const</span> XalanDOMChar   PSEUDONAME_NODE[];
<a name="l00085"></a>00085 
<a name="l00086"></a><a class="code" href="classXPath.html#a4b8fda385955090f1e265372de4fce7f">00086</a>     <span class="keyword">enum</span> <a class="code" href="classXPath.html#a4b8fda385955090f1e265372de4fce7f">eMatchScore</a>
<a name="l00087"></a>00087     {
<a name="l00088"></a><a class="code" href="classXPath.html#a4b8fda385955090f1e265372de4fce7fa0b67d97d61d970776d36575b2a2607f4">00088</a>         eMatchScoreNone,
<a name="l00089"></a><a class="code" href="classXPath.html#a4b8fda385955090f1e265372de4fce7fa00dda435e1227571ecc728645d177b91">00089</a>         eMatchScoreNodeTest,
<a name="l00090"></a><a class="code" href="classXPath.html#a4b8fda385955090f1e265372de4fce7fab1da5e99e21dc287a10b985adca4bad7">00090</a>         eMatchScoreNSWild,
<a name="l00091"></a><a class="code" href="classXPath.html#a4b8fda385955090f1e265372de4fce7fa89b1c53006caa30e8acfd0060d2ec8bf">00091</a>         eMatchScoreQName,
<a name="l00092"></a><a class="code" href="classXPath.html#a4b8fda385955090f1e265372de4fce7fa39b918f229295a3faa4ea00a2fea9bab">00092</a>         eMatchScoreOther
<a name="l00093"></a>00093     };
<a name="l00094"></a>00094 
<a name="l00095"></a><a class="code" href="classXPath_1_1TargetData.html">00095</a>     <span class="keyword">class </span><a class="code" href="classXPath_1_1TargetData.html">TargetData</a>
<a name="l00096"></a>00096     {
<a name="l00097"></a>00097     <span class="keyword">public</span>:
<a name="l00098"></a>00098 
<a name="l00099"></a><a class="code" href="classXPath_1_1TargetData.html#a72925a19809649fe2c1201e0d28c35c2">00099</a>         <span class="keyword">enum</span> <a class="code" href="classXPath_1_1TargetData.html#a72925a19809649fe2c1201e0d28c35c2">eTargetType</a> { eAttribute, eElement, eAny, eOther };
<a name="l00100"></a>00100 
<a name="l00101"></a><a class="code" href="classXPath_1_1TargetData.html#afca865d0b029f88cab40c830e85c6f9e">00101</a>         <a class="code" href="classXPath_1_1TargetData.html">TargetData</a>() :
<a name="l00102"></a>00102             m_string(0),
<a name="l00103"></a>00103             m_priority(eMatchScoreNone),
<a name="l00104"></a>00104             m_targetType(eOther)
<a name="l00105"></a>00105         {
<a name="l00106"></a>00106         }
<a name="l00107"></a>00107 
<a name="l00108"></a><a class="code" href="classXPath_1_1TargetData.html#a67567c0e14b35290bfe8b3fee9fa9d4b">00108</a>         <a class="code" href="classXPath_1_1TargetData.html">TargetData</a>(
<a name="l00109"></a>00109                 <span class="keyword">const</span> XalanDOMChar*     theString,
<a name="l00110"></a>00110                 <a class="code" href="classXPath.html#a4b8fda385955090f1e265372de4fce7f">eMatchScore</a>             thePriority,
<a name="l00111"></a>00111                 <a class="code" href="classXPath_1_1TargetData.html#a72925a19809649fe2c1201e0d28c35c2">eTargetType</a>             theTargetType) :
<a name="l00112"></a>00112             m_string(theString),
<a name="l00113"></a>00113             m_priority(thePriority),
<a name="l00114"></a>00114             m_targetType(theTargetType)
<a name="l00115"></a>00115         {
<a name="l00116"></a>00116         }
<a name="l00117"></a>00117 
<a name="l00118"></a>00118         <span class="keyword">const</span> XalanDOMChar*
<a name="l00119"></a><a class="code" href="classXPath_1_1TargetData.html#a125fe54dd2c91589fce7cfbfda7395bb">00119</a>         getString()<span class="keyword"> const</span>
<a name="l00120"></a>00120 <span class="keyword">        </span>{
<a name="l00121"></a>00121             <span class="keywordflow">return</span> m_string;
<a name="l00122"></a>00122         }
<a name="l00123"></a>00123 
<a name="l00124"></a>00124         <a class="code" href="classXPath.html#a4b8fda385955090f1e265372de4fce7f">eMatchScore</a>
<a name="l00125"></a><a class="code" href="classXPath_1_1TargetData.html#a7e5ffdc17eae5e8896c7b3bbf100782c">00125</a>         getDefaultPriority()<span class="keyword"> const</span>
<a name="l00126"></a>00126 <span class="keyword">        </span>{
<a name="l00127"></a>00127             <span class="keywordflow">return</span> m_priority;
<a name="l00128"></a>00128         }
<a name="l00129"></a>00129 
<a name="l00130"></a>00130         eTargetType
<a name="l00131"></a><a class="code" href="classXPath_1_1TargetData.html#aad272d83975ec8c240af4c33b14253e3">00131</a>         getTargetType()<span class="keyword"> const</span>
<a name="l00132"></a>00132 <span class="keyword">        </span>{
<a name="l00133"></a>00133             <span class="keywordflow">return</span> m_targetType;
<a name="l00134"></a>00134         }
<a name="l00135"></a>00135 
<a name="l00136"></a>00136     <span class="keyword">private</span>:
<a name="l00137"></a>00137 
<a name="l00138"></a>00138         <span class="keyword">const</span> XalanDOMChar*     m_string;
<a name="l00139"></a>00139 
<a name="l00140"></a>00140         <a class="code" href="classXPath.html#a4b8fda385955090f1e265372de4fce7f">eMatchScore</a>             m_priority;
<a name="l00141"></a>00141 
<a name="l00142"></a>00142         eTargetType             m_targetType;
<a name="l00143"></a>00143     };
<a name="l00144"></a>00144 
<a name="l00145"></a><a class="code" href="classXPath.html#a3dc88eeac719e4ac8fc057b28e57fc37">00145</a>     <span class="keyword">typedef</span> <a class="code" href="classXalanVector.html">XalanVector&lt;TargetData&gt;</a>     <a class="code" href="classXalanVector.html">TargetDataVectorType</a>;
<a name="l00146"></a>00146 <span class="comment"></span>
<a name="l00147"></a>00147 <span class="comment">    /**</span>
<a name="l00148"></a>00148 <span class="comment">     * Perform static initialization.  See class XPathInit.</span>
<a name="l00149"></a>00149 <span class="comment">     */</span>
<a name="l00150"></a>00150     <span class="keyword">static</span> <span class="keywordtype">void</span>
<a name="l00151"></a>00151     initialize(MemoryManager&amp;   theManager);
<a name="l00152"></a>00152 <span class="comment"></span>
<a name="l00153"></a>00153 <span class="comment">    /**</span>
<a name="l00154"></a>00154 <span class="comment">     * Perform static shut down.  See class XPathInit.</span>
<a name="l00155"></a>00155 <span class="comment">     */</span>
<a name="l00156"></a>00156     <span class="keyword">static</span> <span class="keywordtype">void</span>
<a name="l00157"></a>00157     <a class="code" href="XalanDOMString_8hpp.html#a392a1168a4c055ef750608dde287a874">terminate</a>();
<a name="l00158"></a>00158 <span class="comment"></span>
<a name="l00159"></a>00159 <span class="comment">    /**</span>
<a name="l00160"></a>00160 <span class="comment">     * Construct an XPath.</span>
<a name="l00161"></a>00161 <span class="comment">     *</span>
<a name="l00162"></a>00162 <span class="comment">     * @param theLocator The applicable Locator, if any.</span>
<a name="l00163"></a>00163 <span class="comment">     */</span>
<a name="l00164"></a>00164     <span class="keyword">explicit</span>
<a name="l00165"></a>00165     XPath(
<a name="l00166"></a>00166             MemoryManager&amp;  theManager,
<a name="l00167"></a>00167             <span class="keyword">const</span> Locator*  theLocator = 0);
<a name="l00168"></a>00168 
<a name="l00169"></a>00169     <span class="keyword">static</span> XPath*
<a name="l00170"></a>00170     create(
<a name="l00171"></a>00171             MemoryManager&amp;  theManager,
<a name="l00172"></a>00172             <span class="keyword">const</span> Locator*  theLocator = 0);
<a name="l00173"></a>00173 
<a name="l00174"></a>00174     MemoryManager&amp;
<a name="l00175"></a><a class="code" href="classXPath.html#ac07377a7d749e3b54f6db9f071856e55">00175</a>     getMemoryManager()
<a name="l00176"></a>00176     {
<a name="l00177"></a>00177         <span class="keywordflow">return</span> m_expression.getMemoryManager();
<a name="l00178"></a>00178     }
<a name="l00179"></a>00179 
<a name="l00180"></a>00180     ~XPath();
<a name="l00181"></a>00181 <span class="comment"></span>
<a name="l00182"></a>00182 <span class="comment">    /**</span>
<a name="l00183"></a>00183 <span class="comment">     * Shrink internal tables.</span>
<a name="l00184"></a>00184 <span class="comment">     */</span>
<a name="l00185"></a>00185     <span class="keywordtype">void</span>
<a name="l00186"></a><a class="code" href="classXPath.html#ae84168e49ecd33164708a137ae4d0d0f">00186</a>     shrink()
<a name="l00187"></a>00187     {
<a name="l00188"></a>00188         m_expression.shrink();
<a name="l00189"></a>00189     }
<a name="l00190"></a>00190 <span class="comment"></span>
<a name="l00191"></a>00191 <span class="comment">    /**</span>
<a name="l00192"></a>00192 <span class="comment">     * Execute the XPath from the provided context.</span>
<a name="l00193"></a>00193 <span class="comment">     *</span>
<a name="l00194"></a>00194 <span class="comment">     * @param context          current source tree context node, which must not be 0</span>
<a name="l00195"></a>00195 <span class="comment">     * @param prefixResolver   prefix resolver to use</span>
<a name="l00196"></a>00196 <span class="comment">     * @param executionContext current execution context</span>
<a name="l00197"></a>00197 <span class="comment">     * @return smart-pointer to result XObject</span>
<a name="l00198"></a>00198 <span class="comment">     */</span>
<a name="l00199"></a>00199     <span class="keyword">const</span> <a class="code" href="classXObjectPtr.html" title="Class to hold XObjectPtr return types.">XObjectPtr</a>
<a name="l00200"></a>00200     execute(
<a name="l00201"></a>00201             XalanNode*              context,
<a name="l00202"></a>00202             <span class="keyword">const</span> PrefixResolver&amp;   prefixResolver,
<a name="l00203"></a>00203             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext) <span class="keyword">const</span>;
<a name="l00204"></a>00204 <span class="comment"></span>
<a name="l00205"></a>00205 <span class="comment">    /**</span>
<a name="l00206"></a>00206 <span class="comment">     * Execute the XPath from the provided context.</span>
<a name="l00207"></a>00207 <span class="comment">     *</span>
<a name="l00208"></a>00208 <span class="comment">     * @param context          current source tree context node, which must not be 0</span>
<a name="l00209"></a>00209 <span class="comment">     * @param prefixResolver   prefix resolver to use</span>
<a name="l00210"></a>00210 <span class="comment">     * @param executionContext current execution context</span>
<a name="l00211"></a>00211 <span class="comment">     * @param result           the boolean result</span>
<a name="l00212"></a>00212 <span class="comment">     */</span>
<a name="l00213"></a>00213     <span class="keywordtype">void</span>
<a name="l00214"></a>00214     execute(
<a name="l00215"></a>00215             XalanNode*              context,
<a name="l00216"></a>00216             <span class="keyword">const</span> PrefixResolver&amp;   prefixResolver,
<a name="l00217"></a>00217             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext,
<a name="l00218"></a>00218             <span class="keywordtype">bool</span>&amp;                   result) <span class="keyword">const</span>;
<a name="l00219"></a>00219 <span class="comment"></span>
<a name="l00220"></a>00220 <span class="comment">    /**</span>
<a name="l00221"></a>00221 <span class="comment">     * Execute the XPath from the provided context.</span>
<a name="l00222"></a>00222 <span class="comment">     *</span>
<a name="l00223"></a>00223 <span class="comment">     * @param context          current source tree context node, which must not be 0</span>
<a name="l00224"></a>00224 <span class="comment">     * @param prefixResolver   prefix resolver to use</span>
<a name="l00225"></a>00225 <span class="comment">     * @param executionContext current execution context</span>
<a name="l00226"></a>00226 <span class="comment">     * @param result           the numeric result</span>
<a name="l00227"></a>00227 <span class="comment">     */</span>
<a name="l00228"></a>00228     <span class="keywordtype">void</span>
<a name="l00229"></a>00229     execute(
<a name="l00230"></a>00230             XalanNode*              context,
<a name="l00231"></a>00231             <span class="keyword">const</span> PrefixResolver&amp;   prefixResolver,
<a name="l00232"></a>00232             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext,
<a name="l00233"></a>00233             <span class="keywordtype">double</span>&amp;                 result) <span class="keyword">const</span>;
<a name="l00234"></a>00234 <span class="comment"></span>
<a name="l00235"></a>00235 <span class="comment">    /**</span>
<a name="l00236"></a>00236 <span class="comment">     * Execute the XPath from the provided context.  The</span>
<a name="l00237"></a>00237 <span class="comment">     * result is appended to the supplied string.</span>
<a name="l00238"></a>00238 <span class="comment">     *</span>
<a name="l00239"></a>00239 <span class="comment">     * @param context          current source tree context node, which must not be 0</span>
<a name="l00240"></a>00240 <span class="comment">     * @param prefixResolver   prefix resolver to use</span>
<a name="l00241"></a>00241 <span class="comment">     * @param executionContext current execution context</span>
<a name="l00242"></a>00242 <span class="comment">     * @param result           the string result</span>
<a name="l00243"></a>00243 <span class="comment">     */</span>
<a name="l00244"></a>00244     <span class="keywordtype">void</span>
<a name="l00245"></a>00245     execute(
<a name="l00246"></a>00246             XalanNode*              context,
<a name="l00247"></a>00247             <span class="keyword">const</span> PrefixResolver&amp;   prefixResolver,
<a name="l00248"></a>00248             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext,
<a name="l00249"></a>00249             <a class="code" href="classXalanDOMString.html">XalanDOMString</a>&amp;         result) <span class="keyword">const</span>;
<a name="l00250"></a>00250 
<a name="l00251"></a><a class="code" href="classXPath.html#a962fd968701a927d8d86c0f6bfcc1c84">00251</a>     <span class="keyword">typedef</span> void (<a class="code" href="classFormatterListener.html" title="A SAX-based formatter interface for the XSL processor.">FormatterListener</a>::*MemberFunctionPtr)(<span class="keyword">const</span> XMLCh* <span class="keyword">const</span>, <span class="keyword">const</span> FormatterListener::size_type);
<a name="l00252"></a>00252 <span class="comment"></span>
<a name="l00253"></a>00253 <span class="comment">    /**</span>
<a name="l00254"></a>00254 <span class="comment">     * Execute the XPath from the provided context.</span>
<a name="l00255"></a>00255 <span class="comment">     *</span>
<a name="l00256"></a>00256 <span class="comment">     * @param context          current source tree context node, which must not be 0</span>
<a name="l00257"></a>00257 <span class="comment">     * @param prefixResolver   prefix resolver to use</span>
<a name="l00258"></a>00258 <span class="comment">     * @param executionContext current execution context</span>
<a name="l00259"></a>00259 <span class="comment">     * @param formatterListener the FormatterListener instance to receive the result</span>
<a name="l00260"></a>00260 <span class="comment">     * @param function A pointer to the member function of FormatterListener to call</span>
<a name="l00261"></a>00261 <span class="comment">     */</span>
<a name="l00262"></a>00262     <span class="keywordtype">void</span>
<a name="l00263"></a>00263     execute(
<a name="l00264"></a>00264             XalanNode*              context,
<a name="l00265"></a>00265             <span class="keyword">const</span> PrefixResolver&amp;   prefixResolver,
<a name="l00266"></a>00266             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext,
<a name="l00267"></a>00267             <a class="code" href="classFormatterListener.html" title="A SAX-based formatter interface for the XSL processor.">FormatterListener</a>&amp;      formatterListener,
<a name="l00268"></a>00268             MemberFunctionPtr       function) <span class="keyword">const</span>;
<a name="l00269"></a>00269 <span class="comment"></span>
<a name="l00270"></a>00270 <span class="comment">    /**</span>
<a name="l00271"></a>00271 <span class="comment">     * Execute the XPath from the provided context.  Normally,</span>
<a name="l00272"></a>00272 <span class="comment">     * the expression will be evaluated and the result placed</span>
<a name="l00273"></a>00273 <span class="comment">     * in the parameter result.  However, some cases (such as</span>
<a name="l00274"></a>00274 <span class="comment">     * the evalution of a variable) could result in the copying</span>
<a name="l00275"></a>00275 <span class="comment">     * of a node-set, which is extremely expensive.  In that</span>
<a name="l00276"></a>00276 <span class="comment">     * case, the return value will contain the result of the</span>
<a name="l00277"></a>00277 <span class="comment">     * evaluation.  If the call to XObject::null() on the return</span>
<a name="l00278"></a>00278 <span class="comment">     * value is true, that indicates the value was executed</span>
<a name="l00279"></a>00279 <span class="comment">     * directly into the parameter.  Otherwise, the parameter</span>
<a name="l00280"></a>00280 <span class="comment">     * will be empty, and the result will be in the XObject</span>
<a name="l00281"></a>00281 <span class="comment">     * instance returned.</span>
<a name="l00282"></a>00282 <span class="comment">     *</span>
<a name="l00283"></a>00283 <span class="comment">     * @param context          current source tree context node, which must not be 0</span>
<a name="l00284"></a>00284 <span class="comment">     * @param prefixResolver   prefix resolver to use</span>
<a name="l00285"></a>00285 <span class="comment">     * @param executionContext current execution context</span>
<a name="l00286"></a>00286 <span class="comment">     * @param result           the node-set result</span>
<a name="l00287"></a>00287 <span class="comment">     * @return the node-set result, if the result was not returned in the parameter</span>
<a name="l00288"></a>00288 <span class="comment">     */</span>
<a name="l00289"></a>00289     <span class="keyword">const</span> <a class="code" href="classXObjectPtr.html" title="Class to hold XObjectPtr return types.">XObjectPtr</a>
<a name="l00290"></a>00290     execute(
<a name="l00291"></a>00291             XalanNode*              context,
<a name="l00292"></a>00292             <span class="keyword">const</span> PrefixResolver&amp;   prefixResolver,
<a name="l00293"></a>00293             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext,
<a name="l00294"></a>00294             <a class="code" href="classMutableNodeRefList.html" title="Local implementation of MutableNodeRefList.">MutableNodeRefList</a>&amp;     result) <span class="keyword">const</span>;
<a name="l00295"></a>00295 <span class="comment"></span>
<a name="l00296"></a>00296 <span class="comment">    /**</span>
<a name="l00297"></a>00297 <span class="comment">     * Execute the XPath from the provided context.</span>
<a name="l00298"></a>00298 <span class="comment">     *</span>
<a name="l00299"></a>00299 <span class="comment">     * @param context          current source tree context node, which must not be 0</span>
<a name="l00300"></a>00300 <span class="comment">     * @param prefixResolver   prefix resolver to use</span>
<a name="l00301"></a>00301 <span class="comment">     * @param contextNodeList  node list for current context</span>
<a name="l00302"></a>00302 <span class="comment">     * @param executionContext current execution context</span>
<a name="l00303"></a>00303 <span class="comment">     * @return smart-pointer to result XObject</span>
<a name="l00304"></a>00304 <span class="comment">     */</span>
<a name="l00305"></a>00305     <span class="keyword">const</span> <a class="code" href="classXObjectPtr.html" title="Class to hold XObjectPtr return types.">XObjectPtr</a>
<a name="l00306"></a><a class="code" href="classXPath.html#a9ca3d856adb54159713db37a818495a9">00306</a>     execute(
<a name="l00307"></a>00307             XalanNode*              context,
<a name="l00308"></a>00308             <span class="keyword">const</span> PrefixResolver&amp;   prefixResolver,
<a name="l00309"></a>00309             <span class="keyword">const</span> <a class="code" href="classNodeRefListBase.html" title="Local implementation of NodeRefList.">NodeRefListBase</a>&amp;  contextNodeList,
<a name="l00310"></a>00310             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext)<span class="keyword"> const</span>
<a name="l00311"></a>00311 <span class="keyword">    </span>{
<a name="l00312"></a>00312         <span class="comment">// Push and pop the context node list...</span>
<a name="l00313"></a>00313         <a class="code" href="classXPathExecutionContext_1_1ContextNodeListPushAndPop.html">XPathExecutionContext::ContextNodeListPushAndPop</a>    thePushAndPop(
<a name="l00314"></a>00314                                         executionContext,
<a name="l00315"></a>00315                                         contextNodeList);
<a name="l00316"></a>00316 
<a name="l00317"></a>00317         <span class="keywordflow">return</span> execute(context, prefixResolver, executionContext);
<a name="l00318"></a>00318     }
<a name="l00319"></a>00319 <span class="comment"></span>
<a name="l00320"></a>00320 <span class="comment">    /**</span>
<a name="l00321"></a>00321 <span class="comment">     * Execute the XPath from the provided context.</span>
<a name="l00322"></a>00322 <span class="comment">     *</span>
<a name="l00323"></a>00323 <span class="comment">     * @param context          current source tree context node, which must not be 0</span>
<a name="l00324"></a>00324 <span class="comment">     * @param prefixResolver   prefix resolver to use</span>
<a name="l00325"></a>00325 <span class="comment">     * @param contextNodeList  node list for current context</span>
<a name="l00326"></a>00326 <span class="comment">     * @param executionContext current execution context</span>
<a name="l00327"></a>00327 <span class="comment">     * @param result           the boolean result</span>
<a name="l00328"></a>00328 <span class="comment">     */</span>
<a name="l00329"></a>00329     <span class="keywordtype">void</span>
<a name="l00330"></a><a class="code" href="classXPath.html#a23be0d1205a627c3996a1268514f6425">00330</a>     execute(
<a name="l00331"></a>00331             XalanNode*              context,
<a name="l00332"></a>00332             <span class="keyword">const</span> PrefixResolver&amp;   prefixResolver,
<a name="l00333"></a>00333             <span class="keyword">const</span> <a class="code" href="classNodeRefListBase.html" title="Local implementation of NodeRefList.">NodeRefListBase</a>&amp;  contextNodeList,
<a name="l00334"></a>00334             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext,
<a name="l00335"></a>00335             <span class="keywordtype">bool</span>&amp;                   result)<span class="keyword"> const</span>
<a name="l00336"></a>00336 <span class="keyword">    </span>{
<a name="l00337"></a>00337         <span class="comment">// Push and pop the context node list...</span>
<a name="l00338"></a>00338         <a class="code" href="classXPathExecutionContext_1_1ContextNodeListPushAndPop.html">XPathExecutionContext::ContextNodeListPushAndPop</a>    thePushAndPop(
<a name="l00339"></a>00339                                         executionContext,
<a name="l00340"></a>00340                                         contextNodeList);
<a name="l00341"></a>00341 
<a name="l00342"></a>00342         execute(context, prefixResolver, executionContext, result);
<a name="l00343"></a>00343     }
<a name="l00344"></a>00344 <span class="comment"></span>
<a name="l00345"></a>00345 <span class="comment">    /**</span>
<a name="l00346"></a>00346 <span class="comment">     * Execute the XPath from the provided context.</span>
<a name="l00347"></a>00347 <span class="comment">     *</span>
<a name="l00348"></a>00348 <span class="comment">     * @param context          current source tree context node, which must not be 0</span>
<a name="l00349"></a>00349 <span class="comment">     * @param prefixResolver   prefix resolver to use</span>
<a name="l00350"></a>00350 <span class="comment">     * @param contextNodeList  node list for current context</span>
<a name="l00351"></a>00351 <span class="comment">     * @param executionContext current execution context</span>
<a name="l00352"></a>00352 <span class="comment">     * @param result           the numeric result</span>
<a name="l00353"></a>00353 <span class="comment">     */</span>
<a name="l00354"></a>00354     <span class="keywordtype">void</span>
<a name="l00355"></a><a class="code" href="classXPath.html#ac0758fe105978df68eef4a572b6442f0">00355</a>     execute(
<a name="l00356"></a>00356             XalanNode*              context,
<a name="l00357"></a>00357             <span class="keyword">const</span> PrefixResolver&amp;   prefixResolver,
<a name="l00358"></a>00358             <span class="keyword">const</span> <a class="code" href="classNodeRefListBase.html" title="Local implementation of NodeRefList.">NodeRefListBase</a>&amp;  contextNodeList,
<a name="l00359"></a>00359             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext,
<a name="l00360"></a>00360             <span class="keywordtype">double</span>&amp;                 result)<span class="keyword"> const</span>
<a name="l00361"></a>00361 <span class="keyword">    </span>{
<a name="l00362"></a>00362         <span class="comment">// Push and pop the context node list...</span>
<a name="l00363"></a>00363         <a class="code" href="classXPathExecutionContext_1_1ContextNodeListPushAndPop.html">XPathExecutionContext::ContextNodeListPushAndPop</a>    thePushAndPop(
<a name="l00364"></a>00364                                         executionContext,
<a name="l00365"></a>00365                                         contextNodeList);
<a name="l00366"></a>00366 
<a name="l00367"></a>00367         execute(context, prefixResolver, executionContext, result);
<a name="l00368"></a>00368     }
<a name="l00369"></a>00369 <span class="comment"></span>
<a name="l00370"></a>00370 <span class="comment">    /**</span>
<a name="l00371"></a>00371 <span class="comment">     * Execute the XPath from the provided context.  The</span>
<a name="l00372"></a>00372 <span class="comment">     * result is appended to the supplied string.</span>
<a name="l00373"></a>00373 <span class="comment">     *</span>
<a name="l00374"></a>00374 <span class="comment">     * @param context          current source tree context node, which must not be 0</span>
<a name="l00375"></a>00375 <span class="comment">     * @param prefixResolver   prefix resolver to use</span>
<a name="l00376"></a>00376 <span class="comment">     * @param contextNodeList  node list for current context</span>
<a name="l00377"></a>00377 <span class="comment">     * @param executionContext current execution context</span>
<a name="l00378"></a>00378 <span class="comment">     * @param result           the string result</span>
<a name="l00379"></a>00379 <span class="comment">     */</span>
<a name="l00380"></a>00380     <span class="keywordtype">void</span>
<a name="l00381"></a><a class="code" href="classXPath.html#aa15f22d423504f2deb9f290fb2312657">00381</a>     execute(
<a name="l00382"></a>00382             XalanNode*              context,
<a name="l00383"></a>00383             <span class="keyword">const</span> PrefixResolver&amp;   prefixResolver,
<a name="l00384"></a>00384             <span class="keyword">const</span> <a class="code" href="classNodeRefListBase.html" title="Local implementation of NodeRefList.">NodeRefListBase</a>&amp;  contextNodeList,
<a name="l00385"></a>00385             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext,
<a name="l00386"></a>00386             <a class="code" href="classXalanDOMString.html">XalanDOMString</a>&amp;         result)<span class="keyword"> const</span>
<a name="l00387"></a>00387 <span class="keyword">    </span>{
<a name="l00388"></a>00388         <span class="comment">// Push and pop the context node list...</span>
<a name="l00389"></a>00389         <a class="code" href="classXPathExecutionContext_1_1ContextNodeListPushAndPop.html">XPathExecutionContext::ContextNodeListPushAndPop</a>    thePushAndPop(
<a name="l00390"></a>00390                                         executionContext,
<a name="l00391"></a>00391                                         contextNodeList);
<a name="l00392"></a>00392 
<a name="l00393"></a>00393         execute(context, prefixResolver, executionContext, result);
<a name="l00394"></a>00394     }
<a name="l00395"></a>00395 <span class="comment"></span>
<a name="l00396"></a>00396 <span class="comment">    /**</span>
<a name="l00397"></a>00397 <span class="comment">     * Execute the XPath from the provided context.</span>
<a name="l00398"></a>00398 <span class="comment">     *</span>
<a name="l00399"></a>00399 <span class="comment">     * @param context          current source tree context node, which must not be 0</span>
<a name="l00400"></a>00400 <span class="comment">     * @param prefixResolver   prefix resolver to use</span>
<a name="l00401"></a>00401 <span class="comment">     * @param contextNodeList  node list for current context</span>
<a name="l00402"></a>00402 <span class="comment">     * @param executionContext current execution context</span>
<a name="l00403"></a>00403 <span class="comment">     * @param formatterListener the FormatterListener instance to receive the result</span>
<a name="l00404"></a>00404 <span class="comment">     * @param function A pointer to the member function of FormatterListener to call</span>
<a name="l00405"></a>00405 <span class="comment">     */</span>
<a name="l00406"></a>00406     <span class="keywordtype">void</span>
<a name="l00407"></a><a class="code" href="classXPath.html#a8bb030ea188158283269d5711a3ec47d">00407</a>     execute(
<a name="l00408"></a>00408             XalanNode*              context,
<a name="l00409"></a>00409             <span class="keyword">const</span> PrefixResolver&amp;   prefixResolver,
<a name="l00410"></a>00410             <span class="keyword">const</span> <a class="code" href="classNodeRefListBase.html" title="Local implementation of NodeRefList.">NodeRefListBase</a>&amp;  contextNodeList,
<a name="l00411"></a>00411             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext,
<a name="l00412"></a>00412             <a class="code" href="classFormatterListener.html" title="A SAX-based formatter interface for the XSL processor.">FormatterListener</a>&amp;      formatterListener,
<a name="l00413"></a>00413             MemberFunctionPtr       function)<span class="keyword"> const</span>
<a name="l00414"></a>00414 <span class="keyword">    </span>{
<a name="l00415"></a>00415         <span class="comment">// Push and pop the context node list...</span>
<a name="l00416"></a>00416         <a class="code" href="classXPathExecutionContext_1_1ContextNodeListPushAndPop.html">XPathExecutionContext::ContextNodeListPushAndPop</a>    thePushAndPop(
<a name="l00417"></a>00417                                         executionContext,
<a name="l00418"></a>00418                                         contextNodeList);
<a name="l00419"></a>00419 
<a name="l00420"></a>00420         execute(context, prefixResolver, executionContext, formatterListener, function);
<a name="l00421"></a>00421     }
<a name="l00422"></a>00422 <span class="comment"></span>
<a name="l00423"></a>00423 <span class="comment">    /**</span>
<a name="l00424"></a>00424 <span class="comment">     * Execute the XPath from the provided context.  Normally,</span>
<a name="l00425"></a>00425 <span class="comment">     * the expression will be evaluated and the result placed</span>
<a name="l00426"></a>00426 <span class="comment">     * in the parameter result.  However, some cases (such as</span>
<a name="l00427"></a>00427 <span class="comment">     * the evalution of a variable) could result in the copying</span>
<a name="l00428"></a>00428 <span class="comment">     * of a node-set, which is extremely expensive.  In that</span>
<a name="l00429"></a>00429 <span class="comment">     * case, the return value will contain the result of the</span>
<a name="l00430"></a>00430 <span class="comment">     * evaluation.  If the call to XObject::null() on the return</span>
<a name="l00431"></a>00431 <span class="comment">     * value is true, that indicates the value was executed</span>
<a name="l00432"></a>00432 <span class="comment">     * directly into the parameter.  Otherwise, the parameter</span>
<a name="l00433"></a>00433 <span class="comment">     * will be empty, and the result will be in the XObject</span>
<a name="l00434"></a>00434 <span class="comment">     * instance returned.</span>
<a name="l00435"></a>00435 <span class="comment">     *</span>
<a name="l00436"></a>00436 <span class="comment">     * @param context          current source tree context node, which must not be 0</span>
<a name="l00437"></a>00437 <span class="comment">     * @param prefixResolver   prefix resolver to use</span>
<a name="l00438"></a>00438 <span class="comment">     * @param contextNodeList  node list for current context</span>
<a name="l00439"></a>00439 <span class="comment">     * @param executionContext current execution context</span>
<a name="l00440"></a>00440 <span class="comment">     * @param result           the result as a set of nodes</span>
<a name="l00441"></a>00441 <span class="comment">     * @return the node-set result, if the result was not returned in the parameter</span>
<a name="l00442"></a>00442 <span class="comment">     */</span>
<a name="l00443"></a>00443     <span class="keyword">const</span> <a class="code" href="classXObjectPtr.html" title="Class to hold XObjectPtr return types.">XObjectPtr</a>
<a name="l00444"></a><a class="code" href="classXPath.html#a4ccf91ab0fa3d0e08703e25a98a058dc">00444</a>     execute(
<a name="l00445"></a>00445             XalanNode*              context,
<a name="l00446"></a>00446             <span class="keyword">const</span> PrefixResolver&amp;   prefixResolver,
<a name="l00447"></a>00447             <span class="keyword">const</span> <a class="code" href="classNodeRefListBase.html" title="Local implementation of NodeRefList.">NodeRefListBase</a>&amp;  contextNodeList,
<a name="l00448"></a>00448             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext,
<a name="l00449"></a>00449             <a class="code" href="classMutableNodeRefList.html" title="Local implementation of MutableNodeRefList.">MutableNodeRefList</a>&amp;     result)<span class="keyword"> const</span>
<a name="l00450"></a>00450 <span class="keyword">    </span>{
<a name="l00451"></a>00451         <span class="comment">// Push and pop the context node list...</span>
<a name="l00452"></a>00452         <a class="code" href="classXPathExecutionContext_1_1ContextNodeListPushAndPop.html">XPathExecutionContext::ContextNodeListPushAndPop</a>    thePushAndPop(
<a name="l00453"></a>00453                                         executionContext,
<a name="l00454"></a>00454                                         contextNodeList);
<a name="l00455"></a>00455 
<a name="l00456"></a>00456         <span class="keywordflow">return</span> execute(context, prefixResolver, executionContext, result);
<a name="l00457"></a>00457     }
<a name="l00458"></a>00458 <span class="comment"></span>
<a name="l00459"></a>00459 <span class="comment">    /**</span>
<a name="l00460"></a>00460 <span class="comment">     * Execute the XPath from the provided context.</span>
<a name="l00461"></a>00461 <span class="comment">     *</span>
<a name="l00462"></a>00462 <span class="comment">     * The prefix resolver and current node must already</span>
<a name="l00463"></a>00463 <span class="comment">     * be set execution context, and must not be 0.</span>
<a name="l00464"></a>00464 <span class="comment">     *</span>
<a name="l00465"></a>00465 <span class="comment">     * @param executionContext current execution context</span>
<a name="l00466"></a>00466 <span class="comment">     * @return smart-pointer to result XObject</span>
<a name="l00467"></a>00467 <span class="comment">     */</span>
<a name="l00468"></a>00468     <span class="keyword">const</span> <a class="code" href="classXObjectPtr.html" title="Class to hold XObjectPtr return types.">XObjectPtr</a>
<a name="l00469"></a><a class="code" href="classXPath.html#abb4d94d830420b719f9bfb13dedbc510">00469</a>     execute(<a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext)<span class="keyword"> const</span>
<a name="l00470"></a>00470 <span class="keyword">    </span>{
<a name="l00471"></a>00471         assert(executionContext.<a class="code" href="classXPathExecutionContext.html#a64406b0031e379a97d4d8c8f42960a05" title="Retrieve the node currently being executed.">getCurrentNode</a>() != 0);
<a name="l00472"></a>00472         assert(executionContext.<a class="code" href="classXPathExecutionContext.html#a23fab0428f26f89c7249352572270bd7" title="Retrieve the resolver for namespaces.">getPrefixResolver</a>() != 0);
<a name="l00473"></a>00473 
<a name="l00474"></a>00474         <span class="keywordflow">return</span> executeMore(
<a name="l00475"></a>00475                 executionContext.<a class="code" href="classXPathExecutionContext.html#a64406b0031e379a97d4d8c8f42960a05" title="Retrieve the node currently being executed.">getCurrentNode</a>(),
<a name="l00476"></a>00476                 getInitialOpCodePosition(),
<a name="l00477"></a>00477                 executionContext);
<a name="l00478"></a>00478     }
<a name="l00479"></a>00479 <span class="comment"></span>
<a name="l00480"></a>00480 <span class="comment">    /**</span>
<a name="l00481"></a>00481 <span class="comment">     * Execute the XPath from the provided context.</span>
<a name="l00482"></a>00482 <span class="comment">     *</span>
<a name="l00483"></a>00483 <span class="comment">     * The prefix resolver and current node must already</span>
<a name="l00484"></a>00484 <span class="comment">     * be set execution context, and must not be 0.</span>
<a name="l00485"></a>00485 <span class="comment">     *</span>
<a name="l00486"></a>00486 <span class="comment">     * @param executionContext current execution context</span>
<a name="l00487"></a>00487 <span class="comment">     * @param result the boolean result</span>
<a name="l00488"></a>00488 <span class="comment">     */</span>
<a name="l00489"></a>00489     <span class="keywordtype">void</span>
<a name="l00490"></a><a class="code" href="classXPath.html#a6b713eb08cdc2418aa95c33072a1ce0e">00490</a>     execute(
<a name="l00491"></a>00491             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext,
<a name="l00492"></a>00492             <span class="keywordtype">bool</span>&amp;                   result)<span class="keyword"> const</span>
<a name="l00493"></a>00493 <span class="keyword">    </span>{
<a name="l00494"></a>00494         assert(executionContext.<a class="code" href="classXPathExecutionContext.html#a64406b0031e379a97d4d8c8f42960a05" title="Retrieve the node currently being executed.">getCurrentNode</a>() != 0);
<a name="l00495"></a>00495         assert(executionContext.<a class="code" href="classXPathExecutionContext.html#a23fab0428f26f89c7249352572270bd7" title="Retrieve the resolver for namespaces.">getPrefixResolver</a>() != 0);
<a name="l00496"></a>00496 
<a name="l00497"></a>00497         executeMore(
<a name="l00498"></a>00498                 executionContext.<a class="code" href="classXPathExecutionContext.html#a64406b0031e379a97d4d8c8f42960a05" title="Retrieve the node currently being executed.">getCurrentNode</a>(),
<a name="l00499"></a>00499                 getInitialOpCodePosition(),
<a name="l00500"></a>00500                 executionContext,
<a name="l00501"></a>00501                 result);
<a name="l00502"></a>00502     }
<a name="l00503"></a>00503 <span class="comment"></span>
<a name="l00504"></a>00504 <span class="comment">    /**</span>
<a name="l00505"></a>00505 <span class="comment">     * Execute the XPath from the provided context.</span>
<a name="l00506"></a>00506 <span class="comment">     *</span>
<a name="l00507"></a>00507 <span class="comment">     * The prefix resolver must already be set in the</span>
<a name="l00508"></a>00508 <span class="comment">     * execution context.</span>
<a name="l00509"></a>00509 <span class="comment">     *</span>
<a name="l00510"></a>00510 <span class="comment">     * @param executionContext current execution context</span>
<a name="l00511"></a>00511 <span class="comment">     * @param result           the numeric result</span>
<a name="l00512"></a>00512 <span class="comment">     */</span>
<a name="l00513"></a>00513     <span class="keywordtype">void</span>
<a name="l00514"></a><a class="code" href="classXPath.html#af288c088efa118cb7b51121d8f876c2c">00514</a>     execute(
<a name="l00515"></a>00515             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext,
<a name="l00516"></a>00516             <span class="keywordtype">double</span>&amp;                 result)<span class="keyword"> const</span>
<a name="l00517"></a>00517 <span class="keyword">    </span>{
<a name="l00518"></a>00518         assert(executionContext.<a class="code" href="classXPathExecutionContext.html#a64406b0031e379a97d4d8c8f42960a05" title="Retrieve the node currently being executed.">getCurrentNode</a>() != 0);
<a name="l00519"></a>00519         assert(executionContext.<a class="code" href="classXPathExecutionContext.html#a23fab0428f26f89c7249352572270bd7" title="Retrieve the resolver for namespaces.">getPrefixResolver</a>() != 0);
<a name="l00520"></a>00520 
<a name="l00521"></a>00521         executeMore(
<a name="l00522"></a>00522                 executionContext.<a class="code" href="classXPathExecutionContext.html#a64406b0031e379a97d4d8c8f42960a05" title="Retrieve the node currently being executed.">getCurrentNode</a>(),
<a name="l00523"></a>00523                 getInitialOpCodePosition(),
<a name="l00524"></a>00524                 executionContext,
<a name="l00525"></a>00525                 result);
<a name="l00526"></a>00526     }
<a name="l00527"></a>00527 <span class="comment"></span>
<a name="l00528"></a>00528 <span class="comment">    /**</span>
<a name="l00529"></a>00529 <span class="comment">     * Execute the XPath from the provided context. The</span>
<a name="l00530"></a>00530 <span class="comment">     * result is appended to the supplied string.</span>
<a name="l00531"></a>00531 <span class="comment">     *</span>
<a name="l00532"></a>00532 <span class="comment">     * The prefix resolver and current node must already</span>
<a name="l00533"></a>00533 <span class="comment">     * be set execution context, and must not be 0.</span>
<a name="l00534"></a>00534 <span class="comment">     *</span>
<a name="l00535"></a>00535 <span class="comment">     * @param executionContext current execution context</span>
<a name="l00536"></a>00536 <span class="comment">     * @param result the string result</span>
<a name="l00537"></a>00537 <span class="comment">     */</span>
<a name="l00538"></a>00538     <span class="keywordtype">void</span>
<a name="l00539"></a><a class="code" href="classXPath.html#a194816072398a1eba89693d6841f8ab8">00539</a>     execute(
<a name="l00540"></a>00540             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext,
<a name="l00541"></a>00541             <a class="code" href="classXalanDOMString.html">XalanDOMString</a>&amp;         result)<span class="keyword"> const</span>
<a name="l00542"></a>00542 <span class="keyword">    </span>{
<a name="l00543"></a>00543         assert(executionContext.<a class="code" href="classXPathExecutionContext.html#a64406b0031e379a97d4d8c8f42960a05" title="Retrieve the node currently being executed.">getCurrentNode</a>() != 0);
<a name="l00544"></a>00544         assert(executionContext.<a class="code" href="classXPathExecutionContext.html#a23fab0428f26f89c7249352572270bd7" title="Retrieve the resolver for namespaces.">getPrefixResolver</a>() != 0);
<a name="l00545"></a>00545 
<a name="l00546"></a>00546         executeMore(
<a name="l00547"></a>00547                 executionContext.<a class="code" href="classXPathExecutionContext.html#a64406b0031e379a97d4d8c8f42960a05" title="Retrieve the node currently being executed.">getCurrentNode</a>(),
<a name="l00548"></a>00548                 getInitialOpCodePosition(),
<a name="l00549"></a>00549                 executionContext,
<a name="l00550"></a>00550                 result);
<a name="l00551"></a>00551     }
<a name="l00552"></a>00552 <span class="comment"></span>
<a name="l00553"></a>00553 <span class="comment">    /**</span>
<a name="l00554"></a>00554 <span class="comment">     * Execute the XPath from the provided context.</span>
<a name="l00555"></a>00555 <span class="comment">     * </span>
<a name="l00556"></a>00556 <span class="comment">     * The prefix resolver and current node must already</span>
<a name="l00557"></a>00557 <span class="comment">     * be set execution context, and must not be 0.</span>
<a name="l00558"></a>00558 <span class="comment">     *</span>
<a name="l00559"></a>00559 <span class="comment">     * @param executionContext current execution context</span>
<a name="l00560"></a>00560 <span class="comment">     * @param formatterListener the FormatterListener instance to receive the result</span>
<a name="l00561"></a>00561 <span class="comment">     * @param function A pointer to the member function of FormatterListener to call</span>
<a name="l00562"></a>00562 <span class="comment">     */</span>
<a name="l00563"></a>00563     <span class="keywordtype">void</span>
<a name="l00564"></a><a class="code" href="classXPath.html#a886771707ac52befb0d3fcfeddd1c92d">00564</a>     execute(
<a name="l00565"></a>00565             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext,
<a name="l00566"></a>00566             <a class="code" href="classFormatterListener.html" title="A SAX-based formatter interface for the XSL processor.">FormatterListener</a>&amp;      formatterListener,
<a name="l00567"></a>00567             MemberFunctionPtr       function)<span class="keyword"> const</span>
<a name="l00568"></a>00568 <span class="keyword">    </span>{
<a name="l00569"></a>00569         assert(executionContext.<a class="code" href="classXPathExecutionContext.html#a64406b0031e379a97d4d8c8f42960a05" title="Retrieve the node currently being executed.">getCurrentNode</a>() != 0);
<a name="l00570"></a>00570         assert(executionContext.<a class="code" href="classXPathExecutionContext.html#a23fab0428f26f89c7249352572270bd7" title="Retrieve the resolver for namespaces.">getPrefixResolver</a>() != 0);
<a name="l00571"></a>00571 
<a name="l00572"></a>00572         executeMore(
<a name="l00573"></a>00573                 executionContext.<a class="code" href="classXPathExecutionContext.html#a64406b0031e379a97d4d8c8f42960a05" title="Retrieve the node currently being executed.">getCurrentNode</a>(),
<a name="l00574"></a>00574                 getInitialOpCodePosition(),
<a name="l00575"></a>00575                 executionContext,
<a name="l00576"></a>00576                 formatterListener,
<a name="l00577"></a>00577                 function);
<a name="l00578"></a>00578     }
<a name="l00579"></a>00579 <span class="comment"></span>
<a name="l00580"></a>00580 <span class="comment">    /**</span>
<a name="l00581"></a>00581 <span class="comment">     * Execute the XPath from the provided context.  Normally,</span>
<a name="l00582"></a>00582 <span class="comment">     * the expression will be evaluated and the result placed</span>
<a name="l00583"></a>00583 <span class="comment">     * in the parameter result.  However, some cases (such as</span>
<a name="l00584"></a>00584 <span class="comment">     * the evalution of a variable) could result in the copying</span>
<a name="l00585"></a>00585 <span class="comment">     * of a node-set, which is extremely expensive.  In that</span>
<a name="l00586"></a>00586 <span class="comment">     * case, the return value will contain the result of the</span>
<a name="l00587"></a>00587 <span class="comment">     * evaluation.  If the call to XObject::null() on the return</span>
<a name="l00588"></a>00588 <span class="comment">     * value is true, that indicates the value was executed</span>
<a name="l00589"></a>00589 <span class="comment">     * directly into the parameter.  Otherwise, the parameter</span>
<a name="l00590"></a>00590 <span class="comment">     * will be empty, and the result will be in the XObject</span>
<a name="l00591"></a>00591 <span class="comment">     * instance returned.</span>
<a name="l00592"></a>00592 <span class="comment">     * </span>
<a name="l00593"></a>00593 <span class="comment">     * The prefix resolver and current node must already</span>
<a name="l00594"></a>00594 <span class="comment">     * be set execution context, and must not be 0.</span>
<a name="l00595"></a>00595 <span class="comment">     *</span>
<a name="l00596"></a>00596 <span class="comment">     * @param executionContext current execution context</span>
<a name="l00597"></a>00597 <span class="comment">     * @param result A node list for the result.  This may or may not contain the actual result.</span>
<a name="l00598"></a>00598 <span class="comment">     * @return the node-set result, if the result was not returned in the parameter</span>
<a name="l00599"></a>00599 <span class="comment">     */</span>
<a name="l00600"></a>00600     <span class="keyword">const</span> <a class="code" href="classXObjectPtr.html" title="Class to hold XObjectPtr return types.">XObjectPtr</a>
<a name="l00601"></a><a class="code" href="classXPath.html#a166067f78f249adf6d2a0973f01548b6">00601</a>     execute(
<a name="l00602"></a>00602             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext,
<a name="l00603"></a>00603             <a class="code" href="classMutableNodeRefList.html" title="Local implementation of MutableNodeRefList.">MutableNodeRefList</a>&amp;     result)<span class="keyword"> const</span>
<a name="l00604"></a>00604 <span class="keyword">    </span>{
<a name="l00605"></a>00605         assert(executionContext.<a class="code" href="classXPathExecutionContext.html#a64406b0031e379a97d4d8c8f42960a05" title="Retrieve the node currently being executed.">getCurrentNode</a>() != 0);
<a name="l00606"></a>00606         assert(executionContext.<a class="code" href="classXPathExecutionContext.html#a23fab0428f26f89c7249352572270bd7" title="Retrieve the resolver for namespaces.">getPrefixResolver</a>() != 0);
<a name="l00607"></a>00607 
<a name="l00608"></a>00608         <span class="keywordflow">return</span> executeMore(
<a name="l00609"></a>00609                 executionContext.<a class="code" href="classXPathExecutionContext.html#a64406b0031e379a97d4d8c8f42960a05" title="Retrieve the node currently being executed.">getCurrentNode</a>(),
<a name="l00610"></a>00610                 getInitialOpCodePosition(),
<a name="l00611"></a>00611                 executionContext,
<a name="l00612"></a>00612                 result);
<a name="l00613"></a>00613     }
<a name="l00614"></a>00614 <span class="comment"></span>
<a name="l00615"></a>00615 <span class="comment">    /**</span>
<a name="l00616"></a>00616 <span class="comment">     * Execute the XPath from the provided context.</span>
<a name="l00617"></a>00617 <span class="comment">     *</span>
<a name="l00618"></a>00618 <span class="comment">     * The current node must already be set execution context,</span>
<a name="l00619"></a>00619 <span class="comment">     * and must not be 0.</span>
<a name="l00620"></a>00620 <span class="comment">     *</span>
<a name="l00621"></a>00621 <span class="comment">     * @param executionContext current execution context</span>
<a name="l00622"></a>00622 <span class="comment">     * @param prefixResolver   prefix resolver to use</span>
<a name="l00623"></a>00623 <span class="comment">     * @return smart-pointer to result XObject</span>
<a name="l00624"></a>00624 <span class="comment">     */</span>
<a name="l00625"></a>00625     <span class="keyword">const</span> <a class="code" href="classXObjectPtr.html" title="Class to hold XObjectPtr return types.">XObjectPtr</a>
<a name="l00626"></a><a class="code" href="classXPath.html#a371a4d4268488cdf4db2c03ea833dc3d">00626</a>     execute(
<a name="l00627"></a>00627             <span class="keyword">const</span> PrefixResolver&amp;   prefixResolver,
<a name="l00628"></a>00628             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext)<span class="keyword"> const</span>
<a name="l00629"></a>00629 <span class="keyword">    </span>{
<a name="l00630"></a>00630         assert(executionContext.<a class="code" href="classXPathExecutionContext.html#a64406b0031e379a97d4d8c8f42960a05" title="Retrieve the node currently being executed.">getCurrentNode</a>() != 0);
<a name="l00631"></a>00631 
<a name="l00632"></a>00632         <span class="comment">// Push and pop the PrefixResolver...</span>
<a name="l00633"></a>00633         <span class="keyword">const</span> PrefixResolverSetAndRestore   theResolverSetAndRestore(
<a name="l00634"></a>00634                                                 executionContext,
<a name="l00635"></a>00635                                                 &amp;prefixResolver);
<a name="l00636"></a>00636 
<a name="l00637"></a>00637         <span class="keywordflow">return</span> executeMore(
<a name="l00638"></a>00638                 executionContext.<a class="code" href="classXPathExecutionContext.html#a64406b0031e379a97d4d8c8f42960a05" title="Retrieve the node currently being executed.">getCurrentNode</a>(),
<a name="l00639"></a>00639                 getInitialOpCodePosition(),
<a name="l00640"></a>00640                 executionContext);
<a name="l00641"></a>00641     }
<a name="l00642"></a>00642 <span class="comment"></span>
<a name="l00643"></a>00643 <span class="comment">    /**</span>
<a name="l00644"></a>00644 <span class="comment">     * Execute the XPath from the provided context.</span>
<a name="l00645"></a>00645 <span class="comment">     *</span>
<a name="l00646"></a>00646 <span class="comment">     * The current node must already be set execution context,</span>
<a name="l00647"></a>00647 <span class="comment">     * and must not be 0.</span>
<a name="l00648"></a>00648 <span class="comment">     *</span>
<a name="l00649"></a>00649 <span class="comment">     * @param executionContext current execution context</span>
<a name="l00650"></a>00650 <span class="comment">     * @param prefixResolver prefix resolver to use</span>
<a name="l00651"></a>00651 <span class="comment">     * @param result the boolean result</span>
<a name="l00652"></a>00652 <span class="comment">     */</span>
<a name="l00653"></a>00653     <span class="keywordtype">void</span>
<a name="l00654"></a><a class="code" href="classXPath.html#ad9f102a5758f022ec347db2dd1631497">00654</a>     execute(
<a name="l00655"></a>00655             <span class="keyword">const</span> PrefixResolver&amp;   prefixResolver,
<a name="l00656"></a>00656             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext,
<a name="l00657"></a>00657             <span class="keywordtype">bool</span>&amp;                   result)<span class="keyword"> const</span>
<a name="l00658"></a>00658 <span class="keyword">    </span>{
<a name="l00659"></a>00659         assert(executionContext.<a class="code" href="classXPathExecutionContext.html#a64406b0031e379a97d4d8c8f42960a05" title="Retrieve the node currently being executed.">getCurrentNode</a>() != 0);
<a name="l00660"></a>00660 
<a name="l00661"></a>00661         <span class="comment">// Push and pop the PrefixResolver...</span>
<a name="l00662"></a>00662         <span class="keyword">const</span> PrefixResolverSetAndRestore   theResolverSetAndRestore(
<a name="l00663"></a>00663                                                 executionContext,
<a name="l00664"></a>00664                                                 &amp;prefixResolver);
<a name="l00665"></a>00665 
<a name="l00666"></a>00666         executeMore(
<a name="l00667"></a>00667                 executionContext.<a class="code" href="classXPathExecutionContext.html#a64406b0031e379a97d4d8c8f42960a05" title="Retrieve the node currently being executed.">getCurrentNode</a>(),
<a name="l00668"></a>00668                 getInitialOpCodePosition(),
<a name="l00669"></a>00669                 executionContext,
<a name="l00670"></a>00670                 result);
<a name="l00671"></a>00671     }
<a name="l00672"></a>00672 <span class="comment"></span>
<a name="l00673"></a>00673 <span class="comment">    /**</span>
<a name="l00674"></a>00674 <span class="comment">     * Execute the XPath from the provided context.</span>
<a name="l00675"></a>00675 <span class="comment">     *</span>
<a name="l00676"></a>00676 <span class="comment">     * The current node must already be set execution context,</span>
<a name="l00677"></a>00677 <span class="comment">     * and must not be 0.</span>
<a name="l00678"></a>00678 <span class="comment">     *</span>
<a name="l00679"></a>00679 <span class="comment">     * @param executionContext current execution context</span>
<a name="l00680"></a>00680 <span class="comment">     * @param prefixResolver prefix resolver to use</span>
<a name="l00681"></a>00681 <span class="comment">     * @param result the numeric result</span>
<a name="l00682"></a>00682 <span class="comment">     */</span>
<a name="l00683"></a>00683     <span class="keywordtype">void</span>
<a name="l00684"></a><a class="code" href="classXPath.html#a4b8c6460dfbcaad55ca80e60a2dbd77e">00684</a>     execute(
<a name="l00685"></a>00685             <span class="keyword">const</span> PrefixResolver&amp;   prefixResolver,
<a name="l00686"></a>00686             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext,
<a name="l00687"></a>00687             <span class="keywordtype">double</span>&amp;                 result)<span class="keyword"> const</span>
<a name="l00688"></a>00688 <span class="keyword">    </span>{
<a name="l00689"></a>00689         assert(executionContext.<a class="code" href="classXPathExecutionContext.html#a64406b0031e379a97d4d8c8f42960a05" title="Retrieve the node currently being executed.">getCurrentNode</a>() != 0);
<a name="l00690"></a>00690 
<a name="l00691"></a>00691         <span class="comment">// Push and pop the PrefixResolver...</span>
<a name="l00692"></a>00692         <span class="keyword">const</span> PrefixResolverSetAndRestore   theResolverSetAndRestore(
<a name="l00693"></a>00693                                                 executionContext,
<a name="l00694"></a>00694                                                 &amp;prefixResolver);
<a name="l00695"></a>00695 
<a name="l00696"></a>00696         executeMore(
<a name="l00697"></a>00697                 executionContext.<a class="code" href="classXPathExecutionContext.html#a64406b0031e379a97d4d8c8f42960a05" title="Retrieve the node currently being executed.">getCurrentNode</a>(),
<a name="l00698"></a>00698                 getInitialOpCodePosition(),
<a name="l00699"></a>00699                 executionContext,
<a name="l00700"></a>00700                 result);
<a name="l00701"></a>00701     }
<a name="l00702"></a>00702 <span class="comment"></span>
<a name="l00703"></a>00703 <span class="comment">    /**</span>
<a name="l00704"></a>00704 <span class="comment">     * Execute the XPath from the provided context. The</span>
<a name="l00705"></a>00705 <span class="comment">     * result is appended to the supplied string.</span>
<a name="l00706"></a>00706 <span class="comment">     *</span>
<a name="l00707"></a>00707 <span class="comment">     * The current node must already be set execution context,</span>
<a name="l00708"></a>00708 <span class="comment">     * and must not be 0.</span>
<a name="l00709"></a>00709 <span class="comment">     *</span>
<a name="l00710"></a>00710 <span class="comment">     * @param executionContext current execution context</span>
<a name="l00711"></a>00711 <span class="comment">     * @param prefixResolver prefix resolver to use</span>
<a name="l00712"></a>00712 <span class="comment">     * @param result the string result</span>
<a name="l00713"></a>00713 <span class="comment">     */</span>
<a name="l00714"></a>00714     <span class="keywordtype">void</span>
<a name="l00715"></a><a class="code" href="classXPath.html#a7a3679dccf150cf2c2fc1230188aa76e">00715</a>     execute(
<a name="l00716"></a>00716             <span class="keyword">const</span> PrefixResolver&amp;   prefixResolver,
<a name="l00717"></a>00717             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext,
<a name="l00718"></a>00718             <a class="code" href="classXalanDOMString.html">XalanDOMString</a>&amp;         result)<span class="keyword"> const</span>
<a name="l00719"></a>00719 <span class="keyword">    </span>{
<a name="l00720"></a>00720         assert(executionContext.<a class="code" href="classXPathExecutionContext.html#a64406b0031e379a97d4d8c8f42960a05" title="Retrieve the node currently being executed.">getCurrentNode</a>() != 0);
<a name="l00721"></a>00721 
<a name="l00722"></a>00722         <span class="comment">// Push and pop the PrefixResolver...</span>
<a name="l00723"></a>00723         <span class="keyword">const</span> PrefixResolverSetAndRestore   theResolverSetAndRestore(
<a name="l00724"></a>00724                                                 executionContext,
<a name="l00725"></a>00725                                                 &amp;prefixResolver);
<a name="l00726"></a>00726 
<a name="l00727"></a>00727         executeMore(
<a name="l00728"></a>00728                 executionContext.<a class="code" href="classXPathExecutionContext.html#a64406b0031e379a97d4d8c8f42960a05" title="Retrieve the node currently being executed.">getCurrentNode</a>(),
<a name="l00729"></a>00729                 getInitialOpCodePosition(),
<a name="l00730"></a>00730                 executionContext,
<a name="l00731"></a>00731                 result);
<a name="l00732"></a>00732     }
<a name="l00733"></a>00733 <span class="comment"></span>
<a name="l00734"></a>00734 <span class="comment">    /**</span>
<a name="l00735"></a>00735 <span class="comment">     * Execute the XPath from the provided context.</span>
<a name="l00736"></a>00736 <span class="comment">     *</span>
<a name="l00737"></a>00737 <span class="comment">     * @param prefixResolver   prefix resolver to use</span>
<a name="l00738"></a>00738 <span class="comment">     * @param executionContext current execution context</span>
<a name="l00739"></a>00739 <span class="comment">     * @param formatterListener the FormatterListener instance to receive the result</span>
<a name="l00740"></a>00740 <span class="comment">     * @param function A pointer to the member function of FormatterListener to call</span>
<a name="l00741"></a>00741 <span class="comment">     */</span>
<a name="l00742"></a>00742     <span class="keywordtype">void</span>
<a name="l00743"></a><a class="code" href="classXPath.html#a047ef4aab201ee579df887e5762f88ce">00743</a>     execute(
<a name="l00744"></a>00744             <span class="keyword">const</span> PrefixResolver&amp;   prefixResolver,
<a name="l00745"></a>00745             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext,
<a name="l00746"></a>00746             <a class="code" href="classFormatterListener.html" title="A SAX-based formatter interface for the XSL processor.">FormatterListener</a>&amp;      formatterListener,
<a name="l00747"></a>00747             MemberFunctionPtr       function)<span class="keyword"> const</span>
<a name="l00748"></a>00748 <span class="keyword">    </span>{
<a name="l00749"></a>00749         assert(executionContext.<a class="code" href="classXPathExecutionContext.html#a64406b0031e379a97d4d8c8f42960a05" title="Retrieve the node currently being executed.">getCurrentNode</a>() != 0);
<a name="l00750"></a>00750 
<a name="l00751"></a>00751         <span class="comment">// Push and pop the PrefixResolver...</span>
<a name="l00752"></a>00752         <span class="keyword">const</span> PrefixResolverSetAndRestore   theResolverSetAndRestore(
<a name="l00753"></a>00753                                                 executionContext,
<a name="l00754"></a>00754                                                 &amp;prefixResolver);
<a name="l00755"></a>00755 
<a name="l00756"></a>00756         executeMore(
<a name="l00757"></a>00757                 executionContext.<a class="code" href="classXPathExecutionContext.html#a64406b0031e379a97d4d8c8f42960a05" title="Retrieve the node currently being executed.">getCurrentNode</a>(),
<a name="l00758"></a>00758                 getInitialOpCodePosition(),
<a name="l00759"></a>00759                 executionContext,
<a name="l00760"></a>00760                 formatterListener,
<a name="l00761"></a>00761                 function);
<a name="l00762"></a>00762     }
<a name="l00763"></a>00763 <span class="comment"></span>
<a name="l00764"></a>00764 <span class="comment">    /**</span>
<a name="l00765"></a>00765 <span class="comment">     * Execute the XPath from the provided context.  Normally,</span>
<a name="l00766"></a>00766 <span class="comment">     * the expression will be evaluated and the result placed</span>
<a name="l00767"></a>00767 <span class="comment">     * in the parameter result.  However, some cases (such as</span>
<a name="l00768"></a>00768 <span class="comment">     * the evalution of a variable) could result in the copying</span>
<a name="l00769"></a>00769 <span class="comment">     * of a node-set, which is extremely expensive.  In that</span>
<a name="l00770"></a>00770 <span class="comment">     * case, the return value will contain the result of the</span>
<a name="l00771"></a>00771 <span class="comment">     * evaluation.  If the call to XObject::null() on the return</span>
<a name="l00772"></a>00772 <span class="comment">     * value is true, that indicates the value was executed</span>
<a name="l00773"></a>00773 <span class="comment">     * directly into the parameter.  Otherwise, the parameter</span>
<a name="l00774"></a>00774 <span class="comment">     * will be empty, and the result will be in the XObject</span>
<a name="l00775"></a>00775 <span class="comment">     * instance returned.</span>
<a name="l00776"></a>00776 <span class="comment">     *</span>
<a name="l00777"></a>00777 <span class="comment">     * The current node must already be set execution context,</span>
<a name="l00778"></a>00778 <span class="comment">     * and must not be 0.</span>
<a name="l00779"></a>00779 <span class="comment">     *</span>
<a name="l00780"></a>00780 <span class="comment">     * @param executionContext current execution context</span>
<a name="l00781"></a>00781 <span class="comment">     * @param prefixResolver prefix resolver to use</span>
<a name="l00782"></a>00782 <span class="comment">     * @param result A node list for the result.  This may or may not contain the actual result.</span>
<a name="l00783"></a>00783 <span class="comment">     * @return the node-set result, if the result was not returned in the parameter</span>
<a name="l00784"></a>00784 <span class="comment">     */</span>
<a name="l00785"></a>00785     <a class="code" href="classXObjectPtr.html" title="Class to hold XObjectPtr return types.">XObjectPtr</a>
<a name="l00786"></a><a class="code" href="classXPath.html#a94f1189d34f6993f624a3221728ca775">00786</a>     execute(
<a name="l00787"></a>00787             <span class="keyword">const</span> PrefixResolver&amp;   prefixResolver,
<a name="l00788"></a>00788             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext,
<a name="l00789"></a>00789             <a class="code" href="classMutableNodeRefList.html" title="Local implementation of MutableNodeRefList.">MutableNodeRefList</a>&amp;     result)<span class="keyword"> const</span>
<a name="l00790"></a>00790 <span class="keyword">    </span>{
<a name="l00791"></a>00791         assert(executionContext.<a class="code" href="classXPathExecutionContext.html#a64406b0031e379a97d4d8c8f42960a05" title="Retrieve the node currently being executed.">getCurrentNode</a>() != 0);
<a name="l00792"></a>00792 
<a name="l00793"></a>00793         <span class="comment">// Push and pop the PrefixResolver...</span>
<a name="l00794"></a>00794         <span class="keyword">const</span> PrefixResolverSetAndRestore   theResolverSetAndRestore(
<a name="l00795"></a>00795                                                 executionContext,
<a name="l00796"></a>00796                                                 &amp;prefixResolver);
<a name="l00797"></a>00797 
<a name="l00798"></a>00798         <span class="keywordflow">return</span> executeMore(
<a name="l00799"></a>00799                 executionContext.<a class="code" href="classXPathExecutionContext.html#a64406b0031e379a97d4d8c8f42960a05" title="Retrieve the node currently being executed.">getCurrentNode</a>(),
<a name="l00800"></a>00800                 getInitialOpCodePosition(),
<a name="l00801"></a>00801                 executionContext,
<a name="l00802"></a>00802                 result);
<a name="l00803"></a>00803     }
<a name="l00804"></a>00804 <span class="comment"></span>
<a name="l00805"></a>00805 <span class="comment">    /**</span>
<a name="l00806"></a>00806 <span class="comment">     * Retrieve a reference to the current expression.</span>
<a name="l00807"></a>00807 <span class="comment">     * </span>
<a name="l00808"></a>00808 <span class="comment">     * @return current expression</span>
<a name="l00809"></a>00809 <span class="comment">     */</span>
<a name="l00810"></a>00810     <a class="code" href="classXPathExpression.html">XPathExpression</a>&amp;
<a name="l00811"></a><a class="code" href="classXPath.html#a11786404b509d9fd6da98e142fdaab1f">00811</a>     getExpression()
<a name="l00812"></a>00812     {
<a name="l00813"></a>00813         <span class="keywordflow">return</span> m_expression;
<a name="l00814"></a>00814     }
<a name="l00815"></a>00815 <span class="comment"></span>
<a name="l00816"></a>00816 <span class="comment">    /**</span>
<a name="l00817"></a>00817 <span class="comment">     * Retrieve a reference to the current expression.</span>
<a name="l00818"></a>00818 <span class="comment">     * </span>
<a name="l00819"></a>00819 <span class="comment">     * @return current expression</span>
<a name="l00820"></a>00820 <span class="comment">     */</span>
<a name="l00821"></a>00821     <span class="keyword">const</span> <a class="code" href="classXPathExpression.html">XPathExpression</a>&amp;
<a name="l00822"></a><a class="code" href="classXPath.html#acadb80b34c1747879f9e60d4934e48b9">00822</a>     getExpression()<span class="keyword"> const</span>
<a name="l00823"></a>00823 <span class="keyword">    </span>{
<a name="l00824"></a>00824         <span class="keywordflow">return</span> m_expression;
<a name="l00825"></a>00825     }
<a name="l00826"></a>00826 
<a name="l00827"></a>00827     <span class="keyword">static</span> <span class="keywordtype">double</span>
<a name="l00828"></a><a class="code" href="classXPath.html#a3f810d02959661f9e0221a41b55811f0">00828</a>     getMatchScoreValue(<a class="code" href="classXPath.html#a4b8fda385955090f1e265372de4fce7f">eMatchScore</a>  score)
<a name="l00829"></a>00829     {
<a name="l00830"></a>00830         <span class="keywordflow">switch</span>(score)
<a name="l00831"></a>00831         {
<a name="l00832"></a>00832         <span class="keywordflow">case</span> eMatchScoreNone:
<a name="l00833"></a>00833             <span class="keywordflow">return</span> <a class="code" href="classDoubleSupport.html#afae4039d63ecb93a4057acd6345aacad" title="Double value that represents negative infinity.">DoubleSupport::getNegativeInfinity</a>();
<a name="l00834"></a>00834             <span class="keywordflow">break</span>;
<a name="l00835"></a>00835 
<a name="l00836"></a>00836         <span class="keywordflow">case</span> eMatchScoreNodeTest:
<a name="l00837"></a>00837             <span class="keywordflow">return</span> -0.5;
<a name="l00838"></a>00838             <span class="keywordflow">break</span>;
<a name="l00839"></a>00839 
<a name="l00840"></a>00840         <span class="keywordflow">case</span> eMatchScoreNSWild:
<a name="l00841"></a>00841             <span class="keywordflow">return</span> -0.25;
<a name="l00842"></a>00842             <span class="keywordflow">break</span>;
<a name="l00843"></a>00843 
<a name="l00844"></a>00844         <span class="keywordflow">case</span> eMatchScoreOther:
<a name="l00845"></a>00845             <span class="keywordflow">return</span> 0.5;
<a name="l00846"></a>00846             <span class="keywordflow">break</span>;
<a name="l00847"></a>00847 
<a name="l00848"></a>00848         <span class="keywordflow">case</span> eMatchScoreQName:
<a name="l00849"></a>00849             <span class="keywordflow">return</span> 0.0;
<a name="l00850"></a>00850             <span class="keywordflow">break</span>;
<a name="l00851"></a>00851         };
<a name="l00852"></a>00852 
<a name="l00853"></a>00853         assert(<span class="keyword">false</span>);
<a name="l00854"></a>00854         <span class="keywordflow">return</span> 0.0;
<a name="l00855"></a>00855     }
<a name="l00856"></a>00856 <span class="comment"></span>
<a name="l00857"></a>00857 <span class="comment">    /**</span>
<a name="l00858"></a>00858 <span class="comment">     * Get the match score for the specified node.</span>
<a name="l00859"></a>00859 <span class="comment">     *</span>
<a name="l00860"></a>00860 <span class="comment">     * @param node The node for the score</span>
<a name="l00861"></a>00861 <span class="comment">     * @param executionContext current execution context</span>
<a name="l00862"></a>00862 <span class="comment">     * @return union of node-set operands</span>
<a name="l00863"></a>00863 <span class="comment">     */</span>
<a name="l00864"></a>00864     eMatchScore
<a name="l00865"></a>00865     getMatchScore(
<a name="l00866"></a>00866             XalanNode*              node,
<a name="l00867"></a>00867             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext) <span class="keyword">const</span>;
<a name="l00868"></a>00868 <span class="comment"></span>
<a name="l00869"></a>00869 <span class="comment">    /**</span>
<a name="l00870"></a>00870 <span class="comment">     * Get the match score for the specified node.</span>
<a name="l00871"></a>00871 <span class="comment">     *</span>
<a name="l00872"></a>00872 <span class="comment">     * @param node The node for the score</span>
<a name="l00873"></a>00873 <span class="comment">     * @param resolver The prefix resolver</span>
<a name="l00874"></a>00874 <span class="comment">     * @param executionContext current execution context</span>
<a name="l00875"></a>00875 <span class="comment">     * @return union of node-set operands</span>
<a name="l00876"></a>00876 <span class="comment">     */</span>
<a name="l00877"></a>00877     eMatchScore
<a name="l00878"></a>00878     getMatchScore(
<a name="l00879"></a>00879             XalanNode*              node,
<a name="l00880"></a>00880             <span class="keyword">const</span> PrefixResolver&amp;   resolver,
<a name="l00881"></a>00881             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext) <span class="keyword">const</span>;
<a name="l00882"></a>00882 <span class="comment"></span>
<a name="l00883"></a>00883 <span class="comment">    /**</span>
<a name="l00884"></a>00884 <span class="comment">     * Evaluate a predicate.</span>
<a name="l00885"></a>00885 <span class="comment">     *</span>
<a name="l00886"></a>00886 <span class="comment">     * @param context          current source tree context node</span>
<a name="l00887"></a>00887 <span class="comment">     * @param opPos            current position in the Op Map</span>
<a name="l00888"></a>00888 <span class="comment">     * @param executionContext current execution context</span>
<a name="l00889"></a>00889 <span class="comment">     * @return pointer to either a boolean or a number</span>
<a name="l00890"></a>00890 <span class="comment">     */</span>
<a name="l00891"></a>00891     <span class="keyword">const</span> <a class="code" href="classXObjectPtr.html" title="Class to hold XObjectPtr return types.">XObjectPtr</a>
<a name="l00892"></a><a class="code" href="classXPath.html#a1cb187a20d023365026f9d194107a31e">00892</a>     predicate(
<a name="l00893"></a>00893             XalanNode*              context,
<a name="l00894"></a>00894             OpCodeMapPositionType   opPos,
<a name="l00895"></a>00895             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext)<span class="keyword"> const</span>
<a name="l00896"></a>00896 <span class="keyword">    </span>{
<a name="l00897"></a>00897         <span class="keywordflow">return</span> executeMore(context, opPos + 2, executionContext);
<a name="l00898"></a>00898     }
<a name="l00899"></a>00899 <span class="comment"></span>
<a name="l00900"></a>00900 <span class="comment">    /**</span>
<a name="l00901"></a>00901 <span class="comment">     * Add the data for the target of match pattern to a vector.</span>
<a name="l00902"></a>00902 <span class="comment">     * </span>
<a name="l00903"></a>00903 <span class="comment">     * @param targetData The vector for the data</span>
<a name="l00904"></a>00904 <span class="comment">     */</span>
<a name="l00905"></a>00905     <span class="keywordtype">void</span>
<a name="l00906"></a>00906     getTargetData(TargetDataVectorType&amp;     targetData) <span class="keyword">const</span>;
<a name="l00907"></a>00907 <span class="comment"></span>
<a name="l00908"></a>00908 <span class="comment">    /**</span>
<a name="l00909"></a>00909 <span class="comment">     * Install a built-in function.</span>
<a name="l00910"></a>00910 <span class="comment">     *</span>
<a name="l00911"></a>00911 <span class="comment">     * @param funcName  unqualified name of the function</span>
<a name="l00912"></a>00912 <span class="comment">     * @param func      instance of an XPath function object</span>
<a name="l00913"></a>00913 <span class="comment">     */</span>
<a name="l00914"></a>00914     <span class="keyword">static</span> <span class="keywordtype">void</span>
<a name="l00915"></a><a class="code" href="classXPath.html#abef49e845f2747c0226028da9a0754cf">00915</a>     installFunction(
<a name="l00916"></a>00916             <span class="keyword">const</span> <a class="code" href="classXalanDOMString.html">XalanDOMString</a>&amp;   funcName,
<a name="l00917"></a>00917             <span class="keyword">const</span> <a class="code" href="classFunction.html">Function</a>&amp;         func)
<a name="l00918"></a>00918     {
<a name="l00919"></a>00919         s_functions.InstallFunction(funcName,
<a name="l00920"></a>00920                                     func);
<a name="l00921"></a>00921     }
<a name="l00922"></a>00922 <span class="comment"></span>
<a name="l00923"></a>00923 <span class="comment">    /**</span>
<a name="l00924"></a>00924 <span class="comment">     * Install a built-in function.</span>
<a name="l00925"></a>00925 <span class="comment">     *</span>
<a name="l00926"></a>00926 <span class="comment">     * @param funcName  unqualified name of the function</span>
<a name="l00927"></a>00927 <span class="comment">     * @param func      instance of an XPath function object</span>
<a name="l00928"></a>00928 <span class="comment">     */</span>
<a name="l00929"></a>00929     <span class="keyword">static</span> <span class="keywordtype">void</span>
<a name="l00930"></a><a class="code" href="classXPath.html#a019a6b733a44273117f199f07af5fa83">00930</a>     installFunction(
<a name="l00931"></a>00931             <span class="keyword">const</span> XalanDOMChar*     funcName,
<a name="l00932"></a>00932             <span class="keyword">const</span> <a class="code" href="classFunction.html">Function</a>&amp;         func)
<a name="l00933"></a>00933     {
<a name="l00934"></a>00934         s_functions.InstallFunction(funcName,
<a name="l00935"></a>00935                                     func);
<a name="l00936"></a>00936     }
<a name="l00937"></a>00937 <span class="comment"></span>
<a name="l00938"></a>00938 <span class="comment">    /**</span>
<a name="l00939"></a>00939 <span class="comment">     * Remove a named function from the function table.</span>
<a name="l00940"></a>00940 <span class="comment">     * </span>
<a name="l00941"></a>00941 <span class="comment">     * @param funcName name of function</span>
<a name="l00942"></a>00942 <span class="comment">     * @return true if the function was found and removed.</span>
<a name="l00943"></a>00943 <span class="comment">     */</span>
<a name="l00944"></a>00944     <span class="keyword">static</span> <span class="keywordtype">bool</span>
<a name="l00945"></a><a class="code" href="classXPath.html#a2a6c7d5bc789da889dfeda78592ad8c9">00945</a>     uninstallFunction(<span class="keyword">const</span> <a class="code" href="classXalanDOMString.html">XalanDOMString</a>&amp;     funcName)
<a name="l00946"></a>00946     {
<a name="l00947"></a>00947         <span class="keywordflow">return</span> s_functions.UninstallFunction(funcName);
<a name="l00948"></a>00948     }
<a name="l00949"></a>00949 <span class="comment"></span>
<a name="l00950"></a>00950 <span class="comment">    /**</span>
<a name="l00951"></a>00951 <span class="comment">     * Remove a named function from the function table.</span>
<a name="l00952"></a>00952 <span class="comment">     * </span>
<a name="l00953"></a>00953 <span class="comment">     * @param funcName name of function</span>
<a name="l00954"></a>00954 <span class="comment">     * @return true if the function was found and removed.</span>
<a name="l00955"></a>00955 <span class="comment">     */</span>
<a name="l00956"></a>00956     <span class="keyword">static</span> <span class="keywordtype">bool</span>
<a name="l00957"></a><a class="code" href="classXPath.html#a13b2104b23869336af720f2bd500deef">00957</a>     uninstallFunction(<span class="keyword">const</span> XalanDOMChar*   funcName)
<a name="l00958"></a>00958     {
<a name="l00959"></a>00959         <span class="keywordflow">return</span> s_functions.UninstallFunction(funcName);
<a name="l00960"></a>00960     }
<a name="l00961"></a>00961 <span class="comment"></span>
<a name="l00962"></a>00962 <span class="comment">    /**</span>
<a name="l00963"></a>00963 <span class="comment">     * Whether the named function is installed in the function table.</span>
<a name="l00964"></a>00964 <span class="comment">     * </span>
<a name="l00965"></a>00965 <span class="comment">     * @param name of function</span>
<a name="l00966"></a>00966 <span class="comment">     * @return true if the function has been installed</span>
<a name="l00967"></a>00967 <span class="comment">     */</span>
<a name="l00968"></a>00968     <span class="keyword">static</span> <span class="keywordtype">bool</span>
<a name="l00969"></a><a class="code" href="classXPath.html#aa40abf15aa1e07aadfbd9da69bc635d8">00969</a>     isInstalledFunction(<span class="keyword">const</span> <a class="code" href="classXalanDOMString.html">XalanDOMString</a>&amp;   theFunctionName)
<a name="l00970"></a>00970     {
<a name="l00971"></a>00971         <span class="keywordflow">return</span> s_functions.isInstalledFunction(theFunctionName);
<a name="l00972"></a>00972     }
<a name="l00973"></a>00973 
<a name="l00974"></a><a class="code" href="classXPath.html#a6e1fef6e257eeb7c9eb71308fdc04a5f">00974</a>     <span class="keyword">typedef</span> <a class="code" href="classXPathFunctionTable.html" title="Class defines a table of functions that can be called in XPath expresions.">XPathFunctionTable</a>  <a class="code" href="classXPathFunctionTable.html" title="Class defines a table of functions that can be called in XPath expresions.">FunctionTableType</a>;
<a name="l00975"></a>00975 <span class="comment"></span>
<a name="l00976"></a>00976 <span class="comment">    /**</span>
<a name="l00977"></a>00977 <span class="comment">     * Retrieve the table of installed functions.</span>
<a name="l00978"></a>00978 <span class="comment">     * </span>
<a name="l00979"></a>00979 <span class="comment">     * @return function table</span>
<a name="l00980"></a>00980 <span class="comment">     */</span>
<a name="l00981"></a>00981     <span class="keyword">static</span> <span class="keyword">const</span> FunctionTableType&amp;
<a name="l00982"></a><a class="code" href="classXPath.html#aec23d3fb2648397936bfd758a701bc32">00982</a>     getFunctionTable()
<a name="l00983"></a>00983     {
<a name="l00984"></a>00984         <span class="keywordflow">return</span> s_functions;
<a name="l00985"></a>00985     }
<a name="l00986"></a>00986 <span class="comment"></span>
<a name="l00987"></a>00987 <span class="comment">    /**</span>
<a name="l00988"></a>00988 <span class="comment">     * Add the names for the installed functions to a vector strings.</span>
<a name="l00989"></a>00989 <span class="comment">     * </span>
<a name="l00990"></a>00990 <span class="comment">     * @param theIterator vector added to</span>
<a name="l00991"></a>00991 <span class="comment">     */</span>
<a name="l00992"></a>00992     <span class="keyword">template</span>&lt;<span class="keyword">class</span> OutputIteratorType&gt;
<a name="l00993"></a>00993     <span class="keyword">static</span> <span class="keywordtype">void</span>
<a name="l00994"></a><a class="code" href="classXPath.html#a2528ec7df35bde9c2b647a699862abf3">00994</a>     getInstalledFunctionNames(OutputIteratorType    theIterator)
<a name="l00995"></a>00995     {
<a name="l00996"></a>00996         s_functions.getInstalledFunctionNames(theIterator);
<a name="l00997"></a>00997     }
<a name="l00998"></a>00998 
<a name="l00999"></a>00999     <span class="keyword">static</span> <span class="keywordtype">void</span>
<a name="l01000"></a><a class="code" href="classXPath.html#a8637984d88411373cc42bed91401e6ca">01000</a>     destroyTable()
<a name="l01001"></a>01001     {
<a name="l01002"></a>01002         s_functions.DestroyTable();
<a name="l01003"></a>01003     }
<a name="l01004"></a>01004 
<a name="l01005"></a>01005     <span class="keywordtype">bool</span>
<a name="l01006"></a><a class="code" href="classXPath.html#a6e08b756bdb557692a4af0c29246603a">01006</a>     getInStylesheet()<span class="keyword"> const</span>
<a name="l01007"></a>01007 <span class="keyword">    </span>{
<a name="l01008"></a>01008         <span class="keywordflow">return</span> m_inStylesheet;
<a name="l01009"></a>01009     }
<a name="l01010"></a>01010 
<a name="l01011"></a>01011     <span class="keywordtype">void</span>
<a name="l01012"></a><a class="code" href="classXPath.html#a73b864c11f274029ae969a092e41854c">01012</a>     setInStylesheet(<span class="keywordtype">bool</span>    fValue)
<a name="l01013"></a>01013     {
<a name="l01014"></a>01014         m_inStylesheet = fValue;
<a name="l01015"></a>01015     }
<a name="l01016"></a>01016 
<a name="l01017"></a>01017     <span class="keyword">const</span> Locator*
<a name="l01018"></a><a class="code" href="classXPath.html#aa667cf6b12ad62a7f51dd08a377b1e0b">01018</a>     getLocator()<span class="keyword"> const</span>
<a name="l01019"></a>01019 <span class="keyword">    </span>{
<a name="l01020"></a>01020         <span class="keywordflow">return</span> m_locator;
<a name="l01021"></a>01021     }
<a name="l01022"></a>01022 
<a name="l01023"></a>01023     <span class="keywordtype">void</span>
<a name="l01024"></a><a class="code" href="classXPath.html#af461b81e7b361db40b130a5ed47d51d2">01024</a>     setLocator(<span class="keyword">const</span> Locator*   theLocator)
<a name="l01025"></a>01025     {
<a name="l01026"></a>01026         m_locator = theLocator;
<a name="l01027"></a>01027     }
<a name="l01028"></a>01028 
<a name="l01029"></a><a class="code" href="classXPath_1_1NodeTester.html">01029</a>     <span class="keyword">class </span><a class="code" href="classXPath_1_1NodeTester.html">NodeTester</a>
<a name="l01030"></a>01030     {
<a name="l01031"></a>01031     <span class="keyword">public</span>:
<a name="l01032"></a>01032 
<a name="l01033"></a>01033         <a class="code" href="classXPath_1_1NodeTester.html">NodeTester</a>();
<a name="l01034"></a>01034 
<a name="l01035"></a>01035         <a class="code" href="classXPath_1_1NodeTester.html">NodeTester</a>(<span class="keyword">const</span> <a class="code" href="classXPath_1_1NodeTester.html">NodeTester</a>&amp;    theSource);
<a name="l01036"></a>01036 
<a name="l01037"></a>01037         <a class="code" href="classXPath_1_1NodeTester.html">NodeTester</a>(
<a name="l01038"></a>01038             <span class="keyword">const</span> XPath&amp;            xpath,
<a name="l01039"></a>01039             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext,
<a name="l01040"></a>01040             OpCodeMapPositionType   opPos,
<a name="l01041"></a>01041             OpCodeMapValueType      argLen,
<a name="l01042"></a>01042             OpCodeMapValueType      stepType);
<a name="l01043"></a>01043 
<a name="l01044"></a>01044         <a class="code" href="classXPath_1_1NodeTester.html">NodeTester</a>(
<a name="l01045"></a>01045             XPathConstructionContext&amp;   theContext,
<a name="l01046"></a>01046             <span class="keyword">const</span> <a class="code" href="classXalanDOMString.html">XalanDOMString</a>&amp;       theNameTest,
<a name="l01047"></a>01047             <span class="keyword">const</span> PrefixResolver&amp;       thePrefixResolver,
<a name="l01048"></a>01048             <span class="keyword">const</span> Locator*          theLocator = 0,
<a name="l01049"></a>01049             <a class="code" href="classXPath.html#a4b8fda385955090f1e265372de4fce7f">eMatchScore</a>*                theMatchScore = 0);
<a name="l01050"></a>01050 
<a name="l01051"></a>01051         <a class="code" href="classXPath_1_1NodeTester.html">NodeTester</a>(
<a name="l01052"></a>01052             <span class="keyword">const</span> <a class="code" href="classXalanDOMString.html">XalanDOMString</a>&amp;   theNamespaceURI,
<a name="l01053"></a>01053             <span class="keyword">const</span> <a class="code" href="classXalanDOMString.html">XalanDOMString</a>&amp;   theLocalName,
<a name="l01054"></a>01054             <a class="code" href="classXPath.html#a4b8fda385955090f1e265372de4fce7f">eMatchScore</a>*            theMatchScore = 0);
<a name="l01055"></a>01055 
<a name="l01056"></a>01056         <a class="code" href="classXPath.html#a4b8fda385955090f1e265372de4fce7f">eMatchScore</a>
<a name="l01057"></a><a class="code" href="classXPath_1_1NodeTester.html#af6752aa65435496871acaef0dfa66988">01057</a>         operator()(
<a name="l01058"></a>01058             <span class="keyword">const</span> XalanNode&amp;        context,
<a name="l01059"></a>01059             <a class="code" href="classXalanNode.html#a93d60cd336327226e55c45a320cced24">XalanNode::NodeType</a>     nodeType)<span class="keyword"> const</span>
<a name="l01060"></a>01060 <span class="keyword">        </span>{
<a name="l01061"></a>01061             assert(context.<a class="code" href="classXalanNode.html#a78412015183ad6fea2bc7ba9d2b2d6e8" title="An enum value representing the type of the underlying object.">getNodeType</a>() == nodeType);
<a name="l01062"></a>01062 
<a name="l01063"></a>01063             <span class="keywordflow">return</span> (this-&gt;*m_testFunction)(context, nodeType);
<a name="l01064"></a>01064         }
<a name="l01065"></a>01065 
<a name="l01066"></a>01066         <a class="code" href="classXPath.html#a4b8fda385955090f1e265372de4fce7f">eMatchScore</a>
<a name="l01067"></a><a class="code" href="classXPath_1_1NodeTester.html#a4934958e1eb3eb007db8aab99dedb1f1">01067</a>         operator()(<span class="keyword">const</span> XalanElement&amp;  context)<span class="keyword"> const</span>
<a name="l01068"></a>01068 <span class="keyword">        </span>{
<a name="l01069"></a>01069             <span class="keywordflow">return</span> (this-&gt;*m_testFunction2)(context);
<a name="l01070"></a>01070         }
<a name="l01071"></a>01071 
<a name="l01072"></a>01072         <a class="code" href="classXPath_1_1NodeTester.html">NodeTester</a>&amp;
<a name="l01073"></a><a class="code" href="classXPath_1_1NodeTester.html#a0c2cd55ee793f44c50d514b3810ff133">01073</a>         operator=(<span class="keyword">const</span> <a class="code" href="classXPath_1_1NodeTester.html">NodeTester</a>&amp;     theRHS)
<a name="l01074"></a>01074         {
<a name="l01075"></a>01075             m_executionContext = theRHS.m_executionContext;
<a name="l01076"></a>01076             m_targetNamespace = theRHS.m_targetNamespace;
<a name="l01077"></a>01077             m_targetLocalName = theRHS.m_targetLocalName;
<a name="l01078"></a>01078             m_testFunction = theRHS.m_testFunction;
<a name="l01079"></a>01079             m_testFunction2 = theRHS.m_testFunction2;
<a name="l01080"></a>01080 
<a name="l01081"></a>01081             <span class="keywordflow">return</span> *<span class="keyword">this</span>;
<a name="l01082"></a>01082         }
<a name="l01083"></a>01083 
<a name="l01084"></a>01084     <span class="keyword">protected</span>:
<a name="l01085"></a>01085 
<a name="l01086"></a>01086         <a class="code" href="classXPath.html#a4b8fda385955090f1e265372de4fce7f">eMatchScore</a>
<a name="l01087"></a>01087         initialize(
<a name="l01088"></a>01088             XPathConstructionContext&amp;   theConstructionContext,
<a name="l01089"></a>01089             <span class="keyword">const</span> <a class="code" href="classXalanDOMString.html">XalanDOMString</a>&amp;       theNameTest,
<a name="l01090"></a>01090             <span class="keyword">const</span> PrefixResolver&amp;       thePrefixResolver,
<a name="l01091"></a>01091             <span class="keyword">const</span> Locator*          theLocator);
<a name="l01092"></a>01092 
<a name="l01093"></a>01093         <a class="code" href="classXPath.html#a4b8fda385955090f1e265372de4fce7f">eMatchScore</a>
<a name="l01094"></a>01094         initialize(
<a name="l01095"></a>01095             <span class="keyword">const</span> <a class="code" href="classXalanDOMString.html">XalanDOMString</a>&amp;   theNamespaceURI,
<a name="l01096"></a>01096             <span class="keyword">const</span> <a class="code" href="classXalanDOMString.html">XalanDOMString</a>&amp;   theLocalName);
<a name="l01097"></a>01097 
<a name="l01098"></a>01098     <span class="keyword">private</span>:
<a name="l01099"></a>01099 
<a name="l01100"></a>01100 
<a name="l01101"></a>01101         <span class="keyword">typedef</span> <a class="code" href="classXPath.html#a4b8fda385955090f1e265372de4fce7f">eMatchScore</a> (<a class="code" href="classXPath_1_1NodeTester.html">NodeTester</a>::*TestFunctionPtr)(<span class="keyword">const</span> XalanNode&amp;, XalanNode::NodeType) <span class="keyword">const</span>;
<a name="l01102"></a>01102         <span class="keyword">typedef</span> <a class="code" href="classXPath.html#a4b8fda385955090f1e265372de4fce7f">eMatchScore</a> (<a class="code" href="classXPath_1_1NodeTester.html">NodeTester</a>::*TestFunctionPtr2)(<span class="keyword">const</span> XalanElement&amp;) <span class="keyword">const</span>;
<a name="l01103"></a>01103 
<a name="l01104"></a>01104 
<a name="l01105"></a>01105         <a class="code" href="classXPath.html#a4b8fda385955090f1e265372de4fce7f">eMatchScore</a>
<a name="l01106"></a>01106         testComment(
<a name="l01107"></a>01107             <span class="keyword">const</span> XalanNode&amp;        context,
<a name="l01108"></a>01108             <a class="code" href="classXalanNode.html#a93d60cd336327226e55c45a320cced24">XalanNode::NodeType</a>     nodeType) <span class="keyword">const</span>;
<a name="l01109"></a>01109 
<a name="l01110"></a>01110         <a class="code" href="classXPath.html#a4b8fda385955090f1e265372de4fce7f">eMatchScore</a>
<a name="l01111"></a>01111         testText(
<a name="l01112"></a>01112             <span class="keyword">const</span> XalanNode&amp;        context,
<a name="l01113"></a>01113             <a class="code" href="classXalanNode.html#a93d60cd336327226e55c45a320cced24">XalanNode::NodeType</a>     nodeType) <span class="keyword">const</span>;
<a name="l01114"></a>01114 
<a name="l01115"></a>01115         <a class="code" href="classXPath.html#a4b8fda385955090f1e265372de4fce7f">eMatchScore</a>
<a name="l01116"></a>01116         testPI(
<a name="l01117"></a>01117             <span class="keyword">const</span> XalanNode&amp;        context,
<a name="l01118"></a>01118             <a class="code" href="classXalanNode.html#a93d60cd336327226e55c45a320cced24">XalanNode::NodeType</a>     nodeType) <span class="keyword">const</span>;
<a name="l01119"></a>01119 
<a name="l01120"></a>01120         <a class="code" href="classXPath.html#a4b8fda385955090f1e265372de4fce7f">eMatchScore</a>
<a name="l01121"></a>01121         testPIName(
<a name="l01122"></a>01122             <span class="keyword">const</span> XalanNode&amp;        context,
<a name="l01123"></a>01123             <a class="code" href="classXalanNode.html#a93d60cd336327226e55c45a320cced24">XalanNode::NodeType</a>     nodeType) <span class="keyword">const</span>;
<a name="l01124"></a>01124 
<a name="l01125"></a>01125         <a class="code" href="classXPath.html#a4b8fda385955090f1e265372de4fce7f">eMatchScore</a>
<a name="l01126"></a>01126         testNode(
<a name="l01127"></a>01127             <span class="keyword">const</span> XalanNode&amp;        context,
<a name="l01128"></a>01128             <a class="code" href="classXalanNode.html#a93d60cd336327226e55c45a320cced24">XalanNode::NodeType</a>     nodeType) <span class="keyword">const</span>;
<a name="l01129"></a>01129 
<a name="l01130"></a>01130         <a class="code" href="classXPath.html#a4b8fda385955090f1e265372de4fce7f">eMatchScore</a>
<a name="l01131"></a>01131         testRoot(
<a name="l01132"></a>01132             <span class="keyword">const</span> XalanNode&amp;        context,
<a name="l01133"></a>01133             <a class="code" href="classXalanNode.html#a93d60cd336327226e55c45a320cced24">XalanNode::NodeType</a>     nodeType) <span class="keyword">const</span>;
<a name="l01134"></a>01134 
<a name="l01135"></a>01135         <a class="code" href="classXPath.html#a4b8fda385955090f1e265372de4fce7f">eMatchScore</a>
<a name="l01136"></a>01136         testAttributeNCName(
<a name="l01137"></a>01137             <span class="keyword">const</span> XalanNode&amp;        context,
<a name="l01138"></a>01138             <a class="code" href="classXalanNode.html#a93d60cd336327226e55c45a320cced24">XalanNode::NodeType</a>     nodeType) <span class="keyword">const</span>;
<a name="l01139"></a>01139 
<a name="l01140"></a>01140         <a class="code" href="classXPath.html#a4b8fda385955090f1e265372de4fce7f">eMatchScore</a>
<a name="l01141"></a>01141         testAttributeQName(
<a name="l01142"></a>01142             <span class="keyword">const</span> XalanNode&amp;        context,
<a name="l01143"></a>01143             <a class="code" href="classXalanNode.html#a93d60cd336327226e55c45a320cced24">XalanNode::NodeType</a>     nodeType) <span class="keyword">const</span>;
<a name="l01144"></a>01144 
<a name="l01145"></a>01145         <a class="code" href="classXPath.html#a4b8fda385955090f1e265372de4fce7f">eMatchScore</a>
<a name="l01146"></a>01146         testAttributeNamespaceOnly(
<a name="l01147"></a>01147             <span class="keyword">const</span> XalanNode&amp;        context,
<a name="l01148"></a>01148             <a class="code" href="classXalanNode.html#a93d60cd336327226e55c45a320cced24">XalanNode::NodeType</a>     nodeType) <span class="keyword">const</span>;
<a name="l01149"></a>01149 
<a name="l01150"></a>01150         <a class="code" href="classXPath.html#a4b8fda385955090f1e265372de4fce7f">eMatchScore</a>
<a name="l01151"></a>01151         testAttributeTotallyWild(
<a name="l01152"></a>01152             <span class="keyword">const</span> XalanNode&amp;        context,
<a name="l01153"></a>01153             <a class="code" href="classXalanNode.html#a93d60cd336327226e55c45a320cced24">XalanNode::NodeType</a>     nodeType) <span class="keyword">const</span>;
<a name="l01154"></a>01154 
<a name="l01155"></a>01155         <a class="code" href="classXPath.html#a4b8fda385955090f1e265372de4fce7f">eMatchScore</a>
<a name="l01156"></a>01156         testElementNCName(
<a name="l01157"></a>01157             <span class="keyword">const</span> XalanNode&amp;        context,
<a name="l01158"></a>01158             <a class="code" href="classXalanNode.html#a93d60cd336327226e55c45a320cced24">XalanNode::NodeType</a>     nodeType) <span class="keyword">const</span>;
<a name="l01159"></a>01159 
<a name="l01160"></a>01160         <a class="code" href="classXPath.html#a4b8fda385955090f1e265372de4fce7f">eMatchScore</a>
<a name="l01161"></a>01161         testElementQName(
<a name="l01162"></a>01162             <span class="keyword">const</span> XalanNode&amp;        context,
<a name="l01163"></a>01163             <a class="code" href="classXalanNode.html#a93d60cd336327226e55c45a320cced24">XalanNode::NodeType</a>     nodeType) <span class="keyword">const</span>;
<a name="l01164"></a>01164 
<a name="l01165"></a>01165         <a class="code" href="classXPath.html#a4b8fda385955090f1e265372de4fce7f">eMatchScore</a>
<a name="l01166"></a>01166         testElementNamespaceOnly(
<a name="l01167"></a>01167             <span class="keyword">const</span> XalanNode&amp;        context,
<a name="l01168"></a>01168             <a class="code" href="classXalanNode.html#a93d60cd336327226e55c45a320cced24">XalanNode::NodeType</a>     nodeType) <span class="keyword">const</span>;
<a name="l01169"></a>01169 
<a name="l01170"></a>01170         <a class="code" href="classXPath.html#a4b8fda385955090f1e265372de4fce7f">eMatchScore</a>
<a name="l01171"></a>01171         testElementTotallyWild(
<a name="l01172"></a>01172             <span class="keyword">const</span> XalanNode&amp;        context,
<a name="l01173"></a>01173             <a class="code" href="classXalanNode.html#a93d60cd336327226e55c45a320cced24">XalanNode::NodeType</a>     nodeType) <span class="keyword">const</span>;
<a name="l01174"></a>01174 
<a name="l01175"></a>01175         <a class="code" href="classXPath.html#a4b8fda385955090f1e265372de4fce7f">eMatchScore</a>
<a name="l01176"></a>01176         testElementNCName2(<span class="keyword">const</span> XalanElement&amp;  context) <span class="keyword">const</span>;
<a name="l01177"></a>01177 
<a name="l01178"></a>01178         <a class="code" href="classXPath.html#a4b8fda385955090f1e265372de4fce7f">eMatchScore</a>
<a name="l01179"></a>01179         testElementQName2(<span class="keyword">const</span> XalanElement&amp;   context) <span class="keyword">const</span>;
<a name="l01180"></a>01180 
<a name="l01181"></a>01181         <a class="code" href="classXPath.html#a4b8fda385955090f1e265372de4fce7f">eMatchScore</a>
<a name="l01182"></a>01182         testElementNamespaceOnly2(<span class="keyword">const</span> XalanElement&amp;   context) <span class="keyword">const</span>;
<a name="l01183"></a>01183 
<a name="l01184"></a>01184         <a class="code" href="classXPath.html#a4b8fda385955090f1e265372de4fce7f">eMatchScore</a>
<a name="l01185"></a>01185         testElementTotallyWild2(<span class="keyword">const</span> XalanElement&amp;     context) <span class="keyword">const</span>;
<a name="l01186"></a>01186 
<a name="l01187"></a>01187         <a class="code" href="classXPath.html#a4b8fda385955090f1e265372de4fce7f">eMatchScore</a>
<a name="l01188"></a>01188         testNamespaceNCName(
<a name="l01189"></a>01189             <span class="keyword">const</span> XalanNode&amp;        context,
<a name="l01190"></a>01190             <a class="code" href="classXalanNode.html#a93d60cd336327226e55c45a320cced24">XalanNode::NodeType</a>     nodeType) <span class="keyword">const</span>;
<a name="l01191"></a>01191 
<a name="l01192"></a>01192         <a class="code" href="classXPath.html#a4b8fda385955090f1e265372de4fce7f">eMatchScore</a>
<a name="l01193"></a>01193         testNamespaceTotallyWild(
<a name="l01194"></a>01194             <span class="keyword">const</span> XalanNode&amp;        context,
<a name="l01195"></a>01195             <a class="code" href="classXalanNode.html#a93d60cd336327226e55c45a320cced24">XalanNode::NodeType</a>     nodeType) <span class="keyword">const</span>;
<a name="l01196"></a>01196 
<a name="l01197"></a>01197         <a class="code" href="classXPath.html#a4b8fda385955090f1e265372de4fce7f">eMatchScore</a>
<a name="l01198"></a>01198         testDefault(
<a name="l01199"></a>01199             <span class="keyword">const</span> XalanNode&amp;        context,
<a name="l01200"></a>01200             <a class="code" href="classXalanNode.html#a93d60cd336327226e55c45a320cced24">XalanNode::NodeType</a>     nodeType) <span class="keyword">const</span>;
<a name="l01201"></a>01201 
<a name="l01202"></a>01202         <a class="code" href="classXPath.html#a4b8fda385955090f1e265372de4fce7f">eMatchScore</a>
<a name="l01203"></a>01203         testDefault2(<span class="keyword">const</span> XalanElement&amp;    context) <span class="keyword">const</span>;
<a name="l01204"></a>01204 
<a name="l01205"></a>01205         <span class="keywordtype">bool</span>
<a name="l01206"></a>01206         matchLocalName(<span class="keyword">const</span> XalanNode&amp;     context) <span class="keyword">const</span>;
<a name="l01207"></a>01207 
<a name="l01208"></a>01208         <span class="keywordtype">bool</span>
<a name="l01209"></a>01209         matchNamespaceURI(<span class="keyword">const</span> XalanNode&amp;  context) <span class="keyword">const</span>;
<a name="l01210"></a>01210 
<a name="l01211"></a>01211         <span class="keywordtype">bool</span>
<a name="l01212"></a>01212         matchLocalNameAndNamespaceURI(<span class="keyword">const</span> XalanNode&amp;  context) <span class="keyword">const</span>;
<a name="l01213"></a>01213 
<a name="l01214"></a>01214         <span class="keywordtype">bool</span>
<a name="l01215"></a>01215         matchNamespace(<span class="keyword">const</span> XalanNode&amp;     context) <span class="keyword">const</span>;
<a name="l01216"></a>01216 
<a name="l01217"></a>01217         <span class="keywordtype">bool</span>
<a name="l01218"></a>01218         shouldStripSourceNode(<span class="keyword">const</span> <a class="code" href="classXalanText.html">XalanText</a>&amp;  context) <span class="keyword">const</span>;
<a name="l01219"></a>01219 
<a name="l01220"></a>01220         <span class="comment">// Data members...</span>
<a name="l01221"></a>01221         <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>*  m_executionContext;
<a name="l01222"></a>01222 
<a name="l01223"></a>01223         <span class="keyword">const</span> <a class="code" href="classXalanDOMString.html">XalanDOMString</a>*   m_targetNamespace;
<a name="l01224"></a>01224 
<a name="l01225"></a>01225         <span class="keyword">const</span> <a class="code" href="classXalanDOMString.html">XalanDOMString</a>*   m_targetLocalName;
<a name="l01226"></a>01226 
<a name="l01227"></a>01227         TestFunctionPtr         m_testFunction;
<a name="l01228"></a>01228 
<a name="l01229"></a>01229         TestFunctionPtr2        m_testFunction2;
<a name="l01230"></a>01230     };
<a name="l01231"></a>01231 
<a name="l01232"></a><a class="code" href="classXPath.html#a808741955311f108fba6f0708120bcae">01232</a>     <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classXPath_1_1NodeTester.html">NodeTester</a>;
<a name="l01233"></a>01233 
<a name="l01234"></a>01234 <span class="keyword">protected</span>:
<a name="l01235"></a>01235 <span class="comment"></span>
<a name="l01236"></a>01236 <span class="comment">    /**</span>
<a name="l01237"></a>01237 <span class="comment">     * Execute a location path.</span>
<a name="l01238"></a>01238 <span class="comment">     *</span>
<a name="l01239"></a>01239 <span class="comment">     * @param context          current source tree context node</span>
<a name="l01240"></a>01240 <span class="comment">     * @param opPos            current position in the Op Mpa</span>
<a name="l01241"></a>01241 <span class="comment">     * @param executionContext current execution context</span>
<a name="l01242"></a>01242 <span class="comment">     * @return node-set</span>
<a name="l01243"></a>01243 <span class="comment">     */</span>
<a name="l01244"></a>01244     <span class="keyword">const</span> <a class="code" href="classXObjectPtr.html" title="Class to hold XObjectPtr return types.">XObjectPtr</a>
<a name="l01245"></a>01245     locationPath(
<a name="l01246"></a>01246             XalanNode*              context,
<a name="l01247"></a>01247             OpCodeMapPositionType   opPos,
<a name="l01248"></a>01248             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext) <span class="keyword">const</span>;
<a name="l01249"></a>01249 <span class="comment"></span>
<a name="l01250"></a>01250 <span class="comment">    /**</span>
<a name="l01251"></a>01251 <span class="comment">     * Execute a location path.</span>
<a name="l01252"></a>01252 <span class="comment">     *</span>
<a name="l01253"></a>01253 <span class="comment">     * @param context          current source tree context node</span>
<a name="l01254"></a>01254 <span class="comment">     * @param opPos            current position in the Op Map</span>
<a name="l01255"></a>01255 <span class="comment">     * @param executionContext current execution context</span>
<a name="l01256"></a>01256 <span class="comment">     * @param theResult        the result as a node list</span>
<a name="l01257"></a>01257 <span class="comment">     */</span>
<a name="l01258"></a>01258     <span class="keywordtype">void</span>
<a name="l01259"></a>01259     locationPath(
<a name="l01260"></a>01260             XalanNode*              context,
<a name="l01261"></a>01261             OpCodeMapPositionType   opPos,
<a name="l01262"></a>01262             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext,
<a name="l01263"></a>01263             <span class="keywordtype">bool</span>&amp;                   <a class="code" href="XalanDOMString_8hpp.html#ad0987a2085caff760532b7f16b5c6f2e">theResult</a>) <span class="keyword">const</span>;
<a name="l01264"></a>01264 <span class="comment"></span>
<a name="l01265"></a>01265 <span class="comment">    /**</span>
<a name="l01266"></a>01266 <span class="comment">     * Execute a location path.</span>
<a name="l01267"></a>01267 <span class="comment">     *</span>
<a name="l01268"></a>01268 <span class="comment">     * @param context          current source tree context node</span>
<a name="l01269"></a>01269 <span class="comment">     * @param opPos            current position in the Op Map</span>
<a name="l01270"></a>01270 <span class="comment">     * @param executionContext current execution context</span>
<a name="l01271"></a>01271 <span class="comment">     * @param theResult        the result as a node list</span>
<a name="l01272"></a>01272 <span class="comment">     */</span>
<a name="l01273"></a>01273     <span class="keywordtype">void</span>
<a name="l01274"></a>01274     locationPath(
<a name="l01275"></a>01275             XalanNode*              context,
<a name="l01276"></a>01276             OpCodeMapPositionType   opPos,
<a name="l01277"></a>01277             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext,
<a name="l01278"></a>01278             <span class="keywordtype">double</span>&amp;                 <a class="code" href="XalanDOMString_8hpp.html#ad0987a2085caff760532b7f16b5c6f2e">theResult</a>) <span class="keyword">const</span>;
<a name="l01279"></a>01279 <span class="comment"></span>
<a name="l01280"></a>01280 <span class="comment">    /**</span>
<a name="l01281"></a>01281 <span class="comment">     * Execute a location path.</span>
<a name="l01282"></a>01282 <span class="comment">     *</span>
<a name="l01283"></a>01283 <span class="comment">     * @param context          current source tree context node</span>
<a name="l01284"></a>01284 <span class="comment">     * @param opPos            current position in the Op Map</span>
<a name="l01285"></a>01285 <span class="comment">     * @param executionContext current execution context</span>
<a name="l01286"></a>01286 <span class="comment">     * @param theResult        the result as a node list</span>
<a name="l01287"></a>01287 <span class="comment">     */</span>
<a name="l01288"></a>01288     <span class="keywordtype">void</span>
<a name="l01289"></a>01289     locationPath(
<a name="l01290"></a>01290             XalanNode*              context,
<a name="l01291"></a>01291             OpCodeMapPositionType   opPos,
<a name="l01292"></a>01292             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext,
<a name="l01293"></a>01293             <a class="code" href="classXalanDOMString.html">XalanDOMString</a>&amp;         <a class="code" href="XalanDOMString_8hpp.html#ad0987a2085caff760532b7f16b5c6f2e">theResult</a>) <span class="keyword">const</span>;
<a name="l01294"></a>01294 <span class="comment"></span>
<a name="l01295"></a>01295 <span class="comment">    /**</span>
<a name="l01296"></a>01296 <span class="comment">     * Execute a location path.</span>
<a name="l01297"></a>01297 <span class="comment">     *</span>
<a name="l01298"></a>01298 <span class="comment">     * @param context          current source tree context node</span>
<a name="l01299"></a>01299 <span class="comment">     * @param opPos            current position in the Op Map</span>
<a name="l01300"></a>01300 <span class="comment">     * @param executionContext current execution context</span>
<a name="l01301"></a>01301 <span class="comment">     * @param formatterListener the FormatterListener instance to receive the result</span>
<a name="l01302"></a>01302 <span class="comment">     * @param function A pointer to the member function of FormatterListener to call</span>
<a name="l01303"></a>01303 <span class="comment">     */</span>
<a name="l01304"></a>01304     <span class="keywordtype">void</span>
<a name="l01305"></a>01305     locationPath(
<a name="l01306"></a>01306             XalanNode*              context,
<a name="l01307"></a>01307             OpCodeMapPositionType   opPos,
<a name="l01308"></a>01308             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext,
<a name="l01309"></a>01309             <a class="code" href="classFormatterListener.html" title="A SAX-based formatter interface for the XSL processor.">FormatterListener</a>&amp;      formatterListener,
<a name="l01310"></a>01310             MemberFunctionPtr       function) <span class="keyword">const</span>;
<a name="l01311"></a>01311 <span class="comment"></span>
<a name="l01312"></a>01312 <span class="comment">    /**</span>
<a name="l01313"></a>01313 <span class="comment">     * Execute a location path.</span>
<a name="l01314"></a>01314 <span class="comment">     *</span>
<a name="l01315"></a>01315 <span class="comment">     * @param context          current source tree context node</span>
<a name="l01316"></a>01316 <span class="comment">     * @param opPos            current position in the Op Map</span>
<a name="l01317"></a>01317 <span class="comment">     * @param executionContext current execution context</span>
<a name="l01318"></a>01318 <span class="comment">     * @param theResult        the result as a node list</span>
<a name="l01319"></a>01319 <span class="comment">     */</span>
<a name="l01320"></a>01320     <span class="keywordtype">void</span>
<a name="l01321"></a><a class="code" href="classXPath.html#aa7f53bd70f2102da90227413df9454b8">01321</a>     locationPath(
<a name="l01322"></a>01322             XalanNode*              context,
<a name="l01323"></a>01323             OpCodeMapPositionType   opPos,
<a name="l01324"></a>01324             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext,
<a name="l01325"></a>01325             <a class="code" href="classMutableNodeRefList.html" title="Local implementation of MutableNodeRefList.">MutableNodeRefList</a>&amp;     <a class="code" href="XalanDOMString_8hpp.html#ad0987a2085caff760532b7f16b5c6f2e">theResult</a>)<span class="keyword"> const</span>
<a name="l01326"></a>01326 <span class="keyword">    </span>{
<a name="l01327"></a>01327         step(executionContext, context, opPos + 2, theResult);
<a name="l01328"></a>01328     }
<a name="l01329"></a>01329 <span class="comment"></span>
<a name="l01330"></a>01330 <span class="comment">    /**</span>
<a name="l01331"></a>01331 <span class="comment">     * Execute the XPath from the provided context.</span>
<a name="l01332"></a>01332 <span class="comment">     *</span>
<a name="l01333"></a>01333 <span class="comment">     * @param context          current source tree context node</span>
<a name="l01334"></a>01334 <span class="comment">     * @param opPos            current position in the Op Map</span>
<a name="l01335"></a>01335 <span class="comment">     * @param executionContext current execution context</span>
<a name="l01336"></a>01336 <span class="comment">     * @return pointer to union of node-set operands</span>
<a name="l01337"></a>01337 <span class="comment">     */</span>
<a name="l01338"></a>01338     <span class="keyword">const</span> <a class="code" href="classXObjectPtr.html" title="Class to hold XObjectPtr return types.">XObjectPtr</a>
<a name="l01339"></a>01339     executeMore(
<a name="l01340"></a>01340             XalanNode*              context,
<a name="l01341"></a>01341             OpCodeMapPositionType   opPos,
<a name="l01342"></a>01342             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext) <span class="keyword">const</span>;
<a name="l01343"></a>01343 <span class="comment"></span>
<a name="l01344"></a>01344 <span class="comment">    /**</span>
<a name="l01345"></a>01345 <span class="comment">     * Execute the XPath from the provided context.</span>
<a name="l01346"></a>01346 <span class="comment">     *</span>
<a name="l01347"></a>01347 <span class="comment">     * @param context          current source tree context node</span>
<a name="l01348"></a>01348 <span class="comment">     * @param opPos            current position in the Op Map</span>
<a name="l01349"></a>01349 <span class="comment">     * @param executionContext current execution context</span>
<a name="l01350"></a>01350 <span class="comment">     * @param theResult        The result of the execution</span>
<a name="l01351"></a>01351 <span class="comment">     */</span>
<a name="l01352"></a>01352     <span class="keywordtype">void</span>
<a name="l01353"></a>01353     executeMore(
<a name="l01354"></a>01354             XalanNode*              context,
<a name="l01355"></a>01355             OpCodeMapPositionType   opPos,
<a name="l01356"></a>01356             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext,
<a name="l01357"></a>01357             <span class="keywordtype">bool</span>&amp;                   <a class="code" href="XalanDOMString_8hpp.html#ad0987a2085caff760532b7f16b5c6f2e">theResult</a>) <span class="keyword">const</span>;
<a name="l01358"></a>01358 <span class="comment"></span>
<a name="l01359"></a>01359 <span class="comment">    /**</span>
<a name="l01360"></a>01360 <span class="comment">     * Execute the XPath from the provided context.</span>
<a name="l01361"></a>01361 <span class="comment">     *</span>
<a name="l01362"></a>01362 <span class="comment">     * @param context          current source tree context node</span>
<a name="l01363"></a>01363 <span class="comment">     * @param opPos            current position in the Op Map</span>
<a name="l01364"></a>01364 <span class="comment">     * @param executionContext current execution context</span>
<a name="l01365"></a>01365 <span class="comment">     * @param theResult        The result of the execution</span>
<a name="l01366"></a>01366 <span class="comment">     */</span>
<a name="l01367"></a>01367     <span class="keywordtype">void</span>
<a name="l01368"></a>01368     executeMore(
<a name="l01369"></a>01369             XalanNode*              context,
<a name="l01370"></a>01370             OpCodeMapPositionType   opPos,
<a name="l01371"></a>01371             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext,
<a name="l01372"></a>01372             <span class="keywordtype">double</span>&amp;                 <a class="code" href="XalanDOMString_8hpp.html#ad0987a2085caff760532b7f16b5c6f2e">theResult</a>) <span class="keyword">const</span>;
<a name="l01373"></a>01373 <span class="comment"></span>
<a name="l01374"></a>01374 <span class="comment">    /**</span>
<a name="l01375"></a>01375 <span class="comment">     * Execute the XPath from the provided context.  The result</span>
<a name="l01376"></a>01376 <span class="comment">     * is appended to the supplied string.</span>
<a name="l01377"></a>01377 <span class="comment">     *</span>
<a name="l01378"></a>01378 <span class="comment">     * @param context          current source tree context node</span>
<a name="l01379"></a>01379 <span class="comment">     * @param opPos            current position in the Op Map</span>
<a name="l01380"></a>01380 <span class="comment">     * @param executionContext current execution context</span>
<a name="l01381"></a>01381 <span class="comment">     * @param theResult        The result of the execution</span>
<a name="l01382"></a>01382 <span class="comment">     */</span>
<a name="l01383"></a>01383     <span class="keywordtype">void</span>
<a name="l01384"></a>01384     executeMore(
<a name="l01385"></a>01385             XalanNode*              context,
<a name="l01386"></a>01386             OpCodeMapPositionType   opPos,
<a name="l01387"></a>01387             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext,
<a name="l01388"></a>01388             <a class="code" href="classXalanDOMString.html">XalanDOMString</a>&amp;         <a class="code" href="XalanDOMString_8hpp.html#ad0987a2085caff760532b7f16b5c6f2e">theResult</a>) <span class="keyword">const</span>;
<a name="l01389"></a>01389 <span class="comment"></span>
<a name="l01390"></a>01390 <span class="comment">    /**</span>
<a name="l01391"></a>01391 <span class="comment">     * Execute the XPath from the provided context.</span>
<a name="l01392"></a>01392 <span class="comment">     *</span>
<a name="l01393"></a>01393 <span class="comment">     * @param context          current source tree context node</span>
<a name="l01394"></a>01394 <span class="comment">     * @param opPos            current position in the Op Map</span>
<a name="l01395"></a>01395 <span class="comment">     * @param executionContext current execution context</span>
<a name="l01396"></a>01396 <span class="comment">     * @param formatterListener the FormatterListener instance to receive the result</span>
<a name="l01397"></a>01397 <span class="comment">     * @param function A pointer to the member function of FormatterListener to call</span>
<a name="l01398"></a>01398 <span class="comment">     */</span>
<a name="l01399"></a>01399     <span class="keywordtype">void</span>
<a name="l01400"></a>01400     executeMore(
<a name="l01401"></a>01401             XalanNode*              context,
<a name="l01402"></a>01402             OpCodeMapPositionType   opPos,
<a name="l01403"></a>01403             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext,
<a name="l01404"></a>01404             <a class="code" href="classFormatterListener.html" title="A SAX-based formatter interface for the XSL processor.">FormatterListener</a>&amp;      formatterListener,
<a name="l01405"></a>01405             MemberFunctionPtr       function) <span class="keyword">const</span>;
<a name="l01406"></a>01406 <span class="comment"></span>
<a name="l01407"></a>01407 <span class="comment">    /**</span>
<a name="l01408"></a>01408 <span class="comment">     * Execute the XPath from the provided context.</span>
<a name="l01409"></a>01409 <span class="comment">     *</span>
<a name="l01410"></a>01410 <span class="comment">     * @param context          current source tree context node</span>
<a name="l01411"></a>01411 <span class="comment">     * @param opPos            current position in the Op Map</span>
<a name="l01412"></a>01412 <span class="comment">     * @param executionContext current execution context</span>
<a name="l01413"></a>01413 <span class="comment">     * @param theResult        The result of the execution</span>
<a name="l01414"></a>01414 <span class="comment">     * @return the node-set result, if the result was not returned in the parameter</span>
<a name="l01415"></a>01415 <span class="comment">     */</span>
<a name="l01416"></a>01416     <span class="keyword">const</span> <a class="code" href="classXObjectPtr.html" title="Class to hold XObjectPtr return types.">XObjectPtr</a>
<a name="l01417"></a>01417     executeMore(
<a name="l01418"></a>01418             XalanNode*              context,
<a name="l01419"></a>01419             OpCodeMapPositionType   opPos,
<a name="l01420"></a>01420             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext,
<a name="l01421"></a>01421             <a class="code" href="classMutableNodeRefList.html" title="Local implementation of MutableNodeRefList.">MutableNodeRefList</a>&amp;     <a class="code" href="XalanDOMString_8hpp.html#ad0987a2085caff760532b7f16b5c6f2e">theResult</a>) <span class="keyword">const</span>;
<a name="l01422"></a>01422 <span class="comment"></span>
<a name="l01423"></a>01423 <span class="comment">    /**</span>
<a name="l01424"></a>01424 <span class="comment">     * Helper function to get match score.</span>
<a name="l01425"></a>01425 <span class="comment">     * @param context The current source tree context node.</span>
<a name="l01426"></a>01426 <span class="comment">     * @param executionContext The current execution context</span>
<a name="l01427"></a>01427 <span class="comment">     * @param score The match score</span>
<a name="l01428"></a>01428 <span class="comment">     */</span>
<a name="l01429"></a>01429     <span class="keywordtype">void</span>
<a name="l01430"></a>01430     doGetMatchScore(
<a name="l01431"></a>01431             XalanNode*              context,
<a name="l01432"></a>01432             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext,
<a name="l01433"></a>01433             eMatchScore&amp;            score) <span class="keyword">const</span>;
<a name="l01434"></a>01434 <span class="comment"></span>
<a name="l01435"></a>01435 <span class="comment">    /**</span>
<a name="l01436"></a>01436 <span class="comment">     * OR two expressions and return the boolean result.</span>
<a name="l01437"></a>01437 <span class="comment">     * @param context The current source tree context node.</span>
<a name="l01438"></a>01438 <span class="comment">     * @param opPos The current position in the Op Map.</span>
<a name="l01439"></a>01439 <span class="comment">     * @param executionContext current execution context</span>
<a name="l01440"></a>01440 <span class="comment">     * @return true if the one of the two arguments are true.</span>
<a name="l01441"></a>01441 <span class="comment">     */</span>
<a name="l01442"></a>01442     <span class="keywordtype">bool</span>
<a name="l01443"></a>01443     Or(
<a name="l01444"></a>01444             XalanNode*              context,
<a name="l01445"></a>01445             OpCodeMapPositionType   opPos,
<a name="l01446"></a>01446             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext) <span class="keyword">const</span>;
<a name="l01447"></a>01447 <span class="comment"></span>
<a name="l01448"></a>01448 <span class="comment">    /**</span>
<a name="l01449"></a>01449 <span class="comment">     * OR two expressions and return the boolean result.</span>
<a name="l01450"></a>01450 <span class="comment">     * @param context The current source tree context node.</span>
<a name="l01451"></a>01451 <span class="comment">     * @param opPos The current position in the Op Map.</span>
<a name="l01452"></a>01452 <span class="comment">     * @param executionContext current execution context</span>
<a name="l01453"></a>01453 <span class="comment">     * @return true if the two arguments are both true.</span>
<a name="l01454"></a>01454 <span class="comment">     */</span>
<a name="l01455"></a>01455     <span class="keywordtype">bool</span>
<a name="l01456"></a>01456     And(
<a name="l01457"></a>01457             XalanNode*              context,
<a name="l01458"></a>01458             OpCodeMapPositionType   opPos,
<a name="l01459"></a>01459             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext) <span class="keyword">const</span>;
<a name="l01460"></a>01460 <span class="comment"></span>
<a name="l01461"></a>01461 <span class="comment">    /**</span>
<a name="l01462"></a>01462 <span class="comment">     * Tell if two expressions are functionally not equal.</span>
<a name="l01463"></a>01463 <span class="comment">     * @param context The current source tree context node.</span>
<a name="l01464"></a>01464 <span class="comment">     * @param opPos The current position in the Op Map.</span>
<a name="l01465"></a>01465 <span class="comment">     * @param executionContext current execution context</span>
<a name="l01466"></a>01466 <span class="comment">     * @return true if the two arguments are not equal.</span>
<a name="l01467"></a>01467 <span class="comment">     */</span>
<a name="l01468"></a>01468     <span class="keywordtype">bool</span>
<a name="l01469"></a>01469     notequals(
<a name="l01470"></a>01470             XalanNode*              context,
<a name="l01471"></a>01471             OpCodeMapPositionType   opPos,
<a name="l01472"></a>01472             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext) <span class="keyword">const</span>;
<a name="l01473"></a>01473 <span class="comment"></span>
<a name="l01474"></a>01474 <span class="comment">    /**</span>
<a name="l01475"></a>01475 <span class="comment">     * Tell if two expressions are functionally equal.</span>
<a name="l01476"></a>01476 <span class="comment">     * @param context The current source tree context node.</span>
<a name="l01477"></a>01477 <span class="comment">     * @param opPos The current position in the Op Map.</span>
<a name="l01478"></a>01478 <span class="comment">     * @param executionContext current execution context</span>
<a name="l01479"></a>01479 <span class="comment">     * @return true if the two arguments are equal.</span>
<a name="l01480"></a>01480 <span class="comment">     */</span>
<a name="l01481"></a>01481     <span class="keywordtype">bool</span>
<a name="l01482"></a>01482     <a class="code" href="DOMStringHelper_8hpp.html#affde9d545fd2e9ade2b7c5e03f383e79" title="Compare the contents of two arrays for equality.">equals</a>(
<a name="l01483"></a>01483             XalanNode*              context,
<a name="l01484"></a>01484             OpCodeMapPositionType   opPos,
<a name="l01485"></a>01485             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext) <span class="keyword">const</span>;
<a name="l01486"></a>01486 <span class="comment"></span>
<a name="l01487"></a>01487 <span class="comment">    /**</span>
<a name="l01488"></a>01488 <span class="comment">     * Tell if one argument is less than or equal to the other argument.</span>
<a name="l01489"></a>01489 <span class="comment">     * @param context The current source tree context node.</span>
<a name="l01490"></a>01490 <span class="comment">     * @param opPos The current position in the Op Map.</span>
<a name="l01491"></a>01491 <span class="comment">     * @param executionContext current execution context</span>
<a name="l01492"></a>01492 <span class="comment">     * @return true if arg 1 is less than or equal to arg 2.</span>
<a name="l01493"></a>01493 <span class="comment">     */</span>
<a name="l01494"></a>01494     <span class="keywordtype">bool</span>
<a name="l01495"></a>01495     lte(
<a name="l01496"></a>01496             XalanNode*              context,
<a name="l01497"></a>01497             OpCodeMapPositionType   opPos,
<a name="l01498"></a>01498             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext) <span class="keyword">const</span>;
<a name="l01499"></a>01499 <span class="comment"></span>
<a name="l01500"></a>01500 <span class="comment">    /**</span>
<a name="l01501"></a>01501 <span class="comment">     * Tell if one argument is less than the other argument.</span>
<a name="l01502"></a>01502 <span class="comment">     * @param context The current source tree context node.</span>
<a name="l01503"></a>01503 <span class="comment">     * @param opPos The current position in the Op Map.</span>
<a name="l01504"></a>01504 <span class="comment">     * @param executionContext current execution context</span>
<a name="l01505"></a>01505 <span class="comment">     * @return true if arg 1 is less than arg 2.</span>
<a name="l01506"></a>01506 <span class="comment">     */</span>
<a name="l01507"></a>01507     <span class="keywordtype">bool</span>
<a name="l01508"></a>01508     lt(
<a name="l01509"></a>01509             XalanNode*              context,
<a name="l01510"></a>01510             OpCodeMapPositionType   opPos,
<a name="l01511"></a>01511             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext) <span class="keyword">const</span>;
<a name="l01512"></a>01512 <span class="comment"></span>
<a name="l01513"></a>01513 <span class="comment">    /**</span>
<a name="l01514"></a>01514 <span class="comment">     * Tell if one argument is greater than or equal to the other argument.</span>
<a name="l01515"></a>01515 <span class="comment">     * @param context The current source tree context node.</span>
<a name="l01516"></a>01516 <span class="comment">     * @param opPos The current position in the Op Map.</span>
<a name="l01517"></a>01517 <span class="comment">     * @param executionContext current execution context</span>
<a name="l01518"></a>01518 <span class="comment">     * @return true if arg 1 is greater than or equal to arg 2.</span>
<a name="l01519"></a>01519 <span class="comment">     */</span>
<a name="l01520"></a>01520     <span class="keywordtype">bool</span>
<a name="l01521"></a>01521     gte(
<a name="l01522"></a>01522             XalanNode*              context,
<a name="l01523"></a>01523             OpCodeMapPositionType   opPos,
<a name="l01524"></a>01524             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext) <span class="keyword">const</span>;
<a name="l01525"></a>01525 <span class="comment"></span>
<a name="l01526"></a>01526 <span class="comment">    /**</span>
<a name="l01527"></a>01527 <span class="comment">     * Tell if one argument is greater than the other argument.</span>
<a name="l01528"></a>01528 <span class="comment">     * @param context The current source tree context node.</span>
<a name="l01529"></a>01529 <span class="comment">     * @param opPos The current position in the Op Map.</span>
<a name="l01530"></a>01530 <span class="comment">     * @param executionContext current execution context</span>
<a name="l01531"></a>01531 <span class="comment">     * @return true if arg 1 is greater than arg 2.</span>
<a name="l01532"></a>01532 <span class="comment">     */</span>
<a name="l01533"></a>01533     <span class="keywordtype">bool</span>
<a name="l01534"></a>01534     gt(
<a name="l01535"></a>01535             XalanNode*              context,
<a name="l01536"></a>01536             OpCodeMapPositionType   opPos,
<a name="l01537"></a>01537             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext) <span class="keyword">const</span>;
<a name="l01538"></a>01538 <span class="comment"></span>
<a name="l01539"></a>01539 <span class="comment">    /**</span>
<a name="l01540"></a>01540 <span class="comment">     * Give the sum of two arguments.</span>
<a name="l01541"></a>01541 <span class="comment">     * @param context The current source tree context node.</span>
<a name="l01542"></a>01542 <span class="comment">     * @param opPos The current position in the Op Map.</span>
<a name="l01543"></a>01543 <span class="comment">     * @param executionContext current execution context</span>
<a name="l01544"></a>01544 <span class="comment">     * @return sum of arg1 and arg2.</span>
<a name="l01545"></a>01545 <span class="comment">     */</span>
<a name="l01546"></a>01546     <span class="keywordtype">double</span>
<a name="l01547"></a>01547     plus(
<a name="l01548"></a>01548             XalanNode*              context,
<a name="l01549"></a>01549             OpCodeMapPositionType   opPos,
<a name="l01550"></a>01550             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext) <span class="keyword">const</span>;
<a name="l01551"></a>01551 <span class="comment"></span>
<a name="l01552"></a>01552 <span class="comment">    /**</span>
<a name="l01553"></a>01553 <span class="comment">     * Give the sum of two arguments.</span>
<a name="l01554"></a>01554 <span class="comment">     * @param context The current source tree context node.</span>
<a name="l01555"></a>01555 <span class="comment">     * @param opPos The current position in the Op Map.</span>
<a name="l01556"></a>01556 <span class="comment">     * @param executionContext current execution context</span>
<a name="l01557"></a>01557 <span class="comment">     * @param formatterListener the FormatterListener instance to receive the result</span>
<a name="l01558"></a>01558 <span class="comment">     * @param function A pointer to the member function of FormatterListener to call</span>
<a name="l01559"></a>01559 <span class="comment">     */</span>
<a name="l01560"></a>01560     <span class="keywordtype">void</span>
<a name="l01561"></a>01561     plus(
<a name="l01562"></a>01562             XalanNode*              context,
<a name="l01563"></a>01563             OpCodeMapPositionType   opPos,
<a name="l01564"></a>01564             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext,
<a name="l01565"></a>01565             <a class="code" href="classFormatterListener.html" title="A SAX-based formatter interface for the XSL processor.">FormatterListener</a>&amp;      formatterListener,
<a name="l01566"></a>01566             MemberFunctionPtr       function) <span class="keyword">const</span>;
<a name="l01567"></a>01567 <span class="comment"></span>
<a name="l01568"></a>01568 <span class="comment">    /**</span>
<a name="l01569"></a>01569 <span class="comment">     * Give the difference of two arguments.</span>
<a name="l01570"></a>01570 <span class="comment">     * @param context The current source tree context node.</span>
<a name="l01571"></a>01571 <span class="comment">     * @param opPos The current position in the Op Map.</span>
<a name="l01572"></a>01572 <span class="comment">     * @param executionContext current execution context</span>
<a name="l01573"></a>01573 <span class="comment">     * @return difference of arg1 and arg2.</span>
<a name="l01574"></a>01574 <span class="comment">     */</span>
<a name="l01575"></a>01575     <span class="keywordtype">double</span>
<a name="l01576"></a>01576     minus(
<a name="l01577"></a>01577             XalanNode*              context,
<a name="l01578"></a>01578             OpCodeMapPositionType   opPos,
<a name="l01579"></a>01579             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext) <span class="keyword">const</span>;
<a name="l01580"></a>01580 <span class="comment"></span>
<a name="l01581"></a>01581 <span class="comment">    /**</span>
<a name="l01582"></a>01582 <span class="comment">     * Give the difference of two arguments.</span>
<a name="l01583"></a>01583 <span class="comment">     * @param context The current source tree context node.</span>
<a name="l01584"></a>01584 <span class="comment">     * @param opPos The current position in the Op Map.</span>
<a name="l01585"></a>01585 <span class="comment">     * @param executionContext current execution context</span>
<a name="l01586"></a>01586 <span class="comment">     * @param formatterListener the FormatterListener instance to receive the result</span>
<a name="l01587"></a>01587 <span class="comment">     * @param function A pointer to the member function of FormatterListener to call</span>
<a name="l01588"></a>01588 <span class="comment">     */</span>
<a name="l01589"></a>01589     <span class="keywordtype">void</span>
<a name="l01590"></a>01590     minus(
<a name="l01591"></a>01591             XalanNode*              context,
<a name="l01592"></a>01592             OpCodeMapPositionType   opPos,
<a name="l01593"></a>01593             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext,
<a name="l01594"></a>01594             <a class="code" href="classFormatterListener.html" title="A SAX-based formatter interface for the XSL processor.">FormatterListener</a>&amp;      formatterListener,
<a name="l01595"></a>01595             MemberFunctionPtr       function) <span class="keyword">const</span>;
<a name="l01596"></a>01596 <span class="comment"></span>
<a name="l01597"></a>01597 <span class="comment">    /**</span>
<a name="l01598"></a>01598 <span class="comment">     * Multiply two arguments.</span>
<a name="l01599"></a>01599 <span class="comment">     * @param context The current source tree context node.</span>
<a name="l01600"></a>01600 <span class="comment">     * @param opPos The current position in the Op Map.</span>
<a name="l01601"></a>01601 <span class="comment">     * @param executionContext current execution context</span>
<a name="l01602"></a>01602 <span class="comment">     * @return arg1 * arg2.</span>
<a name="l01603"></a>01603 <span class="comment">     */</span>
<a name="l01604"></a>01604     <span class="keywordtype">double</span>
<a name="l01605"></a>01605     mult(
<a name="l01606"></a>01606             XalanNode*              context,
<a name="l01607"></a>01607             OpCodeMapPositionType   opPos,
<a name="l01608"></a>01608             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext) <span class="keyword">const</span>;
<a name="l01609"></a>01609 <span class="comment"></span>
<a name="l01610"></a>01610 <span class="comment">    /**</span>
<a name="l01611"></a>01611 <span class="comment">     * Multiply two arguments.</span>
<a name="l01612"></a>01612 <span class="comment">     * @param context The current source tree context node.</span>
<a name="l01613"></a>01613 <span class="comment">     * @param opPos The current position in the Op Map.</span>
<a name="l01614"></a>01614 <span class="comment">     * @param executionContext current execution context</span>
<a name="l01615"></a>01615 <span class="comment">     * @param formatterListener the FormatterListener instance to receive the result</span>
<a name="l01616"></a>01616 <span class="comment">     * @param function A pointer to the member function of FormatterListener to call</span>
<a name="l01617"></a>01617 <span class="comment">     */</span>
<a name="l01618"></a>01618     <span class="keywordtype">void</span>
<a name="l01619"></a>01619     mult(
<a name="l01620"></a>01620             XalanNode*              context,
<a name="l01621"></a>01621             OpCodeMapPositionType   opPos,
<a name="l01622"></a>01622             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext,
<a name="l01623"></a>01623             <a class="code" href="classFormatterListener.html" title="A SAX-based formatter interface for the XSL processor.">FormatterListener</a>&amp;      formatterListener,
<a name="l01624"></a>01624             MemberFunctionPtr       function) <span class="keyword">const</span>;
<a name="l01625"></a>01625 <span class="comment"></span>
<a name="l01626"></a>01626 <span class="comment">    /**</span>
<a name="l01627"></a>01627 <span class="comment">     * Divide a number.</span>
<a name="l01628"></a>01628 <span class="comment">     * @param context The current source tree context node.</span>
<a name="l01629"></a>01629 <span class="comment">     * @param opPos The current position in the Op Map.</span>
<a name="l01630"></a>01630 <span class="comment">     * @param executionContext current execution context</span>
<a name="l01631"></a>01631 <span class="comment">     * @return arg1 / arg2.</span>
<a name="l01632"></a>01632 <span class="comment">     */</span>
<a name="l01633"></a>01633     <span class="keywordtype">double</span>
<a name="l01634"></a>01634     div(
<a name="l01635"></a>01635             XalanNode*              context,
<a name="l01636"></a>01636             OpCodeMapPositionType   opPos,
<a name="l01637"></a>01637             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext) <span class="keyword">const</span>;
<a name="l01638"></a>01638 <span class="comment"></span>
<a name="l01639"></a>01639 <span class="comment">    /**</span>
<a name="l01640"></a>01640 <span class="comment">     * Divide a number.</span>
<a name="l01641"></a>01641 <span class="comment">     * @param context The current source tree context node.</span>
<a name="l01642"></a>01642 <span class="comment">     * @param opPos The current position in the Op Map.</span>
<a name="l01643"></a>01643 <span class="comment">     * @param executionContext current execution context</span>
<a name="l01644"></a>01644 <span class="comment">     * @param formatterListener the FormatterListener instance to receive the result</span>
<a name="l01645"></a>01645 <span class="comment">     * @param function A pointer to the member function of FormatterListener to call</span>
<a name="l01646"></a>01646 <span class="comment">     */</span>
<a name="l01647"></a>01647     <span class="keywordtype">void</span>
<a name="l01648"></a>01648     div(
<a name="l01649"></a>01649             XalanNode*              context,
<a name="l01650"></a>01650             OpCodeMapPositionType   opPos,
<a name="l01651"></a>01651             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext,
<a name="l01652"></a>01652             <a class="code" href="classFormatterListener.html" title="A SAX-based formatter interface for the XSL processor.">FormatterListener</a>&amp;      formatterListener,
<a name="l01653"></a>01653             MemberFunctionPtr       function) <span class="keyword">const</span>;
<a name="l01654"></a>01654 <span class="comment"></span>
<a name="l01655"></a>01655 <span class="comment">    /**</span>
<a name="l01656"></a>01656 <span class="comment">     * Return the remainder from a truncating division.</span>
<a name="l01657"></a>01657 <span class="comment">     * @param context The current source tree context node.</span>
<a name="l01658"></a>01658 <span class="comment">     * @param opPos The current position in the Op Map.</span>
<a name="l01659"></a>01659 <span class="comment">     * @param executionContext current execution context</span>
<a name="l01660"></a>01660 <span class="comment">     * @return arg1 mod arg2.</span>
<a name="l01661"></a>01661 <span class="comment">     */</span>
<a name="l01662"></a>01662     <span class="keywordtype">double</span>
<a name="l01663"></a>01663     mod(
<a name="l01664"></a>01664             XalanNode*              context,
<a name="l01665"></a>01665             OpCodeMapPositionType   opPos,
<a name="l01666"></a>01666             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext) <span class="keyword">const</span>;
<a name="l01667"></a>01667 <span class="comment"></span>
<a name="l01668"></a>01668 <span class="comment">    /**</span>
<a name="l01669"></a>01669 <span class="comment">     * Return the remainder from a truncating division.</span>
<a name="l01670"></a>01670 <span class="comment">     * @param context The current source tree context node.</span>
<a name="l01671"></a>01671 <span class="comment">     * @param opPos The current position in the Op Map.</span>
<a name="l01672"></a>01672 <span class="comment">     * @param executionContext current execution context</span>
<a name="l01673"></a>01673 <span class="comment">     * @param formatterListener the FormatterListener instance to receive the result</span>
<a name="l01674"></a>01674 <span class="comment">     * @param function A pointer to the member function of FormatterListener to call</span>
<a name="l01675"></a>01675 <span class="comment">     */</span>
<a name="l01676"></a>01676     <span class="keywordtype">void</span>
<a name="l01677"></a>01677     mod(
<a name="l01678"></a>01678             XalanNode*              context,
<a name="l01679"></a>01679             OpCodeMapPositionType   opPos,
<a name="l01680"></a>01680             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext,
<a name="l01681"></a>01681             <a class="code" href="classFormatterListener.html" title="A SAX-based formatter interface for the XSL processor.">FormatterListener</a>&amp;      formatterListener,
<a name="l01682"></a>01682             MemberFunctionPtr       function) <span class="keyword">const</span>;
<a name="l01683"></a>01683 <span class="comment"></span>
<a name="l01684"></a>01684 <span class="comment">    /**</span>
<a name="l01685"></a>01685 <span class="comment">     * Return the negation of a number.</span>
<a name="l01686"></a>01686 <span class="comment">     * @param context The current source tree context node.</span>
<a name="l01687"></a>01687 <span class="comment">     * @param opPos The current position in the Op Map.</span>
<a name="l01688"></a>01688 <span class="comment">     * @param executionContext current execution context</span>
<a name="l01689"></a>01689 <span class="comment">     * @return -arg.</span>
<a name="l01690"></a>01690 <span class="comment">     */</span>
<a name="l01691"></a>01691     <span class="keywordtype">double</span>
<a name="l01692"></a>01692     neg(
<a name="l01693"></a>01693             XalanNode*              context,
<a name="l01694"></a>01694             OpCodeMapPositionType   opPos,
<a name="l01695"></a>01695             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext) <span class="keyword">const</span>;
<a name="l01696"></a>01696 <span class="comment"></span>
<a name="l01697"></a>01697 <span class="comment">    /**</span>
<a name="l01698"></a>01698 <span class="comment">     * Return the negation of a number.</span>
<a name="l01699"></a>01699 <span class="comment">     * @param context The current source tree context node.</span>
<a name="l01700"></a>01700 <span class="comment">     * @param opPos The current position in the Op Map.</span>
<a name="l01701"></a>01701 <span class="comment">     * @param executionContext current execution context</span>
<a name="l01702"></a>01702 <span class="comment">     * @param formatterListener the FormatterListener instance to receive the result</span>
<a name="l01703"></a>01703 <span class="comment">     * @param function A pointer to the member function of FormatterListener to call</span>
<a name="l01704"></a>01704 <span class="comment">     */</span>
<a name="l01705"></a>01705     <span class="keywordtype">void</span>
<a name="l01706"></a>01706     neg(
<a name="l01707"></a>01707             XalanNode*              context,
<a name="l01708"></a>01708             OpCodeMapPositionType   opPos,
<a name="l01709"></a>01709             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext,
<a name="l01710"></a>01710             <a class="code" href="classFormatterListener.html" title="A SAX-based formatter interface for the XSL processor.">FormatterListener</a>&amp;      formatterListener,
<a name="l01711"></a>01711             MemberFunctionPtr       function) <span class="keyword">const</span>;
<a name="l01712"></a>01712 <span class="comment"></span>
<a name="l01713"></a>01713 <span class="comment">    /**</span>
<a name="l01714"></a>01714 <span class="comment">     * Computes the union of its operands which must be node-sets.</span>
<a name="l01715"></a>01715 <span class="comment">     * @param context The current source tree context node.</span>
<a name="l01716"></a>01716 <span class="comment">     * @param opPos The current position in the Op Map.</span>
<a name="l01717"></a>01717 <span class="comment">     * @param executionContext current execution context</span>
<a name="l01718"></a>01718 <span class="comment">     * @return the union of node-set operands.</span>
<a name="l01719"></a>01719 <span class="comment">     */</span>
<a name="l01720"></a>01720     <span class="keyword">const</span> <a class="code" href="classXObjectPtr.html" title="Class to hold XObjectPtr return types.">XObjectPtr</a>
<a name="l01721"></a>01721     Union(
<a name="l01722"></a>01722             XalanNode*              context,
<a name="l01723"></a>01723             OpCodeMapPositionType   opPos,
<a name="l01724"></a>01724             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext) <span class="keyword">const</span>;
<a name="l01725"></a>01725 <span class="comment"></span>
<a name="l01726"></a>01726 <span class="comment">    /**</span>
<a name="l01727"></a>01727 <span class="comment">     * Computes the union of its operands which must be node-sets.</span>
<a name="l01728"></a>01728 <span class="comment">     *</span>
<a name="l01729"></a>01729 <span class="comment">     * @param context The current source tree context node.</span>
<a name="l01730"></a>01730 <span class="comment">     * @param opPos The current position in the Op Map.</span>
<a name="l01731"></a>01731 <span class="comment">     * @param executionContext current execution context</span>
<a name="l01732"></a>01732 <span class="comment">     * @result the result of the union of node-set operands.</span>
<a name="l01733"></a>01733 <span class="comment">     */</span>
<a name="l01734"></a>01734     <span class="keywordtype">void</span>
<a name="l01735"></a>01735     Union(
<a name="l01736"></a>01736             XalanNode*              context,
<a name="l01737"></a>01737             OpCodeMapPositionType   opPos,
<a name="l01738"></a>01738             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext,
<a name="l01739"></a>01739             <span class="keywordtype">bool</span>&amp;                   result) <span class="keyword">const</span>;
<a name="l01740"></a>01740 <span class="comment"></span>
<a name="l01741"></a>01741 <span class="comment">    /**</span>
<a name="l01742"></a>01742 <span class="comment">     * Computes the union of its operands which must be node-sets.</span>
<a name="l01743"></a>01743 <span class="comment">     *</span>
<a name="l01744"></a>01744 <span class="comment">     * @param context The current source tree context node.</span>
<a name="l01745"></a>01745 <span class="comment">     * @param opPos The current position in the Op Map.</span>
<a name="l01746"></a>01746 <span class="comment">     * @param executionContext current execution context</span>
<a name="l01747"></a>01747 <span class="comment">     * @result the result of the union of node-set operands.</span>
<a name="l01748"></a>01748 <span class="comment">     */</span>
<a name="l01749"></a>01749     <span class="keywordtype">void</span>
<a name="l01750"></a>01750     Union(
<a name="l01751"></a>01751             XalanNode*              context,
<a name="l01752"></a>01752             OpCodeMapPositionType   opPos,
<a name="l01753"></a>01753             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext,
<a name="l01754"></a>01754             <span class="keywordtype">double</span>&amp;                 result) <span class="keyword">const</span>;
<a name="l01755"></a>01755 <span class="comment"></span>
<a name="l01756"></a>01756 <span class="comment">    /**</span>
<a name="l01757"></a>01757 <span class="comment">     * Computes the union of its operands which must be node-sets.</span>
<a name="l01758"></a>01758 <span class="comment">     *</span>
<a name="l01759"></a>01759 <span class="comment">     * @param context The current source tree context node.</span>
<a name="l01760"></a>01760 <span class="comment">     * @param opPos The current position in the Op Map.</span>
<a name="l01761"></a>01761 <span class="comment">     * @param executionContext current execution context</span>
<a name="l01762"></a>01762 <span class="comment">     * @result the result of the union of node-set operands.</span>
<a name="l01763"></a>01763 <span class="comment">     */</span>
<a name="l01764"></a>01764     <span class="keywordtype">void</span>
<a name="l01765"></a>01765     Union(
<a name="l01766"></a>01766             XalanNode*              context,
<a name="l01767"></a>01767             OpCodeMapPositionType   opPos,
<a name="l01768"></a>01768             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext,
<a name="l01769"></a>01769             <a class="code" href="classXalanDOMString.html">XalanDOMString</a>&amp;         result) <span class="keyword">const</span>;
<a name="l01770"></a>01770 <span class="comment"></span>
<a name="l01771"></a>01771 <span class="comment">    /**</span>
<a name="l01772"></a>01772 <span class="comment">     * Computes the union of its operands which must be node-sets.</span>
<a name="l01773"></a>01773 <span class="comment">     *</span>
<a name="l01774"></a>01774 <span class="comment">     * @param context The current source tree context node.</span>
<a name="l01775"></a>01775 <span class="comment">     * @param opPos The current position in the Op Map.</span>
<a name="l01776"></a>01776 <span class="comment">     * @param executionContext current execution context</span>
<a name="l01777"></a>01777 <span class="comment">     * @param formatterListener the FormatterListener instance to receive the result</span>
<a name="l01778"></a>01778 <span class="comment">     * @param function A pointer to the member function of FormatterListener to call</span>
<a name="l01779"></a>01779 <span class="comment">     */</span>
<a name="l01780"></a>01780     <span class="keywordtype">void</span>
<a name="l01781"></a>01781     Union(
<a name="l01782"></a>01782             XalanNode*              context,
<a name="l01783"></a>01783             OpCodeMapPositionType   opPos,
<a name="l01784"></a>01784             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext,
<a name="l01785"></a>01785             <a class="code" href="classFormatterListener.html" title="A SAX-based formatter interface for the XSL processor.">FormatterListener</a>&amp;      formatterListener,
<a name="l01786"></a>01786             MemberFunctionPtr       function) <span class="keyword">const</span>;
<a name="l01787"></a>01787 <span class="comment"></span>
<a name="l01788"></a>01788 <span class="comment">    /**</span>
<a name="l01789"></a>01789 <span class="comment">     * Computes the union of its operands which must be node-sets.</span>
<a name="l01790"></a>01790 <span class="comment">     * @param context The current source tree context node.</span>
<a name="l01791"></a>01791 <span class="comment">     * @param opPos The current position in the Op Map.</span>
<a name="l01792"></a>01792 <span class="comment">     * @param executionContext current execution context</span>
<a name="l01793"></a>01793 <span class="comment">     * @result the result of the union of node-set operands.</span>
<a name="l01794"></a>01794 <span class="comment">     */</span>
<a name="l01795"></a>01795     <span class="keywordtype">void</span>
<a name="l01796"></a>01796     Union(
<a name="l01797"></a>01797             XalanNode*              context,
<a name="l01798"></a>01798             OpCodeMapPositionType   opPos,
<a name="l01799"></a>01799             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext,
<a name="l01800"></a>01800             <a class="code" href="classMutableNodeRefList.html" title="Local implementation of MutableNodeRefList.">MutableNodeRefList</a>&amp;     result) <span class="keyword">const</span>;
<a name="l01801"></a>01801 <span class="comment"></span>
<a name="l01802"></a>01802 <span class="comment">    /**</span>
<a name="l01803"></a>01803 <span class="comment">     * Get a literal value.</span>
<a name="l01804"></a>01804 <span class="comment">     * @param opPos The current position in the Op Map.</span>
<a name="l01805"></a>01805 <span class="comment">     * @param executionContext current execution context</span>
<a name="l01806"></a>01806 <span class="comment">     * @return an XObject object.</span>
<a name="l01807"></a>01807 <span class="comment">     */</span>
<a name="l01808"></a>01808     <span class="keyword">const</span> <a class="code" href="classXObjectPtr.html" title="Class to hold XObjectPtr return types.">XObjectPtr</a>
<a name="l01809"></a>01809     literal(
<a name="l01810"></a>01810             OpCodeMapPositionType   opPos,
<a name="l01811"></a>01811             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext) <span class="keyword">const</span>;
<a name="l01812"></a>01812   <span class="comment"></span>
<a name="l01813"></a>01813 <span class="comment">    /**</span>
<a name="l01814"></a>01814 <span class="comment">     * Get a literal value as a boolean.</span>
<a name="l01815"></a>01815 <span class="comment">     *</span>
<a name="l01816"></a>01816 <span class="comment">     * @param opPos The current position in the Op Map.</span>
<a name="l01817"></a>01817 <span class="comment">     * @param theResult The value.</span>
<a name="l01818"></a>01818 <span class="comment">     */</span>
<a name="l01819"></a>01819     <span class="keywordtype">void</span>
<a name="l01820"></a>01820     literal(
<a name="l01821"></a>01821             OpCodeMapPositionType   opPos,
<a name="l01822"></a>01822             <span class="keywordtype">bool</span>&amp;                   <a class="code" href="XalanDOMString_8hpp.html#ad0987a2085caff760532b7f16b5c6f2e">theResult</a>) <span class="keyword">const</span>;
<a name="l01823"></a>01823 <span class="comment"></span>
<a name="l01824"></a>01824 <span class="comment">    /**</span>
<a name="l01825"></a>01825 <span class="comment">     * Get a literal value as a number.</span>
<a name="l01826"></a>01826 <span class="comment">     *</span>
<a name="l01827"></a>01827 <span class="comment">     * @param opPos The current position in the Op Map.</span>
<a name="l01828"></a>01828 <span class="comment">     * @param theResult The value.</span>
<a name="l01829"></a>01829 <span class="comment">     */</span>
<a name="l01830"></a>01830     <span class="keywordtype">void</span>
<a name="l01831"></a>01831     literal(
<a name="l01832"></a>01832             OpCodeMapPositionType   opPos,
<a name="l01833"></a>01833             <span class="keywordtype">double</span>&amp;                 <a class="code" href="XalanDOMString_8hpp.html#ad0987a2085caff760532b7f16b5c6f2e">theResult</a>) <span class="keyword">const</span>;
<a name="l01834"></a>01834 <span class="comment"></span>
<a name="l01835"></a>01835 <span class="comment">    /**</span>
<a name="l01836"></a>01836 <span class="comment">     * Get a literal value.  The value is appended to the</span>
<a name="l01837"></a>01837 <span class="comment">     * supplied string.</span>
<a name="l01838"></a>01838 <span class="comment">     *</span>
<a name="l01839"></a>01839 <span class="comment">     * @param opPos The current position in the Op Map.</span>
<a name="l01840"></a>01840 <span class="comment">     * @param theResult The string.</span>
<a name="l01841"></a>01841 <span class="comment">     */</span>
<a name="l01842"></a>01842     <span class="keywordtype">void</span>
<a name="l01843"></a>01843     literal(
<a name="l01844"></a>01844             OpCodeMapPositionType   opPos,
<a name="l01845"></a>01845             <a class="code" href="classXalanDOMString.html">XalanDOMString</a>&amp;         <a class="code" href="XalanDOMString_8hpp.html#ad0987a2085caff760532b7f16b5c6f2e">theResult</a>) <span class="keyword">const</span>;
<a name="l01846"></a>01846 <span class="comment"></span>
<a name="l01847"></a>01847 <span class="comment">    /**</span>
<a name="l01848"></a>01848 <span class="comment">     * Get a literal value.</span>
<a name="l01849"></a>01849 <span class="comment">     * @param opPos The current position in the Op Map.</span>
<a name="l01850"></a>01850 <span class="comment">     * @param executionContext current execution context</span>
<a name="l01851"></a>01851 <span class="comment">     * @return The result as a double.</span>
<a name="l01852"></a>01852 <span class="comment">     */</span>
<a name="l01853"></a>01853     <span class="keywordtype">void</span>
<a name="l01854"></a>01854     literal(
<a name="l01855"></a>01855             OpCodeMapPositionType   opPos,
<a name="l01856"></a>01856             <a class="code" href="classFormatterListener.html" title="A SAX-based formatter interface for the XSL processor.">FormatterListener</a>&amp;      formatterListener,
<a name="l01857"></a>01857             MemberFunctionPtr       function) <span class="keyword">const</span>;
<a name="l01858"></a>01858 <span class="comment"></span>
<a name="l01859"></a>01859 <span class="comment">    /**</span>
<a name="l01860"></a>01860 <span class="comment">     * Get the value of a variable.</span>
<a name="l01861"></a>01861 <span class="comment">     * @param opPos The current position in the Op Map.</span>
<a name="l01862"></a>01862 <span class="comment">     * @param executionContext current execution context</span>
<a name="l01863"></a>01863 <span class="comment">     * @return an XObject object.</span>
<a name="l01864"></a>01864 <span class="comment">     */</span>
<a name="l01865"></a>01865     <span class="keyword">const</span> <a class="code" href="classXObjectPtr.html" title="Class to hold XObjectPtr return types.">XObjectPtr</a>
<a name="l01866"></a>01866     variable(
<a name="l01867"></a>01867             OpCodeMapPositionType   opPos,
<a name="l01868"></a>01868             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext) <span class="keyword">const</span>;
<a name="l01869"></a>01869 <span class="comment"></span>
<a name="l01870"></a>01870 <span class="comment">    /**</span>
<a name="l01871"></a>01871 <span class="comment">     * Execute an expression as a group.</span>
<a name="l01872"></a>01872 <span class="comment">     * @param context The current source tree context node.</span>
<a name="l01873"></a>01873 <span class="comment">     * @param opPos The current position in the Op Map.</span>
<a name="l01874"></a>01874 <span class="comment">     * @param executionContext current execution context</span>
<a name="l01875"></a>01875 <span class="comment">     * @return arg.</span>
<a name="l01876"></a>01876 <span class="comment">     */</span>
<a name="l01877"></a>01877     <span class="keyword">const</span> <a class="code" href="classXObjectPtr.html" title="Class to hold XObjectPtr return types.">XObjectPtr</a>
<a name="l01878"></a><a class="code" href="classXPath.html#a7c5034fde0f1ed5f30de9e9cdfddc699">01878</a>     group(
<a name="l01879"></a>01879             XalanNode*              context,
<a name="l01880"></a>01880             OpCodeMapPositionType   opPos,
<a name="l01881"></a>01881             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext)<span class="keyword"> const</span>
<a name="l01882"></a>01882 <span class="keyword">    </span>{
<a name="l01883"></a>01883         <span class="keywordflow">return</span> executeMore(context, opPos + 2, executionContext);
<a name="l01884"></a>01884     }
<a name="l01885"></a>01885 <span class="comment"></span>
<a name="l01886"></a>01886 <span class="comment">    /**</span>
<a name="l01887"></a>01887 <span class="comment">     * Execute an expression as a group.</span>
<a name="l01888"></a>01888 <span class="comment">     * @param context The current source tree context node.</span>
<a name="l01889"></a>01889 <span class="comment">     * @param opPos The current position in the Op Map.</span>
<a name="l01890"></a>01890 <span class="comment">     * @param executionContext current execution context</span>
<a name="l01891"></a>01891 <span class="comment">     * @param theResult The result of the execution</span>
<a name="l01892"></a>01892 <span class="comment">     */</span>
<a name="l01893"></a>01893     <span class="keywordtype">void</span>
<a name="l01894"></a><a class="code" href="classXPath.html#ab2dc07bf40fdbb48039512ff2241b83c">01894</a>     group(
<a name="l01895"></a>01895             XalanNode*              context,
<a name="l01896"></a>01896             OpCodeMapPositionType   opPos,
<a name="l01897"></a>01897             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext,
<a name="l01898"></a>01898             <span class="keywordtype">bool</span>&amp;                   <a class="code" href="XalanDOMString_8hpp.html#ad0987a2085caff760532b7f16b5c6f2e">theResult</a>)<span class="keyword"> const</span>
<a name="l01899"></a>01899 <span class="keyword">    </span>{
<a name="l01900"></a>01900         executeMore(context, opPos + 2, executionContext, theResult);
<a name="l01901"></a>01901     }
<a name="l01902"></a>01902 <span class="comment"></span>
<a name="l01903"></a>01903 <span class="comment">    /**</span>
<a name="l01904"></a>01904 <span class="comment">     * Execute an expression as a group.</span>
<a name="l01905"></a>01905 <span class="comment">     * @param context The current source tree context node.</span>
<a name="l01906"></a>01906 <span class="comment">     * @param opPos The current position in the Op Map.</span>
<a name="l01907"></a>01907 <span class="comment">     * @param executionContext current execution context</span>
<a name="l01908"></a>01908 <span class="comment">     * @param theResult The result of the execution</span>
<a name="l01909"></a>01909 <span class="comment">     */</span>
<a name="l01910"></a>01910     <span class="keywordtype">void</span>
<a name="l01911"></a><a class="code" href="classXPath.html#a36aad109c5dded612b8284ad716b9184">01911</a>     group(
<a name="l01912"></a>01912             XalanNode*              context,
<a name="l01913"></a>01913             OpCodeMapPositionType   opPos,
<a name="l01914"></a>01914             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext,
<a name="l01915"></a>01915             <span class="keywordtype">double</span>&amp;                 <a class="code" href="XalanDOMString_8hpp.html#ad0987a2085caff760532b7f16b5c6f2e">theResult</a>)<span class="keyword"> const</span>
<a name="l01916"></a>01916 <span class="keyword">    </span>{
<a name="l01917"></a>01917         executeMore(context, opPos + 2, executionContext, theResult);
<a name="l01918"></a>01918     }
<a name="l01919"></a>01919 <span class="comment"></span>
<a name="l01920"></a>01920 <span class="comment">    /**</span>
<a name="l01921"></a>01921 <span class="comment">     * Execute an expression as a group.</span>
<a name="l01922"></a>01922 <span class="comment">     * @param context The current source tree context node.</span>
<a name="l01923"></a>01923 <span class="comment">     * @param opPos The current position in the Op Map.</span>
<a name="l01924"></a>01924 <span class="comment">     * @param executionContext current execution context</span>
<a name="l01925"></a>01925 <span class="comment">     * @param theResult The result of the execution</span>
<a name="l01926"></a>01926 <span class="comment">     */</span>
<a name="l01927"></a>01927     <span class="keywordtype">void</span>
<a name="l01928"></a><a class="code" href="classXPath.html#ab533b1b0ab8be4145149531bc910dd91">01928</a>     group(
<a name="l01929"></a>01929             XalanNode*              context,
<a name="l01930"></a>01930             OpCodeMapPositionType   opPos,
<a name="l01931"></a>01931             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext,
<a name="l01932"></a>01932             <a class="code" href="classXalanDOMString.html">XalanDOMString</a>&amp;         <a class="code" href="XalanDOMString_8hpp.html#ad0987a2085caff760532b7f16b5c6f2e">theResult</a>)<span class="keyword"> const</span>
<a name="l01933"></a>01933 <span class="keyword">    </span>{
<a name="l01934"></a>01934         executeMore(context, opPos + 2, executionContext, theResult);
<a name="l01935"></a>01935     }
<a name="l01936"></a>01936 <span class="comment"></span>
<a name="l01937"></a>01937 <span class="comment">    /**</span>
<a name="l01938"></a>01938 <span class="comment">     * Execute an expression as a group.</span>
<a name="l01939"></a>01939 <span class="comment">     *</span>
<a name="l01940"></a>01940 <span class="comment">     * @param context The current source tree context node.</span>
<a name="l01941"></a>01941 <span class="comment">     * @param opPos The current position in the Op Map.</span>
<a name="l01942"></a>01942 <span class="comment">     * @param executionContext current execution context</span>
<a name="l01943"></a>01943 <span class="comment">     * @param formatterListener the FormatterListener instance to receive the result</span>
<a name="l01944"></a>01944 <span class="comment">     * @param function A pointer to the member function of FormatterListener to call</span>
<a name="l01945"></a>01945 <span class="comment">     */</span>
<a name="l01946"></a>01946     <span class="keywordtype">void</span>
<a name="l01947"></a><a class="code" href="classXPath.html#a3ac37fa60ceca2aa5462e3c4b68ba1d0">01947</a>     group(
<a name="l01948"></a>01948             XalanNode*              context,
<a name="l01949"></a>01949             OpCodeMapPositionType   opPos,
<a name="l01950"></a>01950             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext,
<a name="l01951"></a>01951             <a class="code" href="classFormatterListener.html" title="A SAX-based formatter interface for the XSL processor.">FormatterListener</a>&amp;      formatterListener,
<a name="l01952"></a>01952             MemberFunctionPtr       function)<span class="keyword"> const</span>
<a name="l01953"></a>01953 <span class="keyword">    </span>{
<a name="l01954"></a>01954         executeMore(
<a name="l01955"></a>01955             context,
<a name="l01956"></a>01956             opPos + 2,
<a name="l01957"></a>01957             executionContext,
<a name="l01958"></a>01958             formatterListener,
<a name="l01959"></a>01959             function);
<a name="l01960"></a>01960     }
<a name="l01961"></a>01961 <span class="comment"></span>
<a name="l01962"></a>01962 <span class="comment">    /**</span>
<a name="l01963"></a>01963 <span class="comment">     * Execute an expression as a group.</span>
<a name="l01964"></a>01964 <span class="comment">     * @param context The current source tree context node.</span>
<a name="l01965"></a>01965 <span class="comment">     * @param opPos The current position in the Op Map.</span>
<a name="l01966"></a>01966 <span class="comment">     * @param executionContext current execution context</span>
<a name="l01967"></a>01967 <span class="comment">     * @param theResult The result of the execution</span>
<a name="l01968"></a>01968 <span class="comment">     */</span>
<a name="l01969"></a>01969     <span class="keywordtype">void</span>
<a name="l01970"></a><a class="code" href="classXPath.html#a2620ea95b35c2406282ae6f51b6522a5">01970</a>     group(
<a name="l01971"></a>01971             XalanNode*              context,
<a name="l01972"></a>01972             OpCodeMapPositionType   opPos,
<a name="l01973"></a>01973             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext,
<a name="l01974"></a>01974             <a class="code" href="classMutableNodeRefList.html" title="Local implementation of MutableNodeRefList.">MutableNodeRefList</a>&amp;     <a class="code" href="XalanDOMString_8hpp.html#ad0987a2085caff760532b7f16b5c6f2e">theResult</a>)<span class="keyword"> const</span>
<a name="l01975"></a>01975 <span class="keyword">    </span>{
<a name="l01976"></a>01976         <span class="keyword">const</span> <a class="code" href="classXObjectPtr.html" title="Class to hold XObjectPtr return types.">XObjectPtr</a>    theValue(executeMore(
<a name="l01977"></a>01977                                         context,
<a name="l01978"></a>01978                                         opPos + 2,
<a name="l01979"></a>01979                                         executionContext,
<a name="l01980"></a>01980                                         theResult));
<a name="l01981"></a>01981 
<a name="l01982"></a>01982         <span class="keywordflow">if</span> (theValue.<a class="code" href="classXObjectPtr.html#adc20498be59bcc0e79671bec371bbf2f">null</a>() == <span class="keyword">false</span>)
<a name="l01983"></a>01983         {
<a name="l01984"></a>01984             theResult.<a class="code" href="classMutableNodeRefList.html#af293b607341a2af5896792c548050fc1" title="Copy NodeList members into this nodelist, adding in document order.">addNodesInDocOrder</a>(
<a name="l01985"></a>01985                 theValue-&gt;nodeset(),
<a name="l01986"></a>01986                 executionContext);
<a name="l01987"></a>01987 
<a name="l01988"></a>01988             theResult.<a class="code" href="classMutableNodeRefList.html#a4de5fd894d1195e8dadffc1486f52218" title="Set the known order of the nodes.">setDocumentOrder</a>();
<a name="l01989"></a>01989         }
<a name="l01990"></a>01990     }
<a name="l01991"></a>01991 <span class="comment"></span>
<a name="l01992"></a>01992 <span class="comment">    /**</span>
<a name="l01993"></a>01993 <span class="comment">     * Get a literal value.</span>
<a name="l01994"></a>01994 <span class="comment">     * @param opPos The current position in the Op Map.</span>
<a name="l01995"></a>01995 <span class="comment">     * @return The result as a double.</span>
<a name="l01996"></a>01996 <span class="comment">     */</span>
<a name="l01997"></a>01997     <span class="keywordtype">double</span>
<a name="l01998"></a>01998     numberlit(OpCodeMapPositionType     opPos) <span class="keyword">const</span>;
<a name="l01999"></a>01999 <span class="comment"></span>
<a name="l02000"></a>02000 <span class="comment">    /**</span>
<a name="l02001"></a>02001 <span class="comment">     * Get a literal value.</span>
<a name="l02002"></a>02002 <span class="comment">     * @param opPos The current position in the Op Map.</span>
<a name="l02003"></a>02003 <span class="comment">     * @return The result as a double.</span>
<a name="l02004"></a>02004 <span class="comment">     */</span>
<a name="l02005"></a>02005     <span class="keyword">const</span> <a class="code" href="classXObjectPtr.html" title="Class to hold XObjectPtr return types.">XObjectPtr</a>
<a name="l02006"></a>02006     numberlit(
<a name="l02007"></a>02007             OpCodeMapPositionType   opPos,
<a name="l02008"></a>02008             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext) <span class="keyword">const</span>;
<a name="l02009"></a>02009 <span class="comment"></span>
<a name="l02010"></a>02010 <span class="comment">    /**</span>
<a name="l02011"></a>02011 <span class="comment">     * Get a literal value as a boolean.</span>
<a name="l02012"></a>02012 <span class="comment">     *</span>
<a name="l02013"></a>02013 <span class="comment">     * @param opPos The current position in the Op Map.</span>
<a name="l02014"></a>02014 <span class="comment">     * @param theResult The string.</span>
<a name="l02015"></a>02015 <span class="comment">     */</span>
<a name="l02016"></a>02016     <span class="keywordtype">void</span>
<a name="l02017"></a>02017     numberlit(
<a name="l02018"></a>02018             OpCodeMapPositionType   opPos,
<a name="l02019"></a>02019             <span class="keywordtype">bool</span>&amp;                   <a class="code" href="XalanDOMString_8hpp.html#ad0987a2085caff760532b7f16b5c6f2e">theResult</a>) <span class="keyword">const</span>;
<a name="l02020"></a>02020 <span class="comment"></span>
<a name="l02021"></a>02021 <span class="comment">    /**</span>
<a name="l02022"></a>02022 <span class="comment">     * Get a literal value.  The value is appended to the</span>
<a name="l02023"></a>02023 <span class="comment">     * supplied string.</span>
<a name="l02024"></a>02024 <span class="comment">     *</span>
<a name="l02025"></a>02025 <span class="comment">     * @param opPos The current position in the Op Map.</span>
<a name="l02026"></a>02026 <span class="comment">     * @param theResult The string.</span>
<a name="l02027"></a>02027 <span class="comment">     */</span>
<a name="l02028"></a>02028     <span class="keywordtype">void</span>
<a name="l02029"></a>02029     numberlit(
<a name="l02030"></a>02030             OpCodeMapPositionType   opPos,
<a name="l02031"></a>02031             <a class="code" href="classXalanDOMString.html">XalanDOMString</a>&amp;         <a class="code" href="XalanDOMString_8hpp.html#ad0987a2085caff760532b7f16b5c6f2e">theResult</a>) <span class="keyword">const</span>;
<a name="l02032"></a>02032 <span class="comment"></span>
<a name="l02033"></a>02033 <span class="comment">    /**</span>
<a name="l02034"></a>02034 <span class="comment">     * Get a literal value.</span>
<a name="l02035"></a>02035 <span class="comment">     *</span>
<a name="l02036"></a>02036 <span class="comment">     * @param opPos The current position in the Op Map.</span>
<a name="l02037"></a>02037 <span class="comment">     * @param formatterListener the FormatterListener instance to receive the result</span>
<a name="l02038"></a>02038 <span class="comment">     * @param function A pointer to the member function of FormatterListener to call</span>
<a name="l02039"></a>02039 <span class="comment">     */</span>
<a name="l02040"></a>02040     <span class="keywordtype">void</span>
<a name="l02041"></a>02041     numberlit(
<a name="l02042"></a>02042             OpCodeMapPositionType   opPos,
<a name="l02043"></a>02043             <a class="code" href="classFormatterListener.html" title="A SAX-based formatter interface for the XSL processor.">FormatterListener</a>&amp;      formatterListener,
<a name="l02044"></a>02044             MemberFunctionPtr       function) <span class="keyword">const</span>;
<a name="l02045"></a>02045 <span class="comment"></span>
<a name="l02046"></a>02046 <span class="comment">    /**</span>
<a name="l02047"></a>02047 <span class="comment">     * Setup for and run an extension function.</span>
<a name="l02048"></a>02048 <span class="comment">     * @param context The current source tree context node.</span>
<a name="l02049"></a>02049 <span class="comment">     * @param opPos The current position in the Op Map.</span>
<a name="l02050"></a>02050 <span class="comment">     * @param executionContext current execution context</span>
<a name="l02051"></a>02051 <span class="comment">     * @return the result of the function.</span>
<a name="l02052"></a>02052 <span class="comment">     */</span>
<a name="l02053"></a>02053     <span class="keyword">const</span> <a class="code" href="classXObjectPtr.html" title="Class to hold XObjectPtr return types.">XObjectPtr</a>
<a name="l02054"></a>02054     runExtFunction(
<a name="l02055"></a>02055             XalanNode*              context,
<a name="l02056"></a>02056             OpCodeMapPositionType   opPos,
<a name="l02057"></a>02057             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext) <span class="keyword">const</span>;
<a name="l02058"></a>02058 <span class="comment"></span>
<a name="l02059"></a>02059 <span class="comment">    /**</span>
<a name="l02060"></a>02060 <span class="comment">     * Handle an extension function.</span>
<a name="l02061"></a>02061 <span class="comment">     * @param context The current source tree context node.</span>
<a name="l02062"></a>02062 <span class="comment">     * @param opPos The current position in the Op Map.</span>
<a name="l02063"></a>02063 <span class="comment">     * @param theNamespace The namespace of the function.</span>
<a name="l02064"></a>02064 <span class="comment">     * @param functionName The name of the function.</span>
<a name="l02065"></a>02065 <span class="comment">     * @param executionContext current execution context</span>
<a name="l02066"></a>02066 <span class="comment">     * @return the result of the function.</span>
<a name="l02067"></a>02067 <span class="comment">     */</span>
<a name="l02068"></a>02068     <span class="keyword">const</span> <a class="code" href="classXObjectPtr.html" title="Class to hold XObjectPtr return types.">XObjectPtr</a>
<a name="l02069"></a><a class="code" href="classXPath.html#aacdc67248fd63947593de89c40010db6">02069</a>     extfunction(
<a name="l02070"></a>02070             XalanNode*                              context,
<a name="l02071"></a>02071             OpCodeMapPositionType                   <span class="comment">/* opPos */</span>,
<a name="l02072"></a>02072             <span class="keyword">const</span> <a class="code" href="classXalanDOMString.html">XalanDOMString</a>&amp;                   theNamespace,
<a name="l02073"></a>02073             <span class="keyword">const</span> <a class="code" href="classXalanDOMString.html">XalanDOMString</a>&amp;                   functionName, 
<a name="l02074"></a>02074             <span class="keyword">const</span> <a class="code" href="classXalanVector.html">Function::XObjectArgVectorType</a>&amp;   argVec,
<a name="l02075"></a>02075             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;                  executionContext)<span class="keyword"> const</span>
<a name="l02076"></a>02076 <span class="keyword">    </span>{
<a name="l02077"></a>02077         <span class="keywordflow">return</span>  executionContext.<a class="code" href="classXPathExecutionContext.html#a09cbae28aef8ae504b45b2f7a8e051f2" title="Handle an extension function.">extFunction</a>(theNamespace,
<a name="l02078"></a>02078                                              functionName,
<a name="l02079"></a>02079                                              context,
<a name="l02080"></a>02080                                              argVec,
<a name="l02081"></a>02081                                              m_locator);
<a name="l02082"></a>02082     }
<a name="l02083"></a>02083 <span class="comment"></span>
<a name="l02084"></a>02084 <span class="comment">    /**</span>
<a name="l02085"></a>02085 <span class="comment">     * Setup for and run a function.</span>
<a name="l02086"></a>02086 <span class="comment">     * @param context The current source tree context node.</span>
<a name="l02087"></a>02087 <span class="comment">     * @param opPos The current position in the Op Map.</span>
<a name="l02088"></a>02088 <span class="comment">     * @param executionContext current execution context</span>
<a name="l02089"></a>02089 <span class="comment">     * @return the result of the function.</span>
<a name="l02090"></a>02090 <span class="comment">     */</span>
<a name="l02091"></a>02091     <span class="keyword">const</span> <a class="code" href="classXObjectPtr.html" title="Class to hold XObjectPtr return types.">XObjectPtr</a>
<a name="l02092"></a>02092     runFunction(
<a name="l02093"></a>02093             XalanNode*              context,
<a name="l02094"></a>02094             OpCodeMapPositionType   opPos,
<a name="l02095"></a>02095             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext) <span class="keyword">const</span>;
<a name="l02096"></a>02096 <span class="comment"></span>
<a name="l02097"></a>02097 <span class="comment">    /**</span>
<a name="l02098"></a>02098 <span class="comment">     * Handle a built-in function.</span>
<a name="l02099"></a>02099 <span class="comment">     * @param context The current source tree context node.</span>
<a name="l02100"></a>02100 <span class="comment">     * @param funcID The function ID.</span>
<a name="l02101"></a>02101 <span class="comment">     * @param argVec The arguments for the function.</span>
<a name="l02102"></a>02102 <span class="comment">     * @param executionContext current execution context</span>
<a name="l02103"></a>02103 <span class="comment">     * @return the result of the function.</span>
<a name="l02104"></a>02104 <span class="comment">     */</span>
<a name="l02105"></a>02105     <span class="keyword">const</span> <a class="code" href="classXObjectPtr.html" title="Class to hold XObjectPtr return types.">XObjectPtr</a>
<a name="l02106"></a><a class="code" href="classXPath.html#aca21a6d69ab746ff4185b56d08e1b67c">02106</a>     function(
<a name="l02107"></a>02107             XalanNode*                              context,
<a name="l02108"></a>02108             OpCodeMapValueType                      funcID,
<a name="l02109"></a>02109             <span class="keyword">const</span> <a class="code" href="classXalanVector.html">Function::XObjectArgVectorType</a>&amp;   argVec,
<a name="l02110"></a>02110             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;                  executionContext)<span class="keyword"> const</span>
<a name="l02111"></a>02111 <span class="keyword">    </span>{
<a name="l02112"></a>02112         <span class="keywordflow">return</span> s_functions[funcID].execute(executionContext, context, argVec, m_locator);
<a name="l02113"></a>02113     }
<a name="l02114"></a>02114 <span class="comment"></span>
<a name="l02115"></a>02115 <span class="comment">    /**</span>
<a name="l02116"></a>02116 <span class="comment">     * Handle the built-in function &quot;position&quot;.</span>
<a name="l02117"></a>02117 <span class="comment">     *</span>
<a name="l02118"></a>02118 <span class="comment">     * @param context The current source tree context node, which must not be 0.</span>
<a name="l02119"></a>02119 <span class="comment">     * @param executionContext current execution context</span>
<a name="l02120"></a>02120 <span class="comment">     * @return the result of the function.</span>
<a name="l02121"></a>02121 <span class="comment">     */</span>
<a name="l02122"></a>02122     <span class="keywordtype">double</span>
<a name="l02123"></a><a class="code" href="classXPath.html#a852ac970d59529a46dad1902733e567a">02123</a>     functionPosition(
<a name="l02124"></a>02124             XalanNode*              context,
<a name="l02125"></a>02125             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext)<span class="keyword"> const</span>
<a name="l02126"></a>02126 <span class="keyword">    </span>{
<a name="l02127"></a>02127         assert(context != 0);
<a name="l02128"></a>02128 
<a name="l02129"></a>02129         <span class="keyword">const</span> <a class="code" href="classXPathExecutionContext.html#ada886bab8562a11693b610f8be1370ea">XPathExecutionContext::size_type</a>  <a class="code" href="XalanDOMString_8hpp.html#ad0987a2085caff760532b7f16b5c6f2e">theResult</a> =
<a name="l02130"></a>02130             executionContext.<a class="code" href="classXPathExecutionContext.html#a000e57a9d58ae19a3a6f0665741b8dc9">getContextNodeListPosition</a>(*context);
<a name="l02131"></a>02131         assert(static_cast&lt;double&gt;(theResult) == theResult);
<a name="l02132"></a>02132 
<a name="l02133"></a>02133         <span class="keywordflow">return</span> <span class="keyword">static_cast&lt;</span><span class="keywordtype">double</span><span class="keyword">&gt;</span>(theResult);
<a name="l02134"></a>02134     }
<a name="l02135"></a>02135 <span class="comment"></span>
<a name="l02136"></a>02136 <span class="comment">    /**</span>
<a name="l02137"></a>02137 <span class="comment">     * Handle the built-in function &quot;last&quot;.</span>
<a name="l02138"></a>02138 <span class="comment">     *</span>
<a name="l02139"></a>02139 <span class="comment">     * @param executionContext current execution context</span>
<a name="l02140"></a>02140 <span class="comment">     * @return the result of the function.</span>
<a name="l02141"></a>02141 <span class="comment">     */</span>
<a name="l02142"></a>02142     <span class="keywordtype">double</span>
<a name="l02143"></a><a class="code" href="classXPath.html#a7b7dba3d9da96ad37440c34c342fdf7f">02143</a>     functionLast(<a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;     executionContext)<span class="keyword"> const</span>
<a name="l02144"></a>02144 <span class="keyword">    </span>{
<a name="l02145"></a>02145         <span class="keyword">const</span> <a class="code" href="classXPathExecutionContext.html#ada886bab8562a11693b610f8be1370ea">XPathExecutionContext::size_type</a>  <a class="code" href="XalanDOMString_8hpp.html#ad0987a2085caff760532b7f16b5c6f2e">theResult</a> =
<a name="l02146"></a>02146             executionContext.<a class="code" href="classXPathExecutionContext.html#a7b9dbf9e9f859fe91faf91bebbf118f1">getContextNodeListLength</a>();
<a name="l02147"></a>02147         assert(static_cast&lt;double&gt;(theResult) == theResult);
<a name="l02148"></a>02148 
<a name="l02149"></a>02149         <span class="keywordflow">return</span> <span class="keyword">static_cast&lt;</span><span class="keywordtype">double</span><span class="keyword">&gt;</span>(theResult);
<a name="l02150"></a>02150     }
<a name="l02151"></a>02151 <span class="comment"></span>
<a name="l02152"></a>02152 <span class="comment">    /**</span>
<a name="l02153"></a>02153 <span class="comment">     * Handle the built-in function &quot;count&quot;.</span>
<a name="l02154"></a>02154 <span class="comment">     *</span>
<a name="l02155"></a>02155 <span class="comment">     * @param context The current source tree context node.</span>
<a name="l02156"></a>02156 <span class="comment">     * @param opPos The current position in the Op Map.</span>
<a name="l02157"></a>02157 <span class="comment">     * @param executionContext current execution context</span>
<a name="l02158"></a>02158 <span class="comment">     * @return the result of the function.</span>
<a name="l02159"></a>02159 <span class="comment">     */</span>
<a name="l02160"></a>02160     <span class="keywordtype">double</span>
<a name="l02161"></a>02161     functionCount(
<a name="l02162"></a>02162             XalanNode*              context,
<a name="l02163"></a>02163             OpCodeMapPositionType   opPos,
<a name="l02164"></a>02164             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext) <span class="keyword">const</span>;
<a name="l02165"></a>02165 <span class="comment"></span>
<a name="l02166"></a>02166 <span class="comment">    /**</span>
<a name="l02167"></a>02167 <span class="comment">     * Handle the built-in function &quot;not&quot;.</span>
<a name="l02168"></a>02168 <span class="comment">     *</span>
<a name="l02169"></a>02169 <span class="comment">     * @param context The current source tree context node, which must not be 0.</span>
<a name="l02170"></a>02170 <span class="comment">     * @param opPos The current position in the Op Map.</span>
<a name="l02171"></a>02171 <span class="comment">     * @param executionContext current execution context</span>
<a name="l02172"></a>02172 <span class="comment">     * @return the result of the function.</span>
<a name="l02173"></a>02173 <span class="comment">     */</span>
<a name="l02174"></a>02174     <span class="keywordtype">bool</span>
<a name="l02175"></a><a class="code" href="classXPath.html#a5fe658146cb8185dd241813542404686">02175</a>     functionNot(
<a name="l02176"></a>02176             XalanNode*              context,
<a name="l02177"></a>02177             OpCodeMapPositionType   opPos,
<a name="l02178"></a>02178             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext)<span class="keyword"> const</span>
<a name="l02179"></a>02179 <span class="keyword">    </span>{
<a name="l02180"></a>02180         assert(context != 0);
<a name="l02181"></a>02181 
<a name="l02182"></a>02182         <span class="keywordflow">return</span> !functionBoolean(context, opPos, executionContext);
<a name="l02183"></a>02183     }
<a name="l02184"></a>02184 <span class="comment"></span>
<a name="l02185"></a>02185 <span class="comment">    /**</span>
<a name="l02186"></a>02186 <span class="comment">     * Handle the built-in function &quot;boolean&quot;.</span>
<a name="l02187"></a>02187 <span class="comment">     *</span>
<a name="l02188"></a>02188 <span class="comment">     * @param context The current source tree context node, which must not be 0.</span>
<a name="l02189"></a>02189 <span class="comment">     * @param opPos The current position in the Op Map.</span>
<a name="l02190"></a>02190 <span class="comment">     * @param executionContext current execution context</span>
<a name="l02191"></a>02191 <span class="comment">     * @return the result of the function.</span>
<a name="l02192"></a>02192 <span class="comment">     */</span>
<a name="l02193"></a>02193     <span class="keywordtype">bool</span>
<a name="l02194"></a><a class="code" href="classXPath.html#ac03bba3e1b3809d01851165982703d2f">02194</a>     functionBoolean(
<a name="l02195"></a>02195             XalanNode*              context,
<a name="l02196"></a>02196             OpCodeMapPositionType   opPos,
<a name="l02197"></a>02197             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext)<span class="keyword"> const</span>
<a name="l02198"></a>02198 <span class="keyword">    </span>{
<a name="l02199"></a>02199         assert(context != 0);
<a name="l02200"></a>02200 
<a name="l02201"></a>02201         <span class="keywordtype">bool</span>    result;
<a name="l02202"></a>02202 
<a name="l02203"></a>02203         executeMore(context, opPos + 2, executionContext, result);
<a name="l02204"></a>02204 
<a name="l02205"></a>02205         <span class="keywordflow">return</span> result;
<a name="l02206"></a>02206     }
<a name="l02207"></a>02207 <span class="comment"></span>
<a name="l02208"></a>02208 <span class="comment">    /**</span>
<a name="l02209"></a>02209 <span class="comment">     * Handle the built-in function &quot;name&quot;.</span>
<a name="l02210"></a>02210 <span class="comment">     *</span>
<a name="l02211"></a>02211 <span class="comment">     * @param context The current source tree context node, which must not be 0.</span>
<a name="l02212"></a>02212 <span class="comment">     * @return the result of the function.</span>
<a name="l02213"></a>02213 <span class="comment">     */</span>
<a name="l02214"></a>02214     <span class="keyword">const</span> <a class="code" href="classXalanDOMString.html">XalanDOMString</a>&amp;
<a name="l02215"></a><a class="code" href="classXPath.html#a893099408531c453e522af76d8dce833">02215</a>     functionName(XalanNode*     context)<span class="keyword"> const</span>
<a name="l02216"></a>02216 <span class="keyword">    </span>{
<a name="l02217"></a>02217         assert(context != 0);
<a name="l02218"></a>02218 
<a name="l02219"></a>02219         <span class="keywordflow">return</span> <a class="code" href="classDOMServices.html#a469c4b3b82444cbc371f6124f762f416" title="Retrieve the name of the node, taking into account the differences between the DOM and XSLT data mode...">DOMServices::getNameOfNode</a>(*context);
<a name="l02220"></a>02220     }
<a name="l02221"></a>02221 <span class="comment"></span>
<a name="l02222"></a>02222 <span class="comment">    /**</span>
<a name="l02223"></a>02223 <span class="comment">     * Handle the built-in function &quot;name&quot;.</span>
<a name="l02224"></a>02224 <span class="comment">     *</span>
<a name="l02225"></a>02225 <span class="comment">     * @param context The current source tree context node, which must not be 0.</span>
<a name="l02226"></a>02226 <span class="comment">     * @param opPos The current position in the Op Map.</span>
<a name="l02227"></a>02227 <span class="comment">     * @param executionContext current execution context</span>
<a name="l02228"></a>02228 <span class="comment">     * @return the result of the function.</span>
<a name="l02229"></a>02229 <span class="comment">     */</span>
<a name="l02230"></a>02230     <span class="keyword">const</span> <a class="code" href="classXalanDOMString.html">XalanDOMString</a>&amp;
<a name="l02231"></a>02231     functionName(
<a name="l02232"></a>02232             XalanNode*              context,
<a name="l02233"></a>02233             OpCodeMapPositionType   opPos,
<a name="l02234"></a>02234             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext) <span class="keyword">const</span>;
<a name="l02235"></a>02235 <span class="comment"></span>
<a name="l02236"></a>02236 <span class="comment">    /**</span>
<a name="l02237"></a>02237 <span class="comment">     * Handle the built-in function &quot;local-name&quot;.</span>
<a name="l02238"></a>02238 <span class="comment">     *</span>
<a name="l02239"></a>02239 <span class="comment">     * @param context The current source tree context node, which must not be 0.</span>
<a name="l02240"></a>02240 <span class="comment">     * @return the result of the function.</span>
<a name="l02241"></a>02241 <span class="comment">     */</span>
<a name="l02242"></a>02242     <span class="keyword">const</span> <a class="code" href="classXalanDOMString.html">XalanDOMString</a>&amp;
<a name="l02243"></a>02243     functionLocalName(XalanNode*    context) <span class="keyword">const</span>;
<a name="l02244"></a>02244 <span class="comment"></span>
<a name="l02245"></a>02245 <span class="comment">    /**</span>
<a name="l02246"></a>02246 <span class="comment">     * Handle the built-in function &quot;local-name&quot;.</span>
<a name="l02247"></a>02247 <span class="comment">     *</span>
<a name="l02248"></a>02248 <span class="comment">     * @param context The current source tree context node, which must not be 0.</span>
<a name="l02249"></a>02249 <span class="comment">     * @param opPos The current position in the Op Map.</span>
<a name="l02250"></a>02250 <span class="comment">     * @param executionContext current execution context</span>
<a name="l02251"></a>02251 <span class="comment">     * @return the result of the function.</span>
<a name="l02252"></a>02252 <span class="comment">     */</span>
<a name="l02253"></a>02253     <span class="keyword">const</span> <a class="code" href="classXalanDOMString.html">XalanDOMString</a>&amp;
<a name="l02254"></a>02254     functionLocalName(
<a name="l02255"></a>02255             XalanNode*              context,
<a name="l02256"></a>02256             OpCodeMapPositionType   opPos,
<a name="l02257"></a>02257             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext) <span class="keyword">const</span>;
<a name="l02258"></a>02258 <span class="comment"></span>
<a name="l02259"></a>02259 <span class="comment">    /**</span>
<a name="l02260"></a>02260 <span class="comment">     * Handle the built-in function &quot;number&quot;.</span>
<a name="l02261"></a>02261 <span class="comment">     *</span>
<a name="l02262"></a>02262 <span class="comment">     * @param context The current source tree context node, which must not be 0.</span>
<a name="l02263"></a>02263 <span class="comment">     * @param executionContext current execution context</span>
<a name="l02264"></a>02264 <span class="comment">     * @return the result of the function.</span>
<a name="l02265"></a>02265 <span class="comment">     */</span>
<a name="l02266"></a>02266     <span class="keywordtype">double</span>
<a name="l02267"></a><a class="code" href="classXPath.html#a434ca9d61fa33320727c7f75e28a7f76">02267</a>     functionNumber(
<a name="l02268"></a>02268             XalanNode*              context,
<a name="l02269"></a>02269             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext)<span class="keyword"> const</span>
<a name="l02270"></a>02270 <span class="keyword">    </span>{
<a name="l02271"></a>02271         assert(context != 0);
<a name="l02272"></a>02272 
<a name="l02273"></a>02273         <span class="keywordflow">return</span> <a class="code" href="classXObject.html#a61e9890717403e004b41d5c92e16d40a" title="Static conversion function.">XObject::number</a>(executionContext, *context);
<a name="l02274"></a>02274     }
<a name="l02275"></a>02275 <span class="comment"></span>
<a name="l02276"></a>02276 <span class="comment">    /**</span>
<a name="l02277"></a>02277 <span class="comment">     * Handle the built-in function &quot;number&quot;.</span>
<a name="l02278"></a>02278 <span class="comment">     *</span>
<a name="l02279"></a>02279 <span class="comment">     * @param context The current source tree context node, which must not be 0.</span>
<a name="l02280"></a>02280 <span class="comment">     * @param opPos The current position in the Op Map.</span>
<a name="l02281"></a>02281 <span class="comment">     * @param executionContext current execution context</span>
<a name="l02282"></a>02282 <span class="comment">     * @return the result of the function.</span>
<a name="l02283"></a>02283 <span class="comment">     */</span>
<a name="l02284"></a>02284     <span class="keywordtype">double</span>
<a name="l02285"></a><a class="code" href="classXPath.html#a17e25c785599844e06953955274fcaae">02285</a>     functionNumber(
<a name="l02286"></a>02286             XalanNode*              context,
<a name="l02287"></a>02287             OpCodeMapPositionType   opPos,
<a name="l02288"></a>02288             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext)<span class="keyword"> const</span>
<a name="l02289"></a>02289 <span class="keyword">    </span>{
<a name="l02290"></a>02290         <span class="keywordtype">double</span>  result;
<a name="l02291"></a>02291 
<a name="l02292"></a>02292         executeMore(context, opPos + 2, executionContext, result);
<a name="l02293"></a>02293 
<a name="l02294"></a>02294         <span class="keywordflow">return</span> result;
<a name="l02295"></a>02295     }
<a name="l02296"></a>02296 <span class="comment"></span>
<a name="l02297"></a>02297 <span class="comment">    /**</span>
<a name="l02298"></a>02298 <span class="comment">     * Handle the built-in function &quot;floor&quot;.</span>
<a name="l02299"></a>02299 <span class="comment">     *</span>
<a name="l02300"></a>02300 <span class="comment">     * @param context The current source tree context node, which must not be 0.</span>
<a name="l02301"></a>02301 <span class="comment">     * @param opPos The current position in the Op Map.</span>
<a name="l02302"></a>02302 <span class="comment">     * @param executionContext current execution context</span>
<a name="l02303"></a>02303 <span class="comment">     * @return the result of the function.</span>
<a name="l02304"></a>02304 <span class="comment">     */</span>
<a name="l02305"></a>02305     <span class="keywordtype">double</span>
<a name="l02306"></a><a class="code" href="classXPath.html#aa517bc98856626d4fdc6aaa670f7ebd6">02306</a>     functionFloor(
<a name="l02307"></a>02307             XalanNode*              context,
<a name="l02308"></a>02308             OpCodeMapPositionType   opPos,
<a name="l02309"></a>02309             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext)<span class="keyword"> const</span>
<a name="l02310"></a>02310 <span class="keyword">    </span>{
<a name="l02311"></a>02311         <span class="keywordflow">return</span> <a class="code" href="classDoubleSupport.html#a331b5daf60da2e6107f55741641c50bf" title="Returns the floor of a number according to the XPath rules.">DoubleSupport::floor</a>(functionNumber(context, opPos, executionContext));
<a name="l02312"></a>02312     }
<a name="l02313"></a>02313 <span class="comment"></span>
<a name="l02314"></a>02314 <span class="comment">    /**</span>
<a name="l02315"></a>02315 <span class="comment">     * Handle the built-in function &quot;ceiling&quot;.</span>
<a name="l02316"></a>02316 <span class="comment">     *</span>
<a name="l02317"></a>02317 <span class="comment">     * @param context The current source tree context node, which must not be 0.</span>
<a name="l02318"></a>02318 <span class="comment">     * @param opPos The current position in the Op Map.</span>
<a name="l02319"></a>02319 <span class="comment">     * @param executionContext current execution context</span>
<a name="l02320"></a>02320 <span class="comment">     * @return the result of the function.</span>
<a name="l02321"></a>02321 <span class="comment">     */</span>
<a name="l02322"></a>02322     <span class="keywordtype">double</span>
<a name="l02323"></a><a class="code" href="classXPath.html#a75d990f954f3334b08cb40c1a05ef11f">02323</a>     functionCeiling(
<a name="l02324"></a>02324             XalanNode*              context,
<a name="l02325"></a>02325             OpCodeMapPositionType   opPos,
<a name="l02326"></a>02326             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext)<span class="keyword"> const</span>
<a name="l02327"></a>02327 <span class="keyword">    </span>{
<a name="l02328"></a>02328         <span class="keywordflow">return</span> <a class="code" href="classDoubleSupport.html#ab3dc149b5ac78e6fb0de39a21f1eaf9c" title="Returns the ceiling of a number according to the XPath rules.">DoubleSupport::ceiling</a>(functionNumber(context, opPos, executionContext));
<a name="l02329"></a>02329     }
<a name="l02330"></a>02330 <span class="comment"></span>
<a name="l02331"></a>02331 <span class="comment">    /**</span>
<a name="l02332"></a>02332 <span class="comment">     * Handle the built-in function &quot;round&quot;.</span>
<a name="l02333"></a>02333 <span class="comment">     *</span>
<a name="l02334"></a>02334 <span class="comment">     * @param context The current source tree context node, which must not be 0.</span>
<a name="l02335"></a>02335 <span class="comment">     * @param opPos The current position in the Op Map.</span>
<a name="l02336"></a>02336 <span class="comment">     * @param executionContext current execution context</span>
<a name="l02337"></a>02337 <span class="comment">     * @return the result of the function.</span>
<a name="l02338"></a>02338 <span class="comment">     */</span>
<a name="l02339"></a>02339     <span class="keywordtype">double</span>
<a name="l02340"></a><a class="code" href="classXPath.html#a4267a3677ac2962962a37fd8a9ed4f01">02340</a>     functionRound(
<a name="l02341"></a>02341             XalanNode*              context,
<a name="l02342"></a>02342             OpCodeMapPositionType   opPos,
<a name="l02343"></a>02343             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext)<span class="keyword"> const</span>
<a name="l02344"></a>02344 <span class="keyword">    </span>{
<a name="l02345"></a>02345         <span class="keywordflow">return</span> <a class="code" href="classDoubleSupport.html#afb0fd154a02389981849b08a4e4a08fc" title="Round a number according to the XPath rules.">DoubleSupport::round</a>(functionNumber(context, opPos, executionContext));
<a name="l02346"></a>02346     }
<a name="l02347"></a>02347 <span class="comment"></span>
<a name="l02348"></a>02348 <span class="comment">    /**</span>
<a name="l02349"></a>02349 <span class="comment">     * Handle the built-in function &quot;string-length&quot;.</span>
<a name="l02350"></a>02350 <span class="comment">     *</span>
<a name="l02351"></a>02351 <span class="comment">     * @param context The current source tree context node, which must not be 0.</span>
<a name="l02352"></a>02352 <span class="comment">     * @param executionContext current execution context</span>
<a name="l02353"></a>02353 <span class="comment">     * @return the result of the function.</span>
<a name="l02354"></a>02354 <span class="comment">     */</span>
<a name="l02355"></a>02355     <span class="keywordtype">double</span>
<a name="l02356"></a>02356     functionStringLength(
<a name="l02357"></a>02357             XalanNode*              context,
<a name="l02358"></a>02358             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext) <span class="keyword">const</span>;
<a name="l02359"></a>02359 <span class="comment"></span>
<a name="l02360"></a>02360 <span class="comment">    /**</span>
<a name="l02361"></a>02361 <span class="comment">     * Handle the built-in function &quot;string-length&quot;.</span>
<a name="l02362"></a>02362 <span class="comment">     *</span>
<a name="l02363"></a>02363 <span class="comment">     * @param context The current source tree context node, which must not be 0.</span>
<a name="l02364"></a>02364 <span class="comment">     * @param opPos The current position in the Op Map.</span>
<a name="l02365"></a>02365 <span class="comment">     * @param executionContext current execution context</span>
<a name="l02366"></a>02366 <span class="comment">     * @return the result of the function.</span>
<a name="l02367"></a>02367 <span class="comment">     */</span>
<a name="l02368"></a>02368     <span class="keywordtype">double</span>
<a name="l02369"></a>02369     functionStringLength(
<a name="l02370"></a>02370             XalanNode*              context,
<a name="l02371"></a>02371             OpCodeMapPositionType   opPos,
<a name="l02372"></a>02372             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext) <span class="keyword">const</span>;
<a name="l02373"></a>02373 <span class="comment"></span>
<a name="l02374"></a>02374 <span class="comment">    /**</span>
<a name="l02375"></a>02375 <span class="comment">     * Handle the built-in function &quot;sum&quot;.</span>
<a name="l02376"></a>02376 <span class="comment">     *</span>
<a name="l02377"></a>02377 <span class="comment">     * @param context The current source tree context node.</span>
<a name="l02378"></a>02378 <span class="comment">     * @param opPos The current position in the Op Map.</span>
<a name="l02379"></a>02379 <span class="comment">     * @param executionContext current execution context</span>
<a name="l02380"></a>02380 <span class="comment">     * @return the result of the function.</span>
<a name="l02381"></a>02381 <span class="comment">     */</span>
<a name="l02382"></a>02382     <span class="keywordtype">double</span>
<a name="l02383"></a>02383     functionSum(
<a name="l02384"></a>02384             XalanNode*              context,
<a name="l02385"></a>02385             OpCodeMapPositionType   opPos,
<a name="l02386"></a>02386             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext) <span class="keyword">const</span>;
<a name="l02387"></a>02387 <span class="comment"></span>
<a name="l02388"></a>02388 <span class="comment">    /**</span>
<a name="l02389"></a>02389 <span class="comment">     * Get a numeric operand for an expression.</span>
<a name="l02390"></a>02390 <span class="comment">     * @param context The current source tree context node.</span>
<a name="l02391"></a>02391 <span class="comment">     * @param opPos The current position in the Op Map.</span>
<a name="l02392"></a>02392 <span class="comment">     * @param executionContext current execution context</span>
<a name="l02393"></a>02393 <span class="comment">     * @return The value of the operand.</span>
<a name="l02394"></a>02394 <span class="comment">     */</span>
<a name="l02395"></a>02395     <span class="keywordtype">double</span>
<a name="l02396"></a>02396     getNumericOperand(
<a name="l02397"></a>02397             XalanNode*              context,
<a name="l02398"></a>02398             OpCodeMapPositionType   opPos,
<a name="l02399"></a>02399             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext) <span class="keyword">const</span>;
<a name="l02400"></a>02400 
<a name="l02401"></a>02401 <span class="keyword">private</span>:
<a name="l02402"></a>02402 
<a name="l02403"></a>02403     <span class="comment">// These are not implemented...</span>
<a name="l02404"></a>02404     XPath(<span class="keyword">const</span> XPath&amp;);
<a name="l02405"></a>02405 
<a name="l02406"></a>02406     XPath&amp;
<a name="l02407"></a>02407     operator=(<span class="keyword">const</span> XPath&amp;);
<a name="l02408"></a>02408 
<a name="l02409"></a>02409     <span class="keywordtype">bool</span>
<a name="l02410"></a>02410     <a class="code" href="ElemAttributeSet_8hpp.html#ae199bc16afddda1065706543e752d292">operator==</a>(<span class="keyword">const</span> XPath&amp;) <span class="keyword">const</span>;
<a name="l02411"></a>02411 
<a name="l02412"></a>02412     <span class="comment">// Default vector allocation sizes.</span>
<a name="l02413"></a>02413     <span class="keyword">enum</span>
<a name="l02414"></a>02414     {
<a name="l02415"></a>02415         eDefaultTargetDataSize = 5
<a name="l02416"></a>02416     };
<a name="l02417"></a>02417 
<a name="l02418"></a>02418     OpCodeMapPositionType
<a name="l02419"></a>02419     getInitialOpCodePosition()<span class="keyword"> const</span>
<a name="l02420"></a>02420 <span class="keyword">    </span>{
<a name="l02421"></a>02421 <span class="preprocessor">#if defined(XALAN_XPATH_EXPRESSION_USE_ITERATORS)</span>
<a name="l02422"></a>02422 <span class="preprocessor"></span>        assert(m_expression.getOpCodeMapValue(0) == XPathExpression::eOP_XPATH);
<a name="l02423"></a>02423 <span class="preprocessor">#else</span>
<a name="l02424"></a>02424 <span class="preprocessor"></span>        assert(m_expression.getOpCodeMapValue(
<a name="l02425"></a>02425                     m_expression.getInitialOpCodePosition()) == <a class="code" href="classXPathExpression.html#ada97064c605da88a9fcd05fd6b2deb51acaabe18d7c221c05bb0775e78c18b05f" title="[OP_XPATH] [length] {expression}">XPathExpression::eOP_XPATH</a>);
<a name="l02426"></a>02426 <span class="preprocessor">#endif</span>
<a name="l02427"></a>02427 <span class="preprocessor"></span>        <span class="keywordflow">return</span> m_expression.getInitialOpCodePosition() + 2;
<a name="l02428"></a>02428     }
<a name="l02429"></a>02429 
<a name="l02430"></a>02430     eMatchScore
<a name="l02431"></a>02431     locationPathPattern(
<a name="l02432"></a>02432             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext,
<a name="l02433"></a>02433             XalanNode&amp;              context, 
<a name="l02434"></a>02434             OpCodeMapPositionType   opPos) <span class="keyword">const</span>;
<a name="l02435"></a>02435 
<a name="l02436"></a>02436 <span class="keyword">protected</span>:
<a name="l02437"></a>02437 <span class="comment"></span>
<a name="l02438"></a>02438 <span class="comment">    /**</span>
<a name="l02439"></a>02439 <span class="comment">     * Execute a step in a location path.</span>
<a name="l02440"></a>02440 <span class="comment">     *</span>
<a name="l02441"></a>02441 <span class="comment">     * @param xpath The xpath that is executing</span>
<a name="l02442"></a>02442 <span class="comment">     * @param context The current source tree context node</span>
<a name="l02443"></a>02443 <span class="comment">     * @param opPos The current position in the xpath operation map array</span>
<a name="l02444"></a>02444 <span class="comment">     * @param queryResults The set of nodes that matches the step.</span>
<a name="l02445"></a>02445 <span class="comment">     */</span>
<a name="l02446"></a>02446     <span class="keywordtype">void</span>
<a name="l02447"></a>02447     step(
<a name="l02448"></a>02448             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext,
<a name="l02449"></a>02449             XalanNode*              context, 
<a name="l02450"></a>02450             OpCodeMapPositionType   opPos,
<a name="l02451"></a>02451             <a class="code" href="classMutableNodeRefList.html" title="Local implementation of MutableNodeRefList.">MutableNodeRefList</a>&amp;     queryResults) <span class="keyword">const</span>;
<a name="l02452"></a>02452 <span class="comment"></span>
<a name="l02453"></a>02453 <span class="comment">    /**</span>
<a name="l02454"></a>02454 <span class="comment">     * Potentially evaluate a predicate in a match pattern step.</span>
<a name="l02455"></a>02455 <span class="comment">     *</span>
<a name="l02456"></a>02456 <span class="comment">     * @param executionContext The current execution context.</span>
<a name="l02457"></a>02457 <span class="comment">     * @param context          The current source tree context node.</span>
<a name="l02458"></a>02458 <span class="comment">     * @param opPos            The current position in the Op Map.</span>
<a name="l02459"></a>02459 <span class="comment">     * @param startOpPos       The original position for the step in the Op Map.</span>
<a name="l02460"></a>02460 <span class="comment">     * @param score            The current match score for the context node.</span>
<a name="l02461"></a>02461 <span class="comment">     * @return The resulting match score</span>
<a name="l02462"></a>02462 <span class="comment">     */</span>
<a name="l02463"></a>02463     eMatchScore
<a name="l02464"></a>02464     doStepPredicate(
<a name="l02465"></a>02465             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext,
<a name="l02466"></a>02466             XalanNode*              context, 
<a name="l02467"></a>02467             OpCodeMapPositionType   opPos,
<a name="l02468"></a>02468             OpCodeMapPositionType   startOpPos,
<a name="l02469"></a>02469             eMatchScore             score) <span class="keyword">const</span>;
<a name="l02470"></a>02470 <span class="comment"></span>
<a name="l02471"></a>02471 <span class="comment">    /**</span>
<a name="l02472"></a>02472 <span class="comment">     * Execute a step in a match pattern&#39;s location path.</span>
<a name="l02473"></a>02473 <span class="comment">     *</span>
<a name="l02474"></a>02474 <span class="comment">     * @param xpath The xpath that is executing</span>
<a name="l02475"></a>02475 <span class="comment">     * @param context The current source tree context node</span>
<a name="l02476"></a>02476 <span class="comment">     * @param opPos The current position in the xpath operation map array</span>
<a name="l02477"></a>02477 <span class="comment">     * @param scoreHolder a reference to an eMatchScore to receive</span>
<a name="l02478"></a>02478 <span class="comment">     * the result.</span>
<a name="l02479"></a>02479 <span class="comment">     * @return the last matched context node</span>
<a name="l02480"></a>02480 <span class="comment">     */</span>
<a name="l02481"></a>02481     XalanNode*
<a name="l02482"></a>02482     stepPattern(
<a name="l02483"></a>02483             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext,
<a name="l02484"></a>02484             XalanNode*              context, 
<a name="l02485"></a>02485             OpCodeMapPositionType   opPos,
<a name="l02486"></a>02486             eMatchScore&amp;            scoreHolder) <span class="keyword">const</span>;
<a name="l02487"></a>02487 
<a name="l02488"></a>02488     OpCodeMapPositionType
<a name="l02489"></a>02489     findNodeSet(
<a name="l02490"></a>02490             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext,
<a name="l02491"></a>02491             XalanNode*              context, 
<a name="l02492"></a>02492             OpCodeMapPositionType   opPos,
<a name="l02493"></a>02493             OpCodeMapValueType      stepType,
<a name="l02494"></a>02494             <a class="code" href="classMutableNodeRefList.html" title="Local implementation of MutableNodeRefList.">MutableNodeRefList</a>&amp;     subQueryResults) <span class="keyword">const</span>;
<a name="l02495"></a>02495 
<a name="l02496"></a>02496     OpCodeMapPositionType
<a name="l02497"></a>02497     findRoot(
<a name="l02498"></a>02498             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext,
<a name="l02499"></a>02499             XalanNode*              context, 
<a name="l02500"></a>02500             OpCodeMapPositionType   opPos,
<a name="l02501"></a>02501             OpCodeMapValueType      stepType,
<a name="l02502"></a>02502             <a class="code" href="classMutableNodeRefList.html" title="Local implementation of MutableNodeRefList.">MutableNodeRefList</a>&amp;     subQueryResults) <span class="keyword">const</span>;
<a name="l02503"></a>02503 
<a name="l02504"></a>02504     OpCodeMapPositionType
<a name="l02505"></a>02505     findParent(
<a name="l02506"></a>02506             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext,
<a name="l02507"></a>02507             XalanNode*              context, 
<a name="l02508"></a>02508             OpCodeMapPositionType   opPos,
<a name="l02509"></a>02509             OpCodeMapValueType      stepType,
<a name="l02510"></a>02510             <a class="code" href="classMutableNodeRefList.html" title="Local implementation of MutableNodeRefList.">MutableNodeRefList</a>&amp;     subQueryResults) <span class="keyword">const</span>;
<a name="l02511"></a>02511 
<a name="l02512"></a>02512     OpCodeMapPositionType
<a name="l02513"></a>02513     findSelf(
<a name="l02514"></a>02514             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext,
<a name="l02515"></a>02515             XalanNode*              context, 
<a name="l02516"></a>02516             OpCodeMapPositionType   opPos,
<a name="l02517"></a>02517             OpCodeMapValueType      stepType,
<a name="l02518"></a>02518             <a class="code" href="classMutableNodeRefList.html" title="Local implementation of MutableNodeRefList.">MutableNodeRefList</a>&amp;     subQueryResults) <span class="keyword">const</span>;
<a name="l02519"></a>02519 
<a name="l02520"></a>02520     OpCodeMapPositionType
<a name="l02521"></a>02521     findAncestors(
<a name="l02522"></a>02522             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext,
<a name="l02523"></a>02523             XalanNode*              context, 
<a name="l02524"></a>02524             OpCodeMapPositionType   opPos,
<a name="l02525"></a>02525             OpCodeMapValueType      stepType,
<a name="l02526"></a>02526             <a class="code" href="classMutableNodeRefList.html" title="Local implementation of MutableNodeRefList.">MutableNodeRefList</a>&amp;     subQueryResults) <span class="keyword">const</span>;
<a name="l02527"></a>02527 
<a name="l02528"></a>02528     OpCodeMapPositionType
<a name="l02529"></a>02529     findAncestorsOrSelf(
<a name="l02530"></a>02530             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext,
<a name="l02531"></a>02531             XalanNode*              context, 
<a name="l02532"></a>02532             OpCodeMapPositionType   opPos,
<a name="l02533"></a>02533             OpCodeMapValueType      stepType,
<a name="l02534"></a>02534             <a class="code" href="classMutableNodeRefList.html" title="Local implementation of MutableNodeRefList.">MutableNodeRefList</a>&amp;     subQueryResults) <span class="keyword">const</span>;
<a name="l02535"></a>02535 
<a name="l02536"></a>02536     OpCodeMapPositionType
<a name="l02537"></a>02537     findAttributes(
<a name="l02538"></a>02538             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext,
<a name="l02539"></a>02539             XalanNode*              context, 
<a name="l02540"></a>02540             OpCodeMapPositionType   opPos,
<a name="l02541"></a>02541             OpCodeMapValueType      stepType,
<a name="l02542"></a>02542             <a class="code" href="classMutableNodeRefList.html" title="Local implementation of MutableNodeRefList.">MutableNodeRefList</a>&amp;     subQueryResults) <span class="keyword">const</span>;
<a name="l02543"></a>02543 
<a name="l02544"></a>02544     OpCodeMapPositionType
<a name="l02545"></a>02545     findChildren(
<a name="l02546"></a>02546             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext,
<a name="l02547"></a>02547             XalanNode*              context, 
<a name="l02548"></a>02548             OpCodeMapPositionType   opPos,
<a name="l02549"></a>02549             OpCodeMapValueType      stepType,
<a name="l02550"></a>02550             <a class="code" href="classMutableNodeRefList.html" title="Local implementation of MutableNodeRefList.">MutableNodeRefList</a>&amp;     subQueryResults) <span class="keyword">const</span>;
<a name="l02551"></a>02551 
<a name="l02552"></a>02552     OpCodeMapPositionType
<a name="l02553"></a>02553     findDescendants(
<a name="l02554"></a>02554             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext,
<a name="l02555"></a>02555             XalanNode*              context, 
<a name="l02556"></a>02556             OpCodeMapPositionType   opPos,
<a name="l02557"></a>02557             OpCodeMapValueType      stepType,
<a name="l02558"></a>02558             <a class="code" href="classMutableNodeRefList.html" title="Local implementation of MutableNodeRefList.">MutableNodeRefList</a>&amp;     subQueryResults) <span class="keyword">const</span>;
<a name="l02559"></a>02559 
<a name="l02560"></a>02560     OpCodeMapPositionType
<a name="l02561"></a>02561     findFollowing(
<a name="l02562"></a>02562             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext,
<a name="l02563"></a>02563             XalanNode*              context, 
<a name="l02564"></a>02564             OpCodeMapPositionType   opPos,
<a name="l02565"></a>02565             OpCodeMapValueType      stepType,
<a name="l02566"></a>02566             <a class="code" href="classMutableNodeRefList.html" title="Local implementation of MutableNodeRefList.">MutableNodeRefList</a>&amp;     subQueryResults) <span class="keyword">const</span>;
<a name="l02567"></a>02567 
<a name="l02568"></a>02568     OpCodeMapPositionType
<a name="l02569"></a>02569     findFollowingSiblings(
<a name="l02570"></a>02570             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext,
<a name="l02571"></a>02571             XalanNode*              context, 
<a name="l02572"></a>02572             OpCodeMapPositionType   opPos,
<a name="l02573"></a>02573             OpCodeMapValueType      stepType,
<a name="l02574"></a>02574             <a class="code" href="classMutableNodeRefList.html" title="Local implementation of MutableNodeRefList.">MutableNodeRefList</a>&amp;     subQueryResults) <span class="keyword">const</span>;
<a name="l02575"></a>02575 
<a name="l02576"></a>02576     OpCodeMapPositionType
<a name="l02577"></a>02577     findPreceeding(
<a name="l02578"></a>02578             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext,
<a name="l02579"></a>02579             XalanNode*              context, 
<a name="l02580"></a>02580             OpCodeMapPositionType   opPos,
<a name="l02581"></a>02581             OpCodeMapValueType      stepType,
<a name="l02582"></a>02582             <a class="code" href="classMutableNodeRefList.html" title="Local implementation of MutableNodeRefList.">MutableNodeRefList</a>&amp;     subQueryResults) <span class="keyword">const</span>;
<a name="l02583"></a>02583 
<a name="l02584"></a>02584     OpCodeMapPositionType
<a name="l02585"></a>02585     findPreceedingSiblings(
<a name="l02586"></a>02586             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext,
<a name="l02587"></a>02587             XalanNode*              context, 
<a name="l02588"></a>02588             OpCodeMapPositionType   opPos,
<a name="l02589"></a>02589             OpCodeMapValueType      stepType,
<a name="l02590"></a>02590             <a class="code" href="classMutableNodeRefList.html" title="Local implementation of MutableNodeRefList.">MutableNodeRefList</a>&amp;     subQueryResults) <span class="keyword">const</span>;
<a name="l02591"></a>02591 
<a name="l02592"></a>02592     OpCodeMapPositionType
<a name="l02593"></a>02593     findNamespace(
<a name="l02594"></a>02594             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext,
<a name="l02595"></a>02595             XalanNode*              context, 
<a name="l02596"></a>02596             OpCodeMapPositionType   opPos,
<a name="l02597"></a>02597             OpCodeMapValueType      stepType,
<a name="l02598"></a>02598             <a class="code" href="classMutableNodeRefList.html" title="Local implementation of MutableNodeRefList.">MutableNodeRefList</a>&amp;     subQueryResults) <span class="keyword">const</span>;
<a name="l02599"></a>02599 
<a name="l02600"></a>02600     OpCodeMapPositionType
<a name="l02601"></a>02601     findNodesOnUnknownAxis(
<a name="l02602"></a>02602             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext,
<a name="l02603"></a>02603             XalanNode*              context, 
<a name="l02604"></a>02604             OpCodeMapPositionType   opPos,
<a name="l02605"></a>02605             OpCodeMapValueType      stepType,
<a name="l02606"></a>02606             <a class="code" href="classMutableNodeRefList.html" title="Local implementation of MutableNodeRefList.">MutableNodeRefList</a>&amp;     subQueryResults) <span class="keyword">const</span>;
<a name="l02607"></a>02607 
<a name="l02608"></a>02608     OpCodeMapPositionType
<a name="l02609"></a>02609     predicates(
<a name="l02610"></a>02610             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext,
<a name="l02611"></a>02611             OpCodeMapPositionType   opPos,
<a name="l02612"></a>02612             <a class="code" href="classMutableNodeRefList.html" title="Local implementation of MutableNodeRefList.">MutableNodeRefList</a>&amp;     subQueryResults) <span class="keyword">const</span>;
<a name="l02613"></a>02613 
<a name="l02614"></a>02614     eMatchScore
<a name="l02615"></a>02615     handleFoundIndex(
<a name="l02616"></a>02616             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext,
<a name="l02617"></a>02617             XalanNode*              localContext,
<a name="l02618"></a>02618             OpCodeMapPositionType   startOpPos) <span class="keyword">const</span>;
<a name="l02619"></a>02619 
<a name="l02620"></a>02620     eMatchScore
<a name="l02621"></a>02621     handleFoundIndexPositional(
<a name="l02622"></a>02622             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext,
<a name="l02623"></a>02623             XalanNode*              localContext,
<a name="l02624"></a>02624             OpCodeMapPositionType   startOpPos) <span class="keyword">const</span>;
<a name="l02625"></a>02625 
<a name="l02626"></a>02626 <span class="keyword">private</span>:
<a name="l02627"></a>02627 
<a name="l02628"></a>02628     <span class="keywordtype">void</span>
<a name="l02629"></a>02629     unknownOpCodeError(
<a name="l02630"></a>02630             XalanNode*              context,
<a name="l02631"></a>02631             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext,
<a name="l02632"></a>02632             OpCodeMapPositionType   opPos) <span class="keyword">const</span>;
<a name="l02633"></a>02633 
<a name="l02634"></a>02634     <span class="keywordtype">void</span>
<a name="l02635"></a>02635     notNodeSetError(
<a name="l02636"></a>02636             XalanNode*              context,
<a name="l02637"></a>02637             <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>&amp;  executionContext) <span class="keyword">const</span>;
<a name="l02638"></a>02638 
<a name="l02639"></a>02639     <span class="comment">// Data members...</span>
<a name="l02640"></a>02640 <span class="comment"></span>
<a name="l02641"></a>02641 <span class="comment">    /**</span>
<a name="l02642"></a>02642 <span class="comment">     *</span>
<a name="l02643"></a>02643 <span class="comment">     * Holds information about the current expression.</span>
<a name="l02644"></a>02644 <span class="comment">     *</span>
<a name="l02645"></a>02645 <span class="comment">     */</span>
<a name="l02646"></a>02646     <a class="code" href="classXPathExpression.html">XPathExpression</a>     m_expression;
<a name="l02647"></a>02647 <span class="comment"></span>
<a name="l02648"></a>02648 <span class="comment">    /**</span>
<a name="l02649"></a>02649 <span class="comment">     * A Locator for reporting errors.</span>
<a name="l02650"></a>02650 <span class="comment">     */</span>
<a name="l02651"></a>02651     <span class="keyword">const</span> Locator*      m_locator;
<a name="l02652"></a>02652 <span class="comment"></span>
<a name="l02653"></a>02653 <span class="comment">    /**</span>
<a name="l02654"></a>02654 <span class="comment">     * If true, the XPath can allocated XObjects in more</span>
<a name="l02655"></a>02655 <span class="comment">     * efficient ways, since its lifetime is guaranteed</span>
<a name="l02656"></a>02656 <span class="comment">     * to be at least that of the transformation.</span>
<a name="l02657"></a>02657 <span class="comment">     */</span>
<a name="l02658"></a>02658     <span class="keywordtype">bool</span>                m_inStylesheet;
<a name="l02659"></a>02659 <span class="comment"></span>
<a name="l02660"></a>02660 <span class="comment">    /**</span>
<a name="l02661"></a>02661 <span class="comment">     *</span>
<a name="l02662"></a>02662 <span class="comment">     * This is the table of installed functions.</span>
<a name="l02663"></a>02663 <span class="comment">     *</span>
<a name="l02664"></a>02664 <span class="comment">     */</span>
<a name="l02665"></a>02665     <span class="keyword">static</span> FunctionTableType        s_functions;
<a name="l02666"></a>02666 
<a name="l02667"></a>02667     <span class="keyword">static</span> <span class="keyword">const</span> <a class="code" href="classXalanDOMString.html">XalanDOMString</a>     s_emptyString;
<a name="l02668"></a>02668 };
<a name="l02669"></a>02669 
<a name="l02670"></a>02670 
<a name="l02671"></a>02671 
<a name="l02672"></a>02672 XALAN_CPP_NAMESPACE_END
<a name="l02673"></a>02673 
<a name="l02674"></a>02674 
<a name="l02675"></a>02675 
<a name="l02676"></a>02676 <span class="preprocessor">#endif  // XPATH_HEADER_GUARD_1357924680</span>
</pre></div></div>
</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>
