<HTML><HEAD><TITLE>Xalan-C++ API Documentation</TITLE></HEAD> <BODY> <h2 align="center">Xalan-C++ API Documentation</h2> <h3 align="center">The Xalan C++ XSL Transformer Version 1.1</h3> </BODY> <!-- Generated by Doxygen 1.2.0 on Thu Feb 15 10:44:02 2001 --> <center> <a class="qindex" href="index.html">Main Page</a> <a class="qindex" href="hierarchy.html">Class Hierarchy</a> <a class="qindex" href="classes.html">Alphabetical List</a> <a class="qindex" href="annotated.html">Compound List</a> <a class="qindex" href="files.html">File List</a> <a class="qindex" href="functions.html">Compound Members</a> <a class="qindex" href="globals.html">File Members</a> </center> <hr><h1>StylesheetHandler.hpp</h1><a href="StylesheetHandler.hpp.html">Go to the documentation of this file.</a><div class="fragment"><pre>00001 <font class="comment">/* </font>00002 <font class="comment"> * The Apache Software License, Version 1.1 </font>00003 <font class="comment"> * </font>00004 <font class="comment"> * </font>00005 <font class="comment"> * Copyright (c) 1999 The Apache Software Foundation. All rights </font>00006 <font class="comment"> * reserved. </font>00007 <font class="comment"> * </font>00008 <font class="comment"> * Redistribution and use in source and binary forms, with or without </font>00009 <font class="comment"> * modification, are permitted provided that the following conditions </font>00010 <font class="comment"> * are met: </font>00011 <font class="comment"> * </font>00012 <font class="comment"> * 1. Redistributions of source code must retain the above copyright </font>00013 <font class="comment"> * notice, this list of conditions and the following disclaimer. </font>00014 <font class="comment"> * </font>00015 <font class="comment"> * 2. Redistributions in binary form must reproduce the above copyright </font>00016 <font class="comment"> * notice, this list of conditions and the following disclaimer in </font>00017 <font class="comment"> * the documentation and/or other materials provided with the </font>00018 <font class="comment"> * distribution. </font>00019 <font class="comment"> * </font>00020 <font class="comment"> * 3. The end-user documentation included with the redistribution, </font>00021 <font class="comment"> * if any, must include the following acknowledgment: </font>00022 <font class="comment"> * "This product includes software developed by the </font>00023 <font class="comment"> * Apache Software Foundation (http://www.apache.org/)." </font>00024 <font class="comment"> * Alternately, this acknowledgment may appear in the software itself, </font>00025 <font class="comment"> * if and wherever such third-party acknowledgments normally appear. </font>00026 <font class="comment"> * </font>00027 <font class="comment"> * 4. The names "Xalan" and "Apache Software Foundation" must </font>00028 <font class="comment"> * not be used to endorse or promote products derived from this </font>00029 <font class="comment"> * software without prior written permission. For written </font>00030 <font class="comment"> * permission, please contact apache@apache.org. </font>00031 <font class="comment"> * </font>00032 <font class="comment"> * 5. Products derived from this software may not be called "Apache", </font>00033 <font class="comment"> * nor may "Apache" appear in their name, without prior written </font>00034 <font class="comment"> * permission of the Apache Software Foundation. </font>00035 <font class="comment"> * </font>00036 <font class="comment"> * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED </font>00037 <font class="comment"> * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES </font>00038 <font class="comment"> * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE </font>00039 <font class="comment"> * DISCLAIMED. IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR </font>00040 <font class="comment"> * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, </font>00041 <font class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT </font>00042 <font class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF </font>00043 <font class="comment"> * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND </font>00044 <font class="comment"> * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, </font>00045 <font class="comment"> * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT </font>00046 <font class="comment"> * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF </font>00047 <font class="comment"> * SUCH DAMAGE. </font>00048 <font class="comment"> * ==================================================================== </font>00049 <font class="comment"> * </font>00050 <font class="comment"> * This software consists of voluntary contributions made by many </font>00051 <font class="comment"> * individuals on behalf of the Apache Software Foundation and was </font>00052 <font class="comment"> * originally based on software copyright (c) 1999, International </font>00053 <font class="comment"> * Business Machines, Inc., http://www.ibm.com. For more </font>00054 <font class="comment"> * information on the Apache Software Foundation, please see </font>00055 <font class="comment"> * <http://www.apache.org/>. </font>00056 <font class="comment"> * </font>00057 <font class="comment"> * $ Id: $ </font>00058 <font class="comment"> * </font>00059 <font class="comment"> */</font> 00060 00061 <font class="preprocessor">#if !defined(XALAN_STYLESHEETHANDLER_HEADER_GUARD) </font><a name="l00062"></a><a class="code" href="StylesheetHandler.hpp.html#a0">00062</a> <font class="preprocessor"></font><font class="preprocessor">#define XALAN_STYLESHEETHANDLER_HEADER_GUARD </font>00063 <font class="preprocessor"></font> 00064 <font class="comment">// Base include file. Must be first.</font> 00065 <font class="preprocessor">#include "<a class="code" href="XSLTDefinitions.hpp.html">XSLTDefinitions.hpp</a>"</font> 00066 00067 00068 00069 <font class="preprocessor">#include <vector></font> 00070 <font class="preprocessor">#include <set></font> 00071 00072 00073 00074 <font class="preprocessor">#include <<a class="code" href="XalanDOMString.hpp.html">XalanDOM/XalanDOMString.hpp</a>></font> 00075 00076 00077 00078 <font class="preprocessor">#include <<a class="code" href="FormatterListener.hpp.html">XMLSupport/FormatterListener.hpp</a>></font> 00079 00080 00081 00082 <font class="preprocessor">#include <<a class="code" href="NamespacesHandler.hpp.html">XSLT/NamespacesHandler.hpp</a>></font> 00083 <font class="preprocessor">#include <<a class="code" href="Stylesheet.hpp.html">XSLT/Stylesheet.hpp</a>></font> 00084 00085 00086 00087 <font class="keyword">class </font><a class="code" href="class_elemtemplate.html">ElemTemplate</a>; 00088 <font class="keyword">class </font><a class="code" href="class_elemtemplateelement.html">ElemTemplateElement</a>; 00089 <font class="keyword">class </font><a class="code" href="class_elemtextliteral.html">ElemTextLiteral</a>; 00090 <font class="keyword">class </font><a class="code" href="class_extensionnshandler.html">ExtensionNSHandler</a>; 00091 <font class="keyword">class </font><a class="code" href="class_stylesheetconstructioncontext.html">StylesheetConstructionContext</a>; 00092 00093 00094 <a name="l00101"></a><a class="code" href="class_stylesheethandler.html">00101</a> <font class="keyword">class </font>XALAN_XSLT_EXPORT <a class="code" href="class_stylesheethandler.html">StylesheetHandler</a> : <font class="keyword">public</font> <a class="code" href="class_formatterlistener.html">FormatterListener</a> 00102 { 00103 00104 <font class="keyword">public</font>: 00105 00106 <font class="preprocessor">#if defined(XALAN_NO_NAMESPACES) </font>00107 <font class="preprocessor"></font> <font class="keyword">typedef</font> vector<<a class="code" href="class_elemtemplateelement.html">ElemTemplateElement</a>*> ElemTemplateStackType; 00108 <font class="keyword">typedef</font> vector<<a class="code" href="class_elemtextliteral.html">ElemTextLiteral</a>*> ElemTextLiteralStackType; 00109 <font class="keyword">typedef</font> set<<a class="code" href="class_elemtemplateelement.html">ElemTemplateElement</a>*, 00110 less<<a class="code" href="class_elemtemplateelement.html">ElemTemplateElement</a>*> > ElemTemplateSetType; 00111 <font class="keyword">typedef</font> vector<<font class="keywordtype">bool</font>> BoolStackType; 00112 <font class="preprocessor">#else </font><a name="l00113"></a><a class="code" href="class_stylesheethandler.html#s0">00113</a> <font class="preprocessor"></font> <font class="keyword">typedef</font> std::vector<<a class="code" href="class_elemtemplateelement.html">ElemTemplateElement</a>*> ElemTemplateStackType; <a name="l00114"></a><a class="code" href="class_stylesheethandler.html#s1">00114</a> <font class="keyword">typedef</font> std::vector<<a class="code" href="class_elemtextliteral.html">ElemTextLiteral</a>*> ElemTextLiteralStackType; <a name="l00115"></a><a class="code" href="class_stylesheethandler.html#s2">00115</a> <font class="keyword">typedef</font> std::set<<a class="code" href="class_elemtemplateelement.html">ElemTemplateElement</a>*> ElemTemplateSetType; <a name="l00116"></a><a class="code" href="class_stylesheethandler.html#s3">00116</a> <font class="keyword">typedef</font> std::vector<<font class="keywordtype">bool</font>> BoolStackType; 00117 <font class="preprocessor">#endif </font>00118 <font class="preprocessor"></font> <a name="l00122"></a><a class="code" href="class_stylesheethandler.html#m0">00122</a> <a class="code" href="class_xalandomstring.html">XalanDOMString</a> m_includeBase; 00123 00128 <a class="code" href="class_stylesheethandler.html#a0">StylesheetHandler</a>( 00129 <a class="code" href="class_stylesheet.html">Stylesheet</a>& stylesheetTree, 00130 <a class="code" href="class_stylesheetconstructioncontext.html">StylesheetConstructionContext</a>& constructionContext); 00131 00132 <font class="keyword">virtual</font> 00133 <a class="code" href="class_stylesheethandler.html#a1">~StylesheetHandler</a>(); 00134 00158 <font class="keyword">virtual</font> <font class="keywordtype">void</font> <a class="code" href="class_formatterlistener.html#a7">characters</a> (<font class="keyword">const</font> XMLCh* <font class="keyword">const</font> chars, <font class="keyword">const</font> <font class="keywordtype">unsigned</font> <font class="keywordtype">int</font> length); 00159 00170 <font class="keyword">virtual</font> <font class="keywordtype">void</font> <a class="code" href="class_formatterlistener.html#a3">charactersRaw</a>(<font class="keyword">const</font> XMLCh* <font class="keyword">const</font> chars, <font class="keyword">const</font> <font class="keywordtype">unsigned</font> <font class="keywordtype">int</font> length); 00171 00195 <font class="keyword">virtual</font> <font class="keywordtype">void</font> <a class="code" href="class_formatterlistener.html#a5">cdata</a>(<font class="keyword">const</font> XMLCh* <font class="keyword">const</font> ch, <font class="keyword">const</font> <font class="keywordtype">unsigned</font> <font class="keywordtype">int</font> length); 00196 00220 <font class="keyword">virtual</font> <font class="keywordtype">void</font> <a class="code" href="class_formatterlistener.html#a10">ignorableWhitespace</a> (<font class="keyword">const</font> XMLCh* <font class="keyword">const</font> chars, <font class="keyword">const</font> <font class="keywordtype">unsigned</font> <font class="keywordtype">int</font> length); 00221 00238 <font class="keyword">virtual</font> <font class="keywordtype">void</font> <a class="code" href="class_formatterlistener.html#a11">processingInstruction</a> (<font class="keyword">const</font> XMLCh* <font class="keyword">const</font> target, <font class="keyword">const</font> XMLCh* <font class="keyword">const</font> data); 00239 00246 <font class="keyword">virtual</font> <font class="keywordtype">void</font> <a class="code" href="class_formatterlistener.html#a4">comment</a>(<font class="keyword">const</font> XMLCh* <font class="keyword">const</font> data); 00247 00254 <font class="keyword">virtual</font> <font class="keywordtype">void</font> <a class="code" href="class_formatterlistener.html#a6">entityReference</a>(<font class="keyword">const</font> XMLCh* <font class="keyword">const</font> data); 00255 00256 <font class="comment">// These methods are inherited DocumentHandler ...</font> 00257 00258 <font class="comment">// $$$ Theoretically, shouldn't need javadoc for these, since they are</font> 00259 <font class="comment">// inherited from DocumentHandler, but let's leave them in for now -- JMD</font> 00260 00286 <font class="keyword">virtual</font> <font class="keywordtype">void</font> <a class="code" href="class_formatterlistener.html#a13">setDocumentLocator</a>(<font class="keyword">const</font> Locator* <font class="keyword">const</font> locator); 00287 00297 <font class="keyword">virtual</font> <font class="keywordtype">void</font> <a class="code" href="class_formatterlistener.html#a14">startDocument</a>(); 00298 00310 <font class="keyword">virtual</font> <font class="keywordtype">void</font> <a class="code" href="class_formatterlistener.html#a8">endDocument</a> (); 00311 00333 <font class="keyword">virtual</font> <font class="keywordtype">void</font> <a class="code" href="class_formatterlistener.html#a15">startElement</a> (<font class="keyword">const</font> XMLCh* <font class="keyword">const</font> name, <a class="code" href="class_attributelist.html">AttributeList</a>& attrs); 00334 00349 <font class="keyword">virtual</font> <font class="keywordtype">void</font> <a class="code" href="class_formatterlistener.html#a9">endElement</a>(<font class="keyword">const</font> XMLCh* <font class="keyword">const</font> name); 00350 00356 <font class="keyword">virtual</font> <font class="keywordtype">void</font> <a class="code" href="class_formatterlistener.html#a12">resetDocument</a>(); 00357 00358 <font class="keyword">protected</font>: 00359 00369 <font class="keywordtype">bool</font> 00370 <a class="code" href="class_stylesheethandler.html#b0">isAttrOK</a>( 00371 <font class="keyword">const</font> XalanDOMChar* attrName, 00372 <font class="keyword">const</font> <a class="code" href="class_attributelist.html">AttributeList</a>& atts, 00373 <font class="keywordtype">int</font> which); 00374 00384 <font class="keywordtype">bool</font> 00385 <a class="code" href="class_stylesheethandler.html#b1">processSpaceAttr</a>( 00386 <font class="keyword">const</font> XalanDOMChar* aname, 00387 <font class="keyword">const</font> <a class="code" href="class_attributelist.html">AttributeList</a>& atts, 00388 <font class="keywordtype">int</font> which, 00389 <font class="keywordtype">bool</font>& fPreserve); 00390 00398 <font class="keywordtype">bool</font> 00399 <a class="code" href="class_stylesheethandler.html#b1">processSpaceAttr</a>( 00400 <font class="keyword">const</font> <a class="code" href="class_attributelist.html">AttributeList</a>& atts, 00401 <font class="keywordtype">bool</font>& fPreserve); 00402 00406 <font class="keywordtype">void</font> 00407 <a class="code" href="class_stylesheethandler.html#b3">processImport</a>( 00408 <font class="keyword">const</font> XalanDOMChar* name, 00409 <font class="keyword">const</font> <a class="code" href="class_attributelist.html">AttributeList</a>& atts); 00410 00414 <font class="keywordtype">void</font> 00415 <a class="code" href="class_stylesheethandler.html#b4">processInclude</a>(<font class="keyword">const</font> XalanDOMChar* name, 00416 <font class="keyword">const</font> <a class="code" href="class_attributelist.html">AttributeList</a>& atts); 00417 00418 <font class="keywordtype">void</font> 00419 <a class="code" href="class_stylesheethandler.html#b5">error</a>( 00420 <font class="keyword">const</font> <a class="code" href="class_xalandomstring.html">XalanDOMString</a>& theMessage, 00421 <font class="keywordtype">int</font> theLineNumber, 00422 <font class="keywordtype">int</font> theColumnNumber) <font class="keyword">const</font>; 00423 00424 <font class="keywordtype">void</font> 00425 <a class="code" href="class_stylesheethandler.html#b6">doCleanup</a>(); 00426 00427 <font class="keyword">private</font>: 00428 00429 <font class="comment">// not implemented</font> 00430 <a class="code" href="class_stylesheethandler.html#a0">StylesheetHandler</a>(<font class="keyword">const</font> <a class="code" href="class_stylesheethandler.html">StylesheetHandler</a>&); 00431 00432 <a class="code" href="class_stylesheethandler.html">StylesheetHandler</a>& 00433 operator=(<font class="keyword">const</font> <a class="code" href="class_stylesheethandler.html">StylesheetHandler</a>&); 00434 00435 <font class="comment">// Utility function...</font> 00436 <font class="keywordtype">void</font> 00437 processText( 00438 <font class="keyword">const</font> XMLCh* <font class="keyword">const</font> chars, 00439 <font class="keyword">const</font> <font class="keywordtype">unsigned</font> <font class="keywordtype">int</font> length); 00440 00441 <font class="keywordtype">void</font> 00442 accumulateText( 00443 <font class="keyword">const</font> XMLCh* <font class="keyword">const</font> chars, 00444 <font class="keyword">const</font> <font class="keywordtype">unsigned</font> <font class="keywordtype">int</font> length); 00445 00446 <font class="keywordtype">void</font> 00447 processAccumulatedText(); 00448 00449 <font class="keywordtype">void</font> 00450 processTopLevelElement( 00451 <font class="keyword">const</font> XalanDOMChar* name, 00452 <font class="keyword">const</font> <a class="code" href="class_xalandomstring.html">XalanDOMString</a>& localName, 00453 <font class="keyword">const</font> <a class="code" href="class_xalandomstring.html">XalanDOMString</a>& ns, 00454 <font class="keyword">const</font> <a class="code" href="class_attributelist.html">AttributeList</a>& atts, 00455 <font class="keywordtype">int</font> xslToken, 00456 <font class="keywordtype">int</font> lineNumber, 00457 <font class="keywordtype">int</font> columnNumber, 00458 <font class="keywordtype">bool</font>& fPreserveSpace, 00459 <font class="keywordtype">bool</font>& fSpaceAttrProcessed); 00460 00461 <font class="keywordtype">void</font> 00462 processStylesheet( 00463 <font class="keyword">const</font> XalanDOMChar* name, 00464 <font class="keyword">const</font> <a class="code" href="class_attributelist.html">AttributeList</a>& atts, 00465 <font class="keywordtype">int</font> lineNumber, 00466 <font class="keywordtype">int</font> columnNumber, 00467 <font class="keywordtype">bool</font>& fPreserveSpace, 00468 <font class="keywordtype">bool</font>& fSpaceAttrProcessed); 00469 00470 <font class="keywordtype">void</font> 00471 processPreserveStripSpace( 00472 <font class="keyword">const</font> XalanDOMChar* name, 00473 <font class="keyword">const</font> <a class="code" href="class_attributelist.html">AttributeList</a>& atts, 00474 <font class="keywordtype">int</font> lineNumber, 00475 <font class="keywordtype">int</font> columnNumber, 00476 <font class="keywordtype">int</font> xslToken); 00477 00478 <font class="keywordtype">void</font> 00479 appendChildElementToParent( 00480 <a class="code" href="class_elemtemplateelement.html">ElemTemplateElement</a>* elem, 00481 <font class="keywordtype">int</font> lineNumber, 00482 <font class="keywordtype">int</font> columnNumber); 00483 00484 <font class="keywordtype">bool</font> 00485 inExtensionElement() <font class="keyword">const</font>; 00486 00487 <font class="keywordtype">void</font> 00488 processExtensionElement( 00489 <font class="keyword">const</font> XalanDOMChar* name, 00490 <font class="keyword">const</font> <a class="code" href="class_xalandomstring.html">XalanDOMString</a>& localName, 00491 <font class="keyword">const</font> <a class="code" href="class_attributelist.html">AttributeList</a>& atts); 00492 00493 <font class="comment">// Data members...</font> 00494 <a class="code" href="class_xalandomstring.html">XalanDOMString</a> m_pendingException; 00495 00496 <font class="keywordtype">bool</font> m_exceptionPending; 00497 00501 <a class="code" href="class_stylesheet.html">Stylesheet</a>& m_stylesheet; 00502 00506 <a class="code" href="class_stylesheetconstructioncontext.html">StylesheetConstructionContext</a>& m_constructionContext; 00507 00511 ElemTemplateStackType m_elemStack; 00512 00518 ElemTemplateSetType m_elemStackParentedElements; 00519 00523 ElemTemplateStackType m_strayElements; 00524 00530 ElemTextLiteralStackType m_whiteSpaceElems; 00531 00535 <a class="code" href="class_elemtemplate.html">ElemTemplate</a>* m_pTemplate; 00536 00541 <a class="code" href="class_elemtemplateelement.html">ElemTemplateElement</a>* m_lastPopped; 00542 00546 <font class="keywordtype">bool</font> m_inTemplate; 00547 00552 <font class="keywordtype">bool</font> m_foundStylesheet; 00553 00559 <font class="keywordtype">bool</font> m_foundNotImport; 00560 00565 <a class="code" href="class_xalandomstring.html">XalanDOMString</a> m_accumulateText; 00566 00567 BoolStackType m_inExtensionElementStack; 00568 00569 BoolStackType m_preserveSpaceStack; 00570 00571 <font class="keywordtype">bool</font> m_inLXSLTScript; 00572 00573 <a class="code" href="class_xalandomstring.html">XalanDOMString</a> m_LXSLTScriptBody; 00574 <a class="code" href="class_xalandomstring.html">XalanDOMString</a> m_LXSLTScriptLang; 00575 <a class="code" href="class_xalandomstring.html">XalanDOMString</a> m_LXSLTScriptSrcURL; 00576 <a class="code" href="class_extensionnshandler.html">ExtensionNSHandler</a>* m_pLXSLTExtensionNSH; 00577 00578 <font class="comment">// Note that this variable must not be saved by</font> 00579 <font class="comment">// PushPopIncludeState...</font> 00580 <font class="keywordtype">unsigned</font> <font class="keywordtype">long</font> m_locatorsPushed; 00581 00585 <a class="code" href="class_elemtemplateelement.html">ElemTemplateElement</a>* 00586 initWrapperless( 00587 <font class="keyword">const</font> XalanDOMChar* name, 00588 <font class="keyword">const</font> <a class="code" href="class_attributelist.html">AttributeList</a>& atts, 00589 <font class="keywordtype">int</font> lineNumber, 00590 <font class="keywordtype">int</font> columnNumber); 00591 00592 00593 <font class="keyword">class </font>PushPopIncludeState 00594 { 00595 <font class="keyword">public</font>: 00596 00597 PushPopIncludeState(<a class="code" href="class_stylesheethandler.html">StylesheetHandler</a>& theHandler); 00598 00599 ~PushPopIncludeState(); 00600 00601 <font class="keyword">private</font>: 00602 00603 <a class="code" href="class_stylesheethandler.html">StylesheetHandler</a>& m_handler; 00604 00605 ElemTemplateStackType m_elemStack; 00606 00607 ElemTemplateSetType m_elemStackParentedElements; 00608 00609 <a class="code" href="class_elemtemplate.html">ElemTemplate</a>* <font class="keyword">const</font> m_pTemplate; 00610 00611 <a class="code" href="class_elemtemplateelement.html">ElemTemplateElement</a>* <font class="keyword">const</font> m_lastPopped; 00612 00613 <font class="keyword">const</font> <font class="keywordtype">bool</font> m_inTemplate; 00614 00615 <font class="keyword">const</font> <font class="keywordtype">bool</font> m_foundStylesheet; 00616 00617 <font class="keyword">const</font> <a class="code" href="class_xalandomstring.html">XalanDOMString</a> m_XSLNameSpaceURL; 00618 00619 <font class="keyword">const</font> <font class="keywordtype">bool</font> m_foundNotImport; 00620 00621 Stylesheet::NamespaceVectorType m_namespaceDecls; 00622 00623 Stylesheet::NamespacesStackType m_namespaces; 00624 00625 <a class="code" href="class_namespaceshandler.html">NamespacesHandler</a> m_namespacesHandler; 00626 00627 BoolStackType m_inExtensionElementStack; 00628 00629 BoolStackType m_preserveSpaceStack; 00630 }; 00631 <a name="l00632"></a><a class="code" href="class_stylesheethandler.html#l0">00632</a> <font class="keyword">friend</font> <font class="keyword">class </font>PushPopIncludeState; 00633 }; 00634 00635 00636 00637 <font class="preprocessor">#endif // XALAN_STYLESHEETHANDLER_HEADER_GUARD </font></div></pre><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="images/dot.gif" width="1"></TD></TR></TABLE> <TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0" WIDTH="80%"> <TR> <TD WIDTH="80%" VALIGN="TOP"> <P ALIGN="CENTER"><B>Xalan-C++ XSL Transformer Version 1.1</B><BR> Copyright © 2000, 2001 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"> </TD> </TR> </TABLE>