<HTML><HEAD><TITLE>Xalan-C++ API Documentation</TITLE></HEAD>
<BODY>
<h2 align="center">Xalan-C++ API Documentation</h2>
<h3 align="center">The Xalan C++ XSLT Processor Version 1.10</h3>
</BODY>
<!-- Generated by Doxygen 1.2.8.1 -->
<center>
<a class="qindex" href="index.html">Main Page</a> &nbsp; <a class="qindex" href="hierarchy.html">Class Hierarchy</a> &nbsp; <a class="qindex" href="classes.html">Alphabetical List</a> &nbsp; <a class="qindex" href="annotated.html">Compound List</a> &nbsp; <a class="qindex" href="files.html">File List</a> &nbsp; <a class="qindex" href="functions.html">Compound Members</a> &nbsp; <a class="qindex" href="globals.html">File Members</a> &nbsp; </center>
<hr><h1>VariablesStack  Class Reference</h1>Defines a class to keep track of a stack for macro arguments. 
<a href="#_details">More...</a>
<p>
<code>#include &lt;<a class="el" href="VariablesStack_8hpp-source.html">VariablesStack.hpp</a>&gt;</code>
<p>
<a href="classVariablesStack-members.html">List of all members.</a><h2>Public Types</h2>
<ul>
<li>typedef unsigned long <a class="el" href="classVariablesStack.html#s0">size_type</a>
<li>typedef XalanVector&lt;<a class="el" href="structVariablesStack_1_1ParamsVectorEntry.html">ParamsVectorEntry</a>&gt; <a class="el" href="classVariablesStack.html#s1">ParamsVectorType</a>
<li>typedef XalanVector&lt;const <br>
<a class="el" href="classElemVariable.html">ElemVariable</a>*&gt; <a class="el" href="classVariablesStack.html#s2">RecursionGuardStackType</a>
<li>typedef XalanVector&lt;const <br>
<a class="el" href="classElemTemplateElement.html">ElemTemplateElement</a>*&gt; <a class="el" href="classVariablesStack.html#s3">ElemTemplateElementStackType</a>
<li>typedef XalanVector&lt;<a class="el" href="classVariablesStack_1_1StackEntry.html">StackEntry</a>&gt; <a class="el" href="classVariablesStack.html#s4">VariableStackStackType</a>
<li>enum { <a class="el" href="classVariablesStack.html#s6s5">eDefaultStackSize</a> =  100 
 }
</ul>
<h2>Public Methods</h2>
<ul>
<li><a class="el" href="classVariablesStack.html#a0">VariablesStack</a> (<a class="el" href="XalanMemoryManagement_8hpp.html#a5">MemoryManagerType</a> &amp;theManager)
<dl class="el"><dd><font size=-1><em>Constructor for a variable stack.</em> <a href="#a0">More...</a><em><br><br></em></font></dl><li><a class="el" href="classVariablesStack.html#a1">~VariablesStack</a> ()
<li>void <a class="el" href="classVariablesStack.html#a2">reset</a> ()
<dl class="el"><dd><font size=-1><em>Reset the stack.</em> <a href="#a2">More...</a><em><br><br></em></font></dl><li>void <a class="el" href="classVariablesStack.html#a3">pushElementFrame</a> (const <a class="el" href="classElemTemplateElement.html">ElemTemplateElement</a> *elem)
<dl class="el"><dd><font size=-1><em>Push a frame marker for an element.</em> <a href="#a3">More...</a><em><br><br></em></font></dl><li>void <a class="el" href="classVariablesStack.html#a4">popElementFrame</a> ()
<dl class="el"><dd><font size=-1><em>Pop a frame marker for an element.</em> <a href="#a4">More...</a><em><br><br></em></font></dl><li>void <a class="el" href="classVariablesStack.html#a5">pushContextMarker</a> ()
<dl class="el"><dd><font size=-1><em>Push a context marker onto the stack to let us know when to stop searching for a var.</em> <a href="#a5">More...</a><em><br><br></em></font></dl><li>void <a class="el" href="classVariablesStack.html#a6">popContextMarker</a> ()
<dl class="el"><dd><font size=-1><em>Pop the current context from the current context stack.</em> <a href="#a6">More...</a><em><br><br></em></font></dl><li>void <a class="el" href="classVariablesStack.html#a7">pushParams</a> (const <a class="el" href="classVariablesStack.html#s1">ParamsVectorType</a> &amp;theParams)
<dl class="el"><dd><font size=-1><em>Push the provided objects as parameters.</em> <a href="#a7">More...</a><em><br><br></em></font></dl><li>const <a class="el" href="classXObjectPtr.html">XObjectPtr</a> <a class="el" href="classVariablesStack.html#a8">getParamVariable</a> (const <a class="el" href="classXalanQName.html">XalanQName</a> &amp;qname, <a class="el" href="classStylesheetExecutionContext.html">StylesheetExecutionContext</a> &amp;executionContext, bool &amp;fNameFound)
<dl class="el"><dd><font size=-1><em>Given a name, return a string representing the value, but don't look in the global space.</em> <a href="#a8">More...</a><em><br><br></em></font></dl><li>const <a class="el" href="classXObjectPtr.html">XObjectPtr</a> <a class="el" href="classVariablesStack.html#a9">getVariable</a> (const <a class="el" href="classXalanQName.html">XalanQName</a> &amp;qname, <a class="el" href="classStylesheetExecutionContext.html">StylesheetExecutionContext</a> &amp;executionContext, bool &amp;fNameFound)
<dl class="el"><dd><font size=-1><em>Given a name, find the corresponding <a class="el" href="classXObject.html">XObject</a>.</em> <a href="#a9">More...</a><em><br><br></em></font></dl><li>void <a class="el" href="classVariablesStack.html#a10">pushVariable</a> (const <a class="el" href="classXalanQName.html">XalanQName</a> &amp;name, const <a class="el" href="classElemVariable.html">ElemVariable</a> *var, const <a class="el" href="classElemTemplateElement.html">ElemTemplateElement</a> *e)
<dl class="el"><dd><font size=-1><em>Push a named variable onto the processor variable stack.</em> <a href="#a10">More...</a><em><br><br></em></font></dl><li>void <a class="el" href="classVariablesStack.html#a11">pushVariable</a> (const <a class="el" href="classXalanQName.html">XalanQName</a> &amp;name, const <a class="el" href="classXObjectPtr.html">XObjectPtr</a> &amp;val, const <a class="el" href="classElemTemplateElement.html">ElemTemplateElement</a> *e)
<dl class="el"><dd><font size=-1><em>Push a named variable onto the processor variable stack.</em> <a href="#a11">More...</a><em><br><br></em></font></dl><li>void <a class="el" href="classVariablesStack.html#a12">start</a> ()
<dl class="el"><dd><font size=-1><em>Mark the top of the stack.</em> <a href="#a12">More...</a><em><br><br></em></font></dl><li>void <a class="el" href="classVariablesStack.html#a13">resetParams</a> ()
<dl class="el"><dd><font size=-1><em>Reset all params in the current stack frame.</em> <a href="#a13">More...</a><em><br><br></em></font></dl><li>void <a class="el" href="classVariablesStack.html#a14">markGlobalStackFrame</a> ()
<dl class="el"><dd><font size=-1><em>Mark the top of the global stack frame.</em> <a href="#a14">More...</a><em><br><br></em></font></dl><li>void <a class="el" href="classVariablesStack.html#a15">unmarkGlobalStackFrame</a> ()
<dl class="el"><dd><font size=-1><em>Clear the marking of the global stack frame.</em> <a href="#a15">More...</a><em><br><br></em></font></dl><li>void <a class="el" href="classVariablesStack.html#a16">setCurrentStackFrameIndex</a> (<a class="el" href="classVariablesStack.html#s0">size_type</a> currentStackFrameIndex=~0u)
<dl class="el"><dd><font size=-1><em>Set the top of the stack frame from where a search for a variable or param should take place.</em> <a href="#a16">More...</a><em><br><br></em></font></dl><li><a class="el" href="classVariablesStack.html#s0">size_type</a> <a class="el" href="classVariablesStack.html#a17">getCurrentStackFrameIndex</a> () const
<dl class="el"><dd><font size=-1><em>Get the top of the stack frame from where a search for a variable or param should take place.</em> <a href="#a17">More...</a><em><br><br></em></font></dl><li><a class="el" href="classVariablesStack.html#s0">size_type</a> <a class="el" href="classVariablesStack.html#a18">getGlobalStackFrameIndex</a> () const
<dl class="el"><dd><font size=-1><em>Get the top of the global stack frame.</em> <a href="#a18">More...</a><em><br><br></em></font></dl><li><a class="el" href="classVariablesStack.html#s0">size_type</a> <a class="el" href="classVariablesStack.html#a19">getStackSize</a> () const
</ul>
<hr><a name="_details"></a><h2>Detailed Description</h2>
Defines a class to keep track of a stack for macro arguments.
<p>
<hr><h2>Member Typedef Documentation</h2>
<a name="s3" doxytag="VariablesStack::ElemTemplateElementStackType"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td nowrap valign="top"><b> 
typedef XalanVector&lt; const <a class="el" href="classElemTemplateElement.html">ElemTemplateElement</a> *&gt; VariablesStack::ElemTemplateElementStackType&lt;const <a class="el" href="classElemTemplateElement.html">ElemTemplateElement</a>*&gt;
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
    </td>
  </tr>
</table>
<a name="s1" doxytag="VariablesStack::ParamsVectorType"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td nowrap valign="top"><b> 
typedef XalanVector&lt; <a class="el" href="structVariablesStack_1_1ParamsVectorEntry.html">ParamsVectorEntry</a> &gt; VariablesStack::ParamsVectorType&lt;<a class="el" href="structVariablesStack_1_1ParamsVectorEntry.html">ParamsVectorEntry</a>&gt;
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
    </td>
  </tr>
</table>
<a name="s2" doxytag="VariablesStack::RecursionGuardStackType"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td nowrap valign="top"><b> 
typedef XalanVector&lt; const <a class="el" href="classElemVariable.html">ElemVariable</a> *&gt; VariablesStack::RecursionGuardStackType&lt;const <a class="el" href="classElemVariable.html">ElemVariable</a>*&gt;
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
    </td>
  </tr>
</table>
<a name="s4" doxytag="VariablesStack::VariableStackStackType"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td nowrap valign="top"><b> 
typedef XalanVector&lt; <a class="el" href="classVariablesStack_1_1StackEntry.html">StackEntry</a> &gt; VariablesStack::VariableStackStackType&lt;<a class="el" href="classVariablesStack_1_1StackEntry.html">StackEntry</a>&gt;
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
    </td>
  </tr>
</table>
<a name="s0" doxytag="VariablesStack::size_type"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td nowrap valign="top"><b> 
typedef unsigned long VariablesStack::size_type
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
    </td>
  </tr>
</table>
<hr><h2>Member Enumeration Documentation</h2>
<a name="s6" doxytag="VariablesStack::@39"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td nowrap valign="top"><b> 
anonymous enum
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
<dl compact><dt>
<b>Enumeration values:</b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><a name="s6s5" doxytag="eDefaultStackSize"></a><em>eDefaultStackSize</em>
&nbsp;</td><td>
</td></tr>
</table>
</dl>
    </td>
  </tr>
</table>
<hr><h2>Constructor &amp; Destructor Documentation</h2>
<a name="a0" doxytag="VariablesStack::VariablesStack"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td nowrap valign="top"><b> 
VariablesStack::VariablesStack (
          </b></td>
          <td valign="bottom"><b>
<a class="el" href="XalanMemoryManagement_8hpp.html#a5">MemoryManagerType</a> &amp; <em>theManager</em>&nbsp;)<code> [explicit]</code>
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Constructor for a variable stack.
<p>
    </td>
  </tr>
</table>
<a name="a1" doxytag="VariablesStack::~VariablesStack"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td nowrap valign="top"><b> 
VariablesStack::~VariablesStack (
          </b></td>
          <td valign="bottom"><b>
)
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
    </td>
  </tr>
</table>
<hr><h2>Member Function Documentation</h2>
<a name="a17" doxytag="VariablesStack::getCurrentStackFrameIndex"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td nowrap valign="top"><b> 
<a class="el" href="classVariablesStack.html#s0">size_type</a> VariablesStack::getCurrentStackFrameIndex (
          </b></td>
          <td valign="bottom"><b>
) const
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Get the top of the stack frame from where a search for a variable or param should take place.
<p>
<dl compact><dt>
<b>Returns: </b><dd>
current value of index </dl>    </td>
  </tr>
</table>
<a name="a18" doxytag="VariablesStack::getGlobalStackFrameIndex"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td nowrap valign="top"><b> 
<a class="el" href="classVariablesStack.html#s0">size_type</a> VariablesStack::getGlobalStackFrameIndex (
          </b></td>
          <td valign="bottom"><b>
) const
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Get the top of the global stack frame.
<p>
<dl compact><dt>
<b>Returns: </b><dd>
current value of index </dl>    </td>
  </tr>
</table>
<a name="a8" doxytag="VariablesStack::getParamVariable"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td nowrap valign="top"><b> 
const <a class="el" href="classXObjectPtr.html">XObjectPtr</a> VariablesStack::getParamVariable (
          </b></td>
          <td valign="bottom"><b>
const <a class="el" href="classXalanQName.html">XalanQName</a> &amp; <em>qname</em>, 
          </b></td>
        </tr>
        <tr>
          <td></td>
          <td><b>
<a class="el" href="classStylesheetExecutionContext.html">StylesheetExecutionContext</a> &amp; <em>executionContext</em>, 
          </b></td>
        </tr>
        <tr>
          <td></td>
          <td><b>
bool &amp; <em>fNameFound</em>&nbsp;)
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Given a name, return a string representing the value, but don't look in the global space.
<p>
Since the variable may not yet have been evaluated, this may return a null <a class="el" href="classXObjectPtr.html">XObjectPtr</a>.<dl compact><dt>
<b>Parameters: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>theName</em>
&nbsp;</td><td>
name of variable </td></tr>
<tr><td valign=top><em>exeuctionContext</em>
&nbsp;</td><td>
the current execution context </td></tr>
<tr><td valign=top><em>fNameFound</em>
&nbsp;</td><td>
set to true if the name was found, false if not. </td></tr>
</table>
</dl><dl compact><dt>
<b>Returns: </b><dd>
pointer to <a class="el" href="classXObject.html">XObject</a> for variable </dl>    </td>
  </tr>
</table>
<a name="a19" doxytag="VariablesStack::getStackSize"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td nowrap valign="top"><b> 
<a class="el" href="classVariablesStack.html#s0">size_type</a> VariablesStack::getStackSize (
          </b></td>
          <td valign="bottom"><b>
) const
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
    </td>
  </tr>
</table>
<a name="a9" doxytag="VariablesStack::getVariable"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td nowrap valign="top"><b> 
const <a class="el" href="classXObjectPtr.html">XObjectPtr</a> VariablesStack::getVariable (
          </b></td>
          <td valign="bottom"><b>
const <a class="el" href="classXalanQName.html">XalanQName</a> &amp; <em>qname</em>, 
          </b></td>
        </tr>
        <tr>
          <td></td>
          <td><b>
<a class="el" href="classStylesheetExecutionContext.html">StylesheetExecutionContext</a> &amp; <em>executionContext</em>, 
          </b></td>
        </tr>
        <tr>
          <td></td>
          <td><b>
bool &amp; <em>fNameFound</em>&nbsp;)
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Given a name, find the corresponding <a class="el" href="classXObject.html">XObject</a>.
<p>
If the variable exists, but has not yet been evaluated, the variable will be evaluated and the result returned. This may return a null <a class="el" href="classXObjectPtr.html">XObjectPtr</a>, if the variable was not found.<dl compact><dt>
<b>Parameters: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>qname</em>
&nbsp;</td><td>
name of variable </td></tr>
<tr><td valign=top><em>exeuctionContext</em>
&nbsp;</td><td>
the current execution context </td></tr>
<tr><td valign=top><em>fNameFound</em>
&nbsp;</td><td>
set to true if the name was found, false if not. </td></tr>
</table>
</dl><dl compact><dt>
<b>Returns: </b><dd>
pointer to the corresponding <a class="el" href="classXObject.html">XObject</a> </dl>    </td>
  </tr>
</table>
<a name="a14" doxytag="VariablesStack::markGlobalStackFrame"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td nowrap valign="top"><b> 
void VariablesStack::markGlobalStackFrame (
          </b></td>
          <td valign="bottom"><b>
)
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Mark the top of the global stack frame.
<p>
    </td>
  </tr>
</table>
<a name="a6" doxytag="VariablesStack::popContextMarker"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td nowrap valign="top"><b> 
void VariablesStack::popContextMarker (
          </b></td>
          <td valign="bottom"><b>
)
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Pop the current context from the current context stack.
<p>
    </td>
  </tr>
</table>
<a name="a4" doxytag="VariablesStack::popElementFrame"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td nowrap valign="top"><b> 
void VariablesStack::popElementFrame (
          </b></td>
          <td valign="bottom"><b>
)
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Pop a frame marker for an element.
<p>
<dl compact><dt>
<b>Parameters: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>elem</em>
&nbsp;</td><td>
the element </td></tr>
</table>
</dl>    </td>
  </tr>
</table>
<a name="a5" doxytag="VariablesStack::pushContextMarker"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td nowrap valign="top"><b> 
void VariablesStack::pushContextMarker (
          </b></td>
          <td valign="bottom"><b>
)
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Push a context marker onto the stack to let us know when to stop searching for a var.
<p>
<dl compact><dt>
<b>Parameters: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>caller</em>
&nbsp;</td><td>
caller node </td></tr>
<tr><td valign=top><em>sourceNode</em>
&nbsp;</td><td>
source node </td></tr>
</table>
</dl>    </td>
  </tr>
</table>
<a name="a3" doxytag="VariablesStack::pushElementFrame"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td nowrap valign="top"><b> 
void VariablesStack::pushElementFrame (
          </b></td>
          <td valign="bottom"><b>
const <a class="el" href="classElemTemplateElement.html">ElemTemplateElement</a> * <em>elem</em>&nbsp;)
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Push a frame marker for an element.
<p>
<dl compact><dt>
<b>Parameters: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>elem</em>
&nbsp;</td><td>
the element </td></tr>
</table>
</dl>    </td>
  </tr>
</table>
<a name="a7" doxytag="VariablesStack::pushParams"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td nowrap valign="top"><b> 
void VariablesStack::pushParams (
          </b></td>
          <td valign="bottom"><b>
const <a class="el" href="classVariablesStack.html#s1">ParamsVectorType</a> &amp; <em>theParams</em>&nbsp;)
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Push the provided objects as parameters.
<p>
You must call <a class="el" href="classVariablesStack.html#a6">popContextMarker</a>() when you are done with the arguments.<dl compact><dt>
<b>Parameters: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>theParam</em>
&nbsp;</td><td>
The vector containing the parameters. </td></tr>
</table>
</dl>    </td>
  </tr>
</table>
<a name="a11" doxytag="VariablesStack::pushVariable"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td nowrap valign="top"><b> 
void VariablesStack::pushVariable (
          </b></td>
          <td valign="bottom"><b>
const <a class="el" href="classXalanQName.html">XalanQName</a> &amp; <em>name</em>, 
          </b></td>
        </tr>
        <tr>
          <td></td>
          <td><b>
const <a class="el" href="classXObjectPtr.html">XObjectPtr</a> &amp; <em>val</em>, 
          </b></td>
        </tr>
        <tr>
          <td></td>
          <td><b>
const <a class="el" href="classElemTemplateElement.html">ElemTemplateElement</a> * <em>e</em>&nbsp;)
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Push a named variable onto the processor variable stack.
<p>
Don't forget to call startContext before pushing a series of arguments for a given template.<dl compact><dt>
<b>Parameters: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>name</em>
&nbsp;</td><td>
name of variable </td></tr>
<tr><td valign=top><em>val</em>
&nbsp;</td><td>
pointer to <a class="el" href="classXObject.html">XObject</a> value </td></tr>
<tr><td valign=top><em>e</em>
&nbsp;</td><td>
element marker for variable </td></tr>
</table>
</dl>    </td>
  </tr>
</table>
<a name="a10" doxytag="VariablesStack::pushVariable"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td nowrap valign="top"><b> 
void VariablesStack::pushVariable (
          </b></td>
          <td valign="bottom"><b>
const <a class="el" href="classXalanQName.html">XalanQName</a> &amp; <em>name</em>, 
          </b></td>
        </tr>
        <tr>
          <td></td>
          <td><b>
const <a class="el" href="classElemVariable.html">ElemVariable</a> * <em>var</em>, 
          </b></td>
        </tr>
        <tr>
          <td></td>
          <td><b>
const <a class="el" href="classElemTemplateElement.html">ElemTemplateElement</a> * <em>e</em>&nbsp;)
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Push a named variable onto the processor variable stack.
<p>
Don't forget to call startContext before pushing a series of arguments for a given template.<dl compact><dt>
<b>Parameters: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>name</em>
&nbsp;</td><td>
name of variable </td></tr>
<tr><td valign=top><em>val</em>
&nbsp;</td><td>
pointer to <a class="el" href="classElemVariable.html">ElemVariable</a> </td></tr>
<tr><td valign=top><em>e</em>
&nbsp;</td><td>
element marker for variable </td></tr>
</table>
</dl>    </td>
  </tr>
</table>
<a name="a2" doxytag="VariablesStack::reset"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td nowrap valign="top"><b> 
void VariablesStack::reset (
          </b></td>
          <td valign="bottom"><b>
)
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Reset the stack.
<p>
    </td>
  </tr>
</table>
<a name="a13" doxytag="VariablesStack::resetParams"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td nowrap valign="top"><b> 
void VariablesStack::resetParams (
          </b></td>
          <td valign="bottom"><b>
)
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Reset all params in the current stack frame.
<p>
    </td>
  </tr>
</table>
<a name="a16" doxytag="VariablesStack::setCurrentStackFrameIndex"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td nowrap valign="top"><b> 
void VariablesStack::setCurrentStackFrameIndex (
          </b></td>
          <td valign="bottom"><b>
<a class="el" href="classVariablesStack.html#s0">size_type</a> <em>currentStackFrameIndex</em> = ~0u&nbsp;)
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Set the top of the stack frame from where a search for a variable or param should take place.
<p>
Calling with no parameter will cause the index to be set to the size of the stack.<dl compact><dt>
<b>Parameters: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>currentStackFrameIndex</em>
&nbsp;</td><td>
new value of index </td></tr>
</table>
</dl>    </td>
  </tr>
</table>
<a name="a12" doxytag="VariablesStack::start"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td nowrap valign="top"><b> 
void VariablesStack::start (
          </b></td>
          <td valign="bottom"><b>
)
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Mark the top of the stack.
<p>
    </td>
  </tr>
</table>
<a name="a15" doxytag="VariablesStack::unmarkGlobalStackFrame"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td nowrap valign="top"><b> 
void VariablesStack::unmarkGlobalStackFrame (
          </b></td>
          <td valign="bottom"><b>
)
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Clear the marking of the global stack frame.
<p>
    </td>
  </tr>
</table>
<hr><h2>Friends And Related Function Documentation</h2>
<a name="l1" doxytag="VariablesStack::CommitPushElementFrame"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td nowrap valign="top"><b> 
class CommitPushElementFrame<code> [friend]</code>
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
    </td>
  </tr>
</table>
<a name="l0" doxytag="VariablesStack::CommitPushParams"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td nowrap valign="top"><b> 
class CommitPushParams<code> [friend]</code>
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
    </td>
  </tr>
</table>
<a name="l2" doxytag="VariablesStack::EnsurePop"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td nowrap valign="top"><b> 
class EnsurePop<code> [friend]</code>
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
    </td>
  </tr>
</table>
<a name="l3" doxytag="VariablesStack::PushParamFunctor"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td nowrap valign="top"><b> 
class PushParamFunctor<code> [friend]</code>
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
    </td>
  </tr>
</table>
<a name="l4" doxytag="VariablesStack::SetAndRestoreForceGlobalSearch"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td nowrap valign="top"><b> 
class SetAndRestoreForceGlobalSearch<code> [friend]</code>
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
    </td>
  </tr>
</table>
<hr>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="VariablesStack_8hpp-source.html">VariablesStack.hpp</a></ul>
<p align="center"><a href="diagramnotes.html">Interpreting class diagrams</a></p>
<p><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
<i><A href="http://www.stack.nl/~dimitri/doxygen/">Doxygen</A> and 
<A href="http://www.research.att.com/sw/tools/graphviz/">GraphViz</A> are used to generate this API documentation from the Xalan-C header files.</I></FONT></p>

<TABLE border="0" cellpadding="0" cellspacing="0" width="820"><TR><TD bgcolor="#0086b2"><IMG height="1" src="../resources/dot.gif" width="1" alt="dot"></TD></TR></TABLE>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0" WIDTH="80%">
	<TR>
		<TD WIDTH="80%" VALIGN="TOP">
			<P ALIGN="CENTER"><B>Xalan-C++ XSLT Processor Version 1.10</B><BR>
			Copyright &copy; 1999-2004 The Apache Software Foundation. All Rights Reserved.</i></p>
		</TD>
	</TR>
	<TR>
		<TD WIDTH="100%">
			<P ALIGN="CENTER"><IMG SRC="ApacheLogo.jpg" WIDTH="387" HEIGHT="100" ALIGN="BOTTOM" BORDER="0" ALT="Apache Logo">
		</TD>
	</TR>
</TABLE>
