blob: a6a7c7e44a4278010abc086738de0df3991b2489 [file] [log] [blame]
<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>ElemApplyTemplates Class Reference</h1><code>#include &lt;<a class="el" href="ElemApplyTemplates_8hpp-source.html">ElemApplyTemplates.hpp</a>&gt;</code>
<p>
Inheritance diagram for ElemApplyTemplates:<p><center><img src="classElemApplyTemplates__inherit__graph.gif" border="0" usemap="#ElemApplyTemplates_inherit_map" alt="Inheritance graph"></center>
<map name="ElemApplyTemplates_inherit_map">
<area href="classElemForEach.html" shape="rect" coords="33,192,129,168">
<area href="classElemTemplateElement.html" shape="rect" coords="6,117,156,93">
<area href="classPrefixResolver.html" shape="rect" coords="30,43,132,19">
</map>
<center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center>Collaboration diagram for ElemApplyTemplates:<p><center><img src="classElemApplyTemplates__coll__graph.gif" border="0" usemap="#ElemApplyTemplates_coll_map" alt="Collaboration graph"></center>
<map name="ElemApplyTemplates_coll_map">
<area href="classElemForEach.html" shape="rect" coords="223,165,318,141">
<area href="classElemTemplateElement.html" shape="rect" coords="7,58,156,34">
<area href="classXPath.html" shape="rect" coords="308,58,361,34">
<area href="classXalanQName.html" shape="rect" coords="342,165,438,141">
</map>
<center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center><a href="classElemApplyTemplates-members.html">List of all members.</a><h2>Public Types</h2>
<ul>
<li>typedef <a class="el" href="classElemForEach.html">ElemForEach</a> <a class="el" href="classElemApplyTemplates.html#s0">ParentType</a>
</ul>
<h2>Public Methods</h2>
<ul>
<li><a class="el" href="classElemApplyTemplates.html#a0">ElemApplyTemplates</a> (<a class="el" href="classStylesheetConstructionContext.html">StylesheetConstructionContext</a> &amp;constructionContext, <a class="el" href="ExtensionNSHandler_8hpp.html#a1">Stylesheet</a> &amp;stylesheetTree, const <a class="el" href="classAttributeListType.html">AttributeListType</a> &amp;atts, int lineNumber, int columnNumber)
<dl class="el"><dd><font size=-1><em>Construct an object corresponding to an "xsl:apply-template" element.</em> <a href="#a0">More...</a><em><br><br></em></font></dl><li>virtual <a class="el" href="classElemApplyTemplates.html#a1">~ElemApplyTemplates</a> ()
<li>virtual const <a class="el" href="classXalanDOMString.html">XalanDOMString</a>&amp; <a class="el" href="classElemApplyTemplates.html#a2">getElementName</a> () const
<dl class="el"><dd><font size=-1><em>Get a string for the name of the element.</em> <a href="#a2">More...</a><em><br><br></em></font></dl><li>virtual const <a class="el" href="classElemTemplateElement.html">ElemTemplateElement</a>* <a class="el" href="classElemApplyTemplates.html#a3">startElement</a> (<a class="el" href="classStylesheetExecutionContext.html">StylesheetExecutionContext</a> &amp;executionContext) const
<dl class="el"><dd><font size=-1><em>Completes "pre-processing" before any sub-elements are invoked (i.e.</em> <a href="#a3">More...</a><em><br><br></em></font></dl><li>virtual void <a class="el" href="classElemApplyTemplates.html#a4">endElement</a> (<a class="el" href="classStylesheetExecutionContext.html">StylesheetExecutionContext</a> &amp;executionContext) const
<dl class="el"><dd><font size=-1><em>Completes "post-processing" afer any sub-elements are invoked (i.e.</em> <a href="#a4">More...</a><em><br><br></em></font></dl><li>virtual const <a class="el" href="classElemTemplateElement.html">ElemTemplateElement</a>* <a class="el" href="classElemApplyTemplates.html#a5">getNextChildElemToExecute</a> (<a class="el" href="classStylesheetExecutionContext.html">StylesheetExecutionContext</a> &amp;executionContext, const <a class="el" href="classElemTemplateElement.html">ElemTemplateElement</a> *currentElem) const
<dl class="el"><dd><font size=-1><em>Returns the next sub-element (i.e.</em> <a href="#a5">More...</a><em><br><br></em></font></dl><li>virtual const <a class="el" href="classElemTemplateElement.html">ElemTemplateElement</a>* <a class="el" href="classElemApplyTemplates.html#a6">getFirstChildElemToExecute</a> (<a class="el" href="classStylesheetExecutionContext.html">StylesheetExecutionContext</a> &amp;executionContext) const
<dl class="el"><dd><font size=-1><em>Returns the first sub-element (i.e.</em> <a href="#a6">More...</a><em><br><br></em></font></dl></ul>
<h2>Protected Methods</h2>
<ul>
<li>virtual bool <a class="el" href="classElemApplyTemplates.html#b0">childTypeAllowed</a> (int xslToken) const
<dl class="el"><dd><font size=-1><em>Given an xsl token type, determine whether or not a child of that type is allowed.</em> <a href="#b0">More...</a><em><br><br></em></font></dl><li>const <a class="el" href="classElemTemplateElement.html">ElemTemplateElement</a>* <a class="el" href="classElemApplyTemplates.html#b1">findNextTemplateToExecute</a> (<a class="el" href="classStylesheetExecutionContext.html">StylesheetExecutionContext</a> &amp;executionContext) const
</ul>
<hr><h2>Member Typedef Documentation</h2>
<a name="s0" doxytag="ElemApplyTemplates::ParentType"></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 <a class="el" href="classElemForEach.html">ElemForEach</a> ElemApplyTemplates::ParentType
</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>Constructor &amp; Destructor Documentation</h2>
<a name="a0" doxytag="ElemApplyTemplates::ElemApplyTemplates"></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>
ElemApplyTemplates::ElemApplyTemplates (
</b></td>
<td valign="bottom"><b>
<a class="el" href="classStylesheetConstructionContext.html">StylesheetConstructionContext</a> &amp; <em>constructionContext</em>,
</b></td>
</tr>
<tr>
<td></td>
<td><b>
<a class="el" href="ExtensionNSHandler_8hpp.html#a1">Stylesheet</a> &amp; <em>stylesheetTree</em>,
</b></td>
</tr>
<tr>
<td></td>
<td><b>
const <a class="el" href="classAttributeListType.html">AttributeListType</a> &amp; <em>atts</em>,
</b></td>
</tr>
<tr>
<td></td>
<td><b>
int <em>lineNumber</em>,
</b></td>
</tr>
<tr>
<td></td>
<td><b>
int <em>columnNumber</em>&nbsp;)
</b></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
<tr>
<td>
&nbsp;
</td>
<td>
<p>
Construct an object corresponding to an "xsl:apply-template" element.
<p>
<dl compact><dt>
<b>Parameters: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>constructionContext</em>
&nbsp;</td><td>
context for construction of object </td></tr>
<tr><td valign=top><em>stylesheetTree</em>
&nbsp;</td><td>
stylesheet containing element </td></tr>
<tr><td valign=top><em>atts</em>
&nbsp;</td><td>
list of attributes for element </td></tr>
<tr><td valign=top><em>lineNumber</em>
&nbsp;</td><td>
line number in document </td></tr>
<tr><td valign=top><em>columnNumber</em>
&nbsp;</td><td>
column number in document </td></tr>
</table>
</dl> </td>
</tr>
</table>
<a name="a1" doxytag="ElemApplyTemplates::~ElemApplyTemplates"></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>
ElemApplyTemplates::~ElemApplyTemplates (
</b></td>
<td valign="bottom"><b>
)<code> [virtual]</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><h2>Member Function Documentation</h2>
<a name="b0" doxytag="ElemApplyTemplates::childTypeAllowed"></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>
bool ElemApplyTemplates::childTypeAllowed (
</b></td>
<td valign="bottom"><b>
int <em>xslToken</em>&nbsp;) const<code> [protected, virtual]</code>
</b></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
<tr>
<td>
&nbsp;
</td>
<td>
<p>
Given an xsl token type, determine whether or not a child of that type is allowed.
<p>
This is so derived types can determine whether a particular type of child is allowed for the instance. It is called from <a class="el" href="classElemTemplateElement.html#a39">appendChildElem</a>().
<p>
The default is to allow no types (no children)<dl compact><dt>
<b>Parameters: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>xslToken</em>
&nbsp;</td><td>
The xsl token value of the child.
<p>
</td></tr>
</table>
</dl><dl compact><dt>
<b>Returns: </b><dd>
true if the child is allowed, or false if not. </dl>
<p>
Reimplemented from <a class="el" href="classElemTemplateElement.html#b11">ElemTemplateElement</a>. </td>
</tr>
</table>
<a name="a4" doxytag="ElemApplyTemplates::endElement"></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 ElemApplyTemplates::endElement (
</b></td>
<td valign="bottom"><b>
<a class="el" href="classStylesheetExecutionContext.html">StylesheetExecutionContext</a> &amp; <em>executionContext</em>&nbsp;) const<code> [virtual]</code>
</b></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
<tr>
<td>
&nbsp;
</td>
<td>
<p>
Completes "post-processing" afer any sub-elements are invoked (i.e.
<p>
children, attribute sets and templates). If there are no sub-elements it does nothing<dl compact><dt>
<b>Parameters: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>executionContext</em>
&nbsp;</td><td>
context to execute this element </td></tr>
</table>
</dl>
<p>
Reimplemented from <a class="el" href="classElemForEach.html#a6">ElemForEach</a>. </td>
</tr>
</table>
<a name="b1" doxytag="ElemApplyTemplates::findNextTemplateToExecute"></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="classElemTemplateElement.html">ElemTemplateElement</a> * ElemApplyTemplates::findNextTemplateToExecute (
</b></td>
<td valign="bottom"><b>
<a class="el" href="classStylesheetExecutionContext.html">StylesheetExecutionContext</a> &amp; <em>executionContext</em>&nbsp;) const<code> [protected]</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="a2" doxytag="ElemApplyTemplates::getElementName"></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="classXalanDOMString.html">XalanDOMString</a> &amp; ElemApplyTemplates::getElementName (
</b></td>
<td valign="bottom"><b>
) const<code> [virtual]</code>
</b></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
<tr>
<td>
&nbsp;
</td>
<td>
<p>
Get a string for the name of the element.
<p>
Useful for debugging purposes, and error reporting.
<p>
<dl compact><dt>
<b>Returns: </b><dd>
A string containing the name of the element. </dl>
<p>
Reimplemented from <a class="el" href="classElemForEach.html#a2">ElemForEach</a>. </td>
</tr>
</table>
<a name="a6" doxytag="ElemApplyTemplates::getFirstChildElemToExecute"></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="classElemTemplateElement.html">ElemTemplateElement</a> * ElemApplyTemplates::getFirstChildElemToExecute (
</b></td>
<td valign="bottom"><b>
<a class="el" href="classStylesheetExecutionContext.html">StylesheetExecutionContext</a> &amp; <em>executionContext</em>&nbsp;) const<code> [virtual]</code>
</b></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
<tr>
<td>
&nbsp;
</td>
<td>
<p>
Returns the first sub-element (i.e.
<p>
children, attribute-sets, templates) to execute.<dl compact><dt>
<b>Parameters: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>executionContext</em>
&nbsp;</td><td>
context to execute element </td></tr>
</table>
</dl><dl compact><dt>
<b>Returns: </b><dd>
first sub-element to execute, 0 only if no sub-elements to execute </dl>
<p>
Reimplemented from <a class="el" href="classElemTemplateElement.html#a32">ElemTemplateElement</a>. </td>
</tr>
</table>
<a name="a5" doxytag="ElemApplyTemplates::getNextChildElemToExecute"></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="classElemTemplateElement.html">ElemTemplateElement</a> * ElemApplyTemplates::getNextChildElemToExecute (
</b></td>
<td valign="bottom"><b>
<a class="el" href="classStylesheetExecutionContext.html">StylesheetExecutionContext</a> &amp; <em>executionContext</em>,
</b></td>
</tr>
<tr>
<td></td>
<td><b>
const <a class="el" href="classElemTemplateElement.html">ElemTemplateElement</a> * <em>currentElem</em>&nbsp;) const<code> [virtual]</code>
</b></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
<tr>
<td>
&nbsp;
</td>
<td>
<p>
Returns the next sub-element (i.e.
<p>
children, attribute-sets, templates) to execute.<dl compact><dt>
<b>Parameters: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>executionContext</em>
&nbsp;</td><td>
context to execute element </td></tr>
<tr><td valign=top><em>currentElem</em>
&nbsp;</td><td>
the last sub-element to be executed </td></tr>
</table>
</dl><dl compact><dt>
<b>Returns: </b><dd>
next sub-element to execute, 0 only if no more sub-elements to execute </dl>
<p>
Reimplemented from <a class="el" href="classElemForEach.html#a7">ElemForEach</a>. </td>
</tr>
</table>
<a name="a3" doxytag="ElemApplyTemplates::startElement"></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="classElemTemplateElement.html">ElemTemplateElement</a> * ElemApplyTemplates::startElement (
</b></td>
<td valign="bottom"><b>
<a class="el" href="classStylesheetExecutionContext.html">StylesheetExecutionContext</a> &amp; <em>executionContext</em>&nbsp;) const<code> [virtual]</code>
</b></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
<tr>
<td>
&nbsp;
</td>
<td>
<p>
Completes "pre-processing" before any sub-elements are invoked (i.e.
<p>
children, attribute sets and templates). If there are no sub-elements it executes the primary function of the element.<dl compact><dt>
<b>Parameters: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>executionContext</em>
&nbsp;</td><td>
context to execute this element </td></tr>
</table>
</dl>
<p>
Reimplemented from <a class="el" href="classElemForEach.html#a5">ElemForEach</a>. </td>
</tr>
</table>
<hr>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="ElemApplyTemplates_8hpp-source.html">ElemApplyTemplates.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>