Sophie

Sophie

distrib > Mandriva > 8.2 > i586 > by-pkgid > 5e43f5d92fadaa0a1cc4664249b615d0 > files > 454

xalan-c-doc-1.1-8mdk.i586.rpm

<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:00 2001 -->
<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>QName.hpp</h1><a href="QName.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"> * &lt;http://www.apache.org/&gt;.
</font>00056 <font class="comment"> */</font>
00057 <font class="preprocessor">#if !defined(QNAME_HEADER_GUARD_1357924680)
</font><a name="l00058"></a><a class="code" href="QName.hpp.html#a0">00058</a> <font class="preprocessor"></font><font class="preprocessor">#define QNAME_HEADER_GUARD_1357924680
</font>00059 <font class="preprocessor"></font>
00060 
00061 
00062 <font class="comment">// Base header file.  Must be first.</font>
00063 <font class="preprocessor">#include &lt;<a class="code" href="XPathDefinitions.hpp.html">XPath/XPathDefinitions.hpp</a>&gt;</font>
00064 
00065 
00066 
00067 <font class="preprocessor">#include &lt;deque&gt;</font>
00068 
00069 
00070 
00071 <font class="preprocessor">#include &lt;<a class="code" href="XalanDOMString.hpp.html">XalanDOM/XalanDOMString.hpp</a>&gt;</font>
00072 
00073 
00074 
00075 <font class="preprocessor">#include &lt;<a class="code" href="DOMStringHelper.hpp.html">PlatformSupport/DOMStringHelper.hpp</a>&gt;</font>
00076 
00077 
00078 
00079 <font class="preprocessor">#include &lt;<a class="code" href="NameSpace.hpp.html">XPath/NameSpace.hpp</a>&gt;</font>
00080 
00081 
00082 
00083 <font class="keyword">class </font><a class="code" href="class_xalanelement.html">XalanElement</a>;
00084 <font class="keyword">class </font><a class="code" href="class_prefixresolver.html">PrefixResolver</a>;
00085 <font class="keyword">class </font><a class="code" href="class_xpathenvsupport.html">XPathEnvSupport</a>;
00086 
00087 
00088 
<a name="l00101"></a><a class="code" href="class_qname.html">00101</a> <font class="keyword">class </font>XALAN_XPATH_EXPORT <a class="code" href="class_qname.html">QName</a>
00102 {
00103 <font class="keyword">public</font>:
00104 
00105 <font class="preprocessor">#if defined(XALAN_NO_NAMESPACES)
</font>00106 <font class="preprocessor"></font>    <font class="keyword">typedef</font> deque&lt;<a class="code" href="class_namespace.html">NameSpace</a>&gt;                    NamespaceVectorType;
00107     <font class="keyword">typedef</font> deque&lt;NamespaceVectorType&gt;          NamespacesStackType;
00108 <font class="preprocessor">#else
</font><a name="l00109"></a><a class="code" href="class_qname.html#s0">00109</a> <font class="preprocessor"></font>    <font class="keyword">typedef</font> std::deque&lt;<a class="code" href="class_namespace.html">NameSpace</a>&gt;               NamespaceVectorType;
<a name="l00110"></a><a class="code" href="class_qname.html#s1">00110</a>     <font class="keyword">typedef</font> std::deque&lt;NamespaceVectorType&gt;     NamespacesStackType;
00111 <font class="preprocessor">#endif
</font>00112 <font class="preprocessor"></font>
00117     <font class="keyword">explicit</font>
00118     <a class="code" href="class_qname.html#a0">QName</a>();
00119 
00120     <font class="keyword">virtual</font>
00121     <a class="code" href="class_qname.html#a1">~QName</a>();
00122 
00128     <font class="keyword">virtual</font> <font class="keyword">const</font> <a class="code" href="class_xalandomstring.html">XalanDOMString</a>&amp;
00129     <a class="code" href="class_qname.html#a2">getLocalPart</a>() <font class="keyword">const</font> = 0;
00130 
00136     <font class="keyword">virtual</font> <font class="keyword">const</font> <a class="code" href="class_xalandomstring.html">XalanDOMString</a>&amp;
00137     <a class="code" href="class_qname.html#a3">getNamespace</a>() <font class="keyword">const</font> = 0;
00138 
00144     <font class="keywordtype">bool</font>
<a name="l00145"></a><a class="code" href="class_qname.html#a4">00145</a>     <a class="code" href="class_qname.html#a4">isEmpty</a>()<font class="keyword"> const
</font>00146 <font class="keyword">    </font>{
00147         return ::isEmpty(<a class="code" href="class_qname.html#a3">getNamespace</a>()) &amp;&amp; ::isEmpty(<a class="code" href="class_qname.html#a2">getLocalPart</a>());
00148     }
00149 
00157     <font class="keywordtype">bool</font>
<a name="l00158"></a><a class="code" href="class_qname.html#a5">00158</a>     <a class="code" href="class_qname.html#a5">equals</a>(<font class="keyword">const</font> <a class="code" href="class_qname.html">QName</a>&amp;     theRHS)<font class="keyword"> const
</font>00159 <font class="keyword">    </font>{
00160         <font class="comment">// Note that we do not use our member variables here.  See</font>
00161         <font class="comment">// class QNameReference for details...</font>
00162         return ::equals(<a class="code" href="class_qname.html#a2">getLocalPart</a>(), theRHS.<a class="code" href="class_qname.html#a2">getLocalPart</a>()) &amp;&amp;
00163                ::equals(<a class="code" href="class_qname.html#a3">getNamespace</a>(), theRHS.<a class="code" href="class_qname.html#a3">getNamespace</a>());
00164     }
00165 
00173     <font class="keyword">static</font> <font class="keyword">const</font> <a class="code" href="class_xalandomstring.html">XalanDOMString</a>&amp;
00174     <a class="code" href="class_qname.html#d0">getNamespaceForPrefix</a>(
00175             <font class="keyword">const</font> NamespaceVectorType&amp;  namespaces,
00176             <font class="keyword">const</font> <a class="code" href="class_xalandomstring.html">XalanDOMString</a>&amp;       prefix,
00177             <font class="keywordtype">bool</font>                        reverse = <font class="keyword">true</font>);
00178 
00187     <font class="keyword">static</font> <font class="keyword">const</font> <a class="code" href="class_xalandomstring.html">XalanDOMString</a>&amp;
00188     <a class="code" href="class_qname.html#d0">getNamespaceForPrefix</a>(
00189             <font class="keyword">const</font> NamespacesStackType&amp;  nsStack,
00190             <font class="keyword">const</font> <a class="code" href="class_xalandomstring.html">XalanDOMString</a>&amp;       prefix,
00191             <font class="keywordtype">bool</font>                        reverse = <font class="keyword">true</font>);
00192 
00200     <font class="keyword">static</font> <font class="keyword">const</font> <a class="code" href="class_xalandomstring.html">XalanDOMString</a>&amp;
00201     <a class="code" href="class_qname.html#d2">getPrefixForNamespace</a>(
00202             <font class="keyword">const</font> NamespaceVectorType&amp;  namespaces,
00203             <font class="keyword">const</font> <a class="code" href="class_xalandomstring.html">XalanDOMString</a>&amp;       uri,
00204             <font class="keywordtype">bool</font>                        reverse = <font class="keyword">true</font>);
00205 
00214     <font class="keyword">static</font> <font class="keyword">const</font> <a class="code" href="class_xalandomstring.html">XalanDOMString</a>&amp;
00215     <a class="code" href="class_qname.html#d2">getPrefixForNamespace</a>(
00216             <font class="keyword">const</font> NamespacesStackType&amp;  nsStack,
00217             <font class="keyword">const</font> <a class="code" href="class_xalandomstring.html">XalanDOMString</a>&amp;       uri,
00218             <font class="keywordtype">bool</font>                        reverse = <font class="keyword">true</font>);
00219 
00220 <font class="keyword">protected</font>:
00221 
<a name="l00222"></a><a class="code" href="class_qname.html#q0">00222</a>     <font class="keyword">static</font> <font class="keyword">const</font> <a class="code" href="class_xalandomstring.html">XalanDOMString</a>     s_emptyString;
00223 };
00224 
00225 
00226 
00227 <font class="keyword">inline</font> <font class="keywordtype">bool</font>
<a name="l00228"></a><a class="code" href="QName.hpp.html#a1">00228</a> <a class="code" href="XalanDOMString.hpp.html#a4">operator==</a>(
00229             <font class="keyword">const</font> <a class="code" href="class_qname.html">QName</a>&amp;    theLHS,
00230             <font class="keyword">const</font> <a class="code" href="class_qname.html">QName</a>&amp;    theRHS)<font class="keyword">
</font>00231 <font class="keyword"></font>{
00232     <font class="keywordflow">return</font> theLHS.<a class="code" href="class_qname.html#a5">equals</a>(theRHS);
00233 }
00234 
00235 
00236 
00237 <font class="keyword">inline</font> <font class="keywordtype">bool</font>
<a name="l00238"></a><a class="code" href="QName.hpp.html#a2">00238</a> <a class="code" href="XalanDOMString.hpp.html#a7">operator!=</a>(
00239             <font class="keyword">const</font> <a class="code" href="class_qname.html">QName</a>&amp;    theLHS,
00240             <font class="keyword">const</font> <a class="code" href="class_qname.html">QName</a>&amp;    theRHS)<font class="keyword">
</font>00241 <font class="keyword"></font>{
00242     <font class="keywordflow">return</font> !(theLHS == theRHS);
00243 }
00244 
00245 
00246 
00247 <font class="keyword">inline</font> <font class="keywordtype">bool</font>
<a name="l00248"></a><a class="code" href="QName.hpp.html#a3">00248</a> <a class="code" href="QName.hpp.html#a3">operator&lt;</a>(
00249             <font class="keyword">const</font> <a class="code" href="class_qname.html">QName</a>&amp;    theLHS,
00250             <font class="keyword">const</font> <a class="code" href="class_qname.html">QName</a>&amp;    theRHS)<font class="keyword">
</font>00251 <font class="keyword"></font>{
00252     <font class="keywordflow">if</font> (theLHS.<a class="code" href="class_qname.html#a3">getNamespace</a>() &lt; theRHS.<a class="code" href="class_qname.html#a3">getNamespace</a>())
00253     {
00254         <font class="keywordflow">return</font> <font class="keyword">true</font>;
00255     }
00256     <font class="keywordflow">else</font> <font class="keywordflow">if</font> (<a class="code" href="DOMStringHelper.hpp.html#a66">equals</a>(theLHS.<a class="code" href="class_qname.html#a3">getNamespace</a>(), theRHS.<a class="code" href="class_qname.html#a3">getNamespace</a>()))
00257     {
00258         <font class="keywordflow">return</font> theLHS.<a class="code" href="class_qname.html#a2">getLocalPart</a>() &lt; theRHS.<a class="code" href="class_qname.html#a2">getLocalPart</a>();
00259     }
00260     <font class="keywordflow">else</font>
00261     {
00262         <font class="keywordflow">return</font> <font class="keyword">false</font>;
00263     }
00264 }
00265 
00266 
00267 
00268 <font class="preprocessor">#endif  // QNAME_HEADER_GUARD_1357924680
</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 &copy; 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>