1 | <HTML><HEAD><SCRIPT language="JavaScript" src="../resources/script.js" type="text/javascript"></SCRIPT><TITLE>XMLString.hpp Source File</TITLE><link href="XercesApi.css" rel="stylesheet" type="text/css"></HEAD><BODY alink="#ff0000" bgcolor="#ffffff" leftmargin="4" link="#0000ff" marginheight="4" marginwidth="4" text="#000000" topmargin="4" vlink="#0000aa"><TABLE border="0" cellpadding="0" cellspacing="0" width="620"><TR><TD align="left" height="60" rowspan="3" valign="top" width="135"><IMG border="0" height="60" hspace="0" src="../resources/logo.gif" vspace="0" width="135"></TD><TD align="left" colspan="4" height="5" valign="top" width="456"><IMG border="0" height="5" hspace="0" src="../resources/line.gif" vspace="0" width="456"></TD><TD align="left" height="60" rowspan="3" valign="top" width="29"><IMG border="0" height="60" hspace="0" src="../resources/right.gif" vspace="0" width="29"></TD></TR><TR><TD align="left" bgcolor="#0086b2" colspan="4" height="35" valign="top" width="456"><IMG alt="" border="0" height="35" hspace="0" src="../graphics/api-header.jpg" vspace="0" width="456"></TD></TR><TR><TD align="left" height="20" valign="top" width="168"><IMG border="0" height="20" hspace="0" src="../resources/bottom.gif" vspace="0" width="168"></TD><TD align="left" height="20" valign="top" width="96"><A href="http://xml.apache.org/" onMouseOut="rolloverOff('xml');" onMouseOver="rolloverOn('xml');" target="new"><IMG alt="http://xml.apache.org/" border="0" height="20" hspace="0" name="xml" onLoad="rolloverLoad('xml','../resources/button-xml-hi.gif','../resources/button-xml-lo.gif');" src="../resources/button-xml-lo.gif" vspace="0" width="96"></A></TD><TD align="left" height="20" valign="top" width="96"><A href="http://www.apache.org/" onMouseOut="rolloverOff('asf');" onMouseOver="rolloverOn('asf');" target="new"><IMG alt="http://www.apache.org/" border="0" height="20" hspace="0" name="asf" onLoad="rolloverLoad('asf','../resources/button-asf-hi.gif','../resources/button-asf-lo.gif');" src="../resources/button-asf-lo.gif" vspace="0" width="96"></A></TD><TD align="left" height="20" valign="top" width="96"><A href="http://www.w3.org/" onMouseOut="rolloverOff('w3c');" onMouseOver="rolloverOn('w3c');" target="new"><IMG alt="http://www.w3.org/" border="0" height="20" hspace="0" name="w3c" onLoad="rolloverLoad('w3c','../resources/button-w3c-hi.gif','../resources/button-w3c-lo.gif');" src="../resources/button-w3c-lo.gif" vspace="0" width="96"></A></TD></TR></TABLE><TABLE border="0" cellpadding="0" cellspacing="0" width="620"><TR><TD align="left" valign="top" width="120"><IMG border="0" height="14" hspace="0" src="../resources/join.gif" vspace="0" width="120"><BR>
|
---|
2 | <A href="../../index.html" onMouseOut="rolloverOff('side-ext-2');" onMouseOver="rolloverOn('side-ext-2');"><IMG alt="Home" border="0" height="12" hspace="0" name="side-ext-2" onLoad="rolloverLoad('side-ext-2','../graphics/ext-2-label-2.jpg','../graphics/ext-2-label-3.jpg');" src="../graphics/ext-2-label-3.jpg" vspace="0" width="120"></A><BR>
|
---|
3 |
|
---|
4 | <IMG border="0" height="6" hspace="0" src="../resources/separator.gif" vspace="0" width="120"><BR>
|
---|
5 |
|
---|
6 | <A href="../index.html" onMouseOut="rolloverOff('side-index');" onMouseOver="rolloverOn('side-index');"><IMG alt="Readme" border="0" height="12" hspace="0" name="side-index" onLoad="rolloverLoad('side-index','../graphics/index-label-2.jpg','../graphics/index-label-3.jpg');" src="../graphics/index-label-3.jpg" vspace="0" width="120"></A><BR>
|
---|
7 | <A href="../releases.html" onMouseOut="rolloverOff('side-releases');" onMouseOver="rolloverOn('side-releases');"><IMG alt="Release Info" border="0" height="12" hspace="0" name="side-releases" onLoad="rolloverLoad('side-releases','../graphics/releases-label-2.jpg','../graphics/releases-label-3.jpg');" src="../graphics/releases-label-3.jpg" vspace="0" width="120"></A><BR>
|
---|
8 | <IMG border="0" height="6" hspace="0" src="../resources/separator.gif" vspace="0" width="120"><BR>
|
---|
9 | <A href="../install.html" onMouseOut="rolloverOff('side-install');" onMouseOver="rolloverOn('side-install');"><IMG alt="Installation" border="0" height="12" hspace="0" name="side-install" onLoad="rolloverLoad('side-install','../graphics/install-label-2.jpg','../graphics/install-label-3.jpg');" src="../graphics/install-label-3.jpg" vspace="0" width="120"></A><BR>
|
---|
10 | <A href="http://xml.apache.org/dist/xerces-c/" onMouseOut="rolloverOff('side-ext-18');" onMouseOver="rolloverOn('side-ext-18');"><IMG alt="Download" border="0" height="12" hspace="0" name="side-ext-18" onLoad="rolloverLoad('side-ext-18','../graphics/ext-18-label-2.jpg','../graphics/ext-18-label-3.jpg');" src="../graphics/ext-18-label-3.jpg" vspace="0" width="120"></A><BR>
|
---|
11 | <A href="../build.html" onMouseOut="rolloverOff('side-build');" onMouseOver="rolloverOn('side-build');"><IMG alt="Build" border="0" height="12" hspace="0" name="side-build" onLoad="rolloverLoad('side-build','../graphics/build-label-2.jpg','../graphics/build-label-3.jpg');" src="../graphics/build-label-3.jpg" vspace="0" width="120"></A><BR>
|
---|
12 |
|
---|
13 | <IMG border="0" height="6" hspace="0" src="../resources/separator.gif" vspace="0" width="120"><BR>
|
---|
14 | <A href="../faqs.html" onMouseOut="rolloverOff('side-faqs');" onMouseOver="rolloverOn('side-faqs');"><IMG alt="FAQs" border="0" height="12" hspace="0" name="side-faqs" onLoad="rolloverLoad('side-faqs','../graphics/faqs-label-2.jpg','../graphics/faqs-label-3.jpg');" src="../graphics/faqs-label-3.jpg" vspace="0" width="120"></A><BR>
|
---|
15 | <A href="../samples.html" onMouseOut="rolloverOff('side-samples');" onMouseOver="rolloverOn('side-samples');"><IMG alt="Samples" border="0" height="12" hspace="0" name="side-samples" onLoad="rolloverLoad('side-samples','../graphics/samples-label-2.jpg','../graphics/samples-label-3.jpg');" src="../graphics/samples-label-3.jpg" vspace="0" width="120"></A><BR>
|
---|
16 | <A href="../api.html" onMouseOut="rolloverOff('side-api');" onMouseOver="rolloverOn('side-api');"><IMG alt="API Docs" border="0" height="12" hspace="0" name="side-api" onLoad="rolloverLoad('side-api','../graphics/api-label-2.jpg','../graphics/api-label-3.jpg');" src="../graphics/api-label-3.jpg" vspace="0" width="120"></A><BR>
|
---|
17 |
|
---|
18 | <IMG border="0" height="6" hspace="0" src="../resources/separator.gif" vspace="0" width="120"><BR>
|
---|
19 | <A href="../ApacheDOMC++Binding.html" onMouseOut="rolloverOff('side-ext-68');" onMouseOver="rolloverOn('side-ext-68');"><IMG alt="DOM C++ Binding" border="0" height="12" hspace="0" name="side-ext-68" onLoad="rolloverLoad('side-ext-68','../graphics/ext-68-label-2.jpg','../graphics/ext-68-label-3.jpg');" src="../graphics/ext-68-label-3.jpg" vspace="0" width="120"></A><BR>
|
---|
20 |
|
---|
21 | <A href="../program.html" onMouseOut="rolloverOff('side-program');" onMouseOver="rolloverOn('side-program');"><IMG alt="Programming" border="0" height="12" hspace="0" name="side-program" onLoad="rolloverLoad('side-program','../graphics/program-label-2.jpg','../graphics/program-label-3.jpg');" src="../graphics/program-label-3.jpg" vspace="0" width="120"></A><BR>
|
---|
22 | <A href="../migrate.html" onMouseOut="rolloverOff('side-migrate');" onMouseOver="rolloverOn('side-migrate');"><IMG alt="Migration Guide" border="0" height="12" hspace="0" name="side-migrate" onLoad="rolloverLoad('side-migrate','../graphics/migrate-label-2.jpg','../graphics/migrate-label-3.jpg');" src="../graphics/migrate-label-3.jpg" vspace="0" width="120"></A><BR>
|
---|
23 |
|
---|
24 | <IMG border="0" height="6" hspace="0" src="../resources/separator.gif" vspace="0" width="120"><BR>
|
---|
25 |
|
---|
26 | <A href="../feedback.html" onMouseOut="rolloverOff('side-feedback');" onMouseOver="rolloverOn('side-feedback');"><IMG alt="Feedback" border="0" height="12" hspace="0" name="side-feedback" onLoad="rolloverLoad('side-feedback','../graphics/feedback-label-2.jpg','../graphics/feedback-label-3.jpg');" src="../graphics/feedback-label-3.jpg" vspace="0" width="120"></A><BR>
|
---|
27 | <A href="../bug-report.html" onMouseOut="rolloverOff('side-bug-report');" onMouseOver="rolloverOn('side-bug-report');"><IMG alt="Bug-Reporting" border="0" height="12" hspace="0" name="side-bug-report" onLoad="rolloverLoad('side-bug-report','../graphics/bug-report-label-2.jpg','../graphics/bug-report-label-3.jpg');" src="../graphics/bug-report-label-3.jpg" vspace="0" width="120"></A><BR>
|
---|
28 | <A href="../pdf.html" onMouseOut="rolloverOff('side-pdf');" onMouseOver="rolloverOn('side-pdf');"><IMG alt="PDF Document" border="0" height="12" hspace="0" name="side-pdf" onLoad="rolloverLoad('side-pdf','../graphics/pdf-label-2.jpg','../graphics/pdf-label-3.jpg');" src="../graphics/pdf-label-3.jpg" vspace="0" width="120"></A><BR>
|
---|
29 |
|
---|
30 | <IMG border="0" height="6" hspace="0" src="../resources/separator.gif" vspace="0" width="120"><BR>
|
---|
31 |
|
---|
32 | <A href="http://xml.apache.org/websrc/cvsweb.cgi/xml-xerces/c/" onMouseOut="rolloverOff('side-ext-100');" onMouseOver="rolloverOn('side-ext-100');"><IMG alt="CVS Repository" border="0" height="12" hspace="0" name="side-ext-100" onLoad="rolloverLoad('side-ext-100','../graphics/ext-100-label-2.jpg','../graphics/ext-100-label-3.jpg');" src="../graphics/ext-100-label-3.jpg" vspace="0" width="120"></A><BR>
|
---|
33 |
|
---|
34 | <A href="http://marc.theaimsgroup.com/?l=xerces-c-dev" onMouseOut="rolloverOff('side-ext-102');" onMouseOver="rolloverOn('side-ext-102');"><IMG alt="Mail Archive" border="0" height="12" hspace="0" name="side-ext-102" onLoad="rolloverLoad('side-ext-102','../graphics/ext-102-label-2.jpg','../graphics/ext-102-label-3.jpg');" src="../graphics/ext-102-label-3.jpg" vspace="0" width="120"></A><BR>
|
---|
35 |
|
---|
36 |
|
---|
37 | <IMG border="0" height="14" hspace="0" src="../resources/close.gif" vspace="0" width="120"><BR></TD><TD align="left" valign="top" width="500"><TABLE border="0" cellpadding="3" cellspacing="0"><TR><TD>
|
---|
38 | <TABLE border="0" cellpadding="0" cellspacing="0" width="494"><TR><TD bgcolor="#FFFFFF" colspan="2" width="494"><TABLE border="0" cellpadding="0" cellspacing="0" width="494"><TR><TD bgcolor="#039acc" height="1" width="1"><IMG border="0" height="1" hspace="0" src="../resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#039acc" height="1" width="492"><IMG border="0" height="1" hspace="0" src="../resources/void.gif" vspace="0" width="492"></TD><TD bgcolor="#0086b2" height="1" width="1"><IMG border="0" height="1" hspace="0" src="../resources/void.gif" vspace="0" width="1"></TD></TR><TR><TD bgcolor="#039acc" width="1"><IMG border="0" height="1" hspace="0" src="../resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#0086b2" width="492"><FONT color="#ffffff" face="arial,helvetica,sanserif" size="+1"><IMG border="0" height="2" hspace="0" src="../resources/void.gif" vspace="0" width="2"><B>API Docs for SAX and DOM</B></FONT></TD><TD bgcolor="#017299" width="1"><IMG border="0" height="1" hspace="0" src="../resources/void.gif" vspace="0" width="1"></TD></TR><TR><TD bgcolor="#0086b2" height="1" width="1"><IMG border="0" height="1" hspace="0" src="../resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#017299" height="1" width="492"><IMG border="0" height="1" hspace="0" src="../resources/void.gif" vspace="0" width="492"></TD><TD bgcolor="#017299" height="1" width="1"><IMG border="0" height="1" hspace="0" src="../resources/void.gif" vspace="0" width="1"></TD></TR></TABLE></TD></TR><TR><TD width="10"> </TD><TD width="484"><FONT color="#000000" face="arial,helvetica,sanserif">
|
---|
39 |
|
---|
40 | <P>
|
---|
41 | <!-- Generated by Doxygen 1.2.14 -->
|
---|
42 | <center>
|
---|
43 | <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>
|
---|
44 | <hr><h1>XMLString.hpp</h1><a href="XMLString_8hpp.html">Go to the documentation of this file.</a><div class="fragment"><pre>00001 <font class="comment">/*</font>
|
---|
45 | 00002 <font class="comment"> * Copyright 1999-2004 The Apache Software Foundation.</font>
|
---|
46 | 00003 <font class="comment"> * </font>
|
---|
47 | 00004 <font class="comment"> * Licensed under the Apache License, Version 2.0 (the "License");</font>
|
---|
48 | 00005 <font class="comment"> * you may not use this file except in compliance with the License.</font>
|
---|
49 | 00006 <font class="comment"> * You may obtain a copy of the License at</font>
|
---|
50 | 00007 <font class="comment"> * </font>
|
---|
51 | 00008 <font class="comment"> * http://www.apache.org/licenses/LICENSE-2.0</font>
|
---|
52 | 00009 <font class="comment"> * </font>
|
---|
53 | 00010 <font class="comment"> * Unless required by applicable law or agreed to in writing, software</font>
|
---|
54 | 00011 <font class="comment"> * distributed under the License is distributed on an "AS IS" BASIS,</font>
|
---|
55 | 00012 <font class="comment"> * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.</font>
|
---|
56 | 00013 <font class="comment"> * See the License for the specific language governing permissions and</font>
|
---|
57 | 00014 <font class="comment"> * limitations under the License.</font>
|
---|
58 | 00015 <font class="comment"> */</font>
|
---|
59 | 00016
|
---|
60 | 00017 <font class="comment">/*</font>
|
---|
61 | 00018 <font class="comment"> * $Log: XMLString.hpp,v $</font>
|
---|
62 | 00019 <font class="comment"> * Revision 1.28 2004/09/08 13:56:24 peiyongz</font>
|
---|
63 | 00020 <font class="comment"> * Apache License Version 2.0</font>
|
---|
64 | 00021 <font class="comment"> *</font>
|
---|
65 | 00022 <font class="comment"> * Revision 1.27 2004/09/02 19:08:09 cargilld</font>
|
---|
66 | 00023 <font class="comment"> * Fix API Doc warning message</font>
|
---|
67 | 00024 <font class="comment"> *</font>
|
---|
68 | 00025 <font class="comment"> * Revision 1.26 2004/08/11 16:07:27 peiyongz</font>
|
---|
69 | 00026 <font class="comment"> * isValidNOTATION</font>
|
---|
70 | 00027 <font class="comment"> *</font>
|
---|
71 | 00028 <font class="comment"> * Revision 1.25 2004/05/25 18:11:32 peiyongz</font>
|
---|
72 | 00029 <font class="comment"> * removeChar() added</font>
|
---|
73 | 00030 <font class="comment"> *</font>
|
---|
74 | 00031 <font class="comment"> * Revision 1.24 2004/03/10 17:35:17 amassari</font>
|
---|
75 | 00032 <font class="comment"> * Fix documentation for binToText (bug# 9207)</font>
|
---|
76 | 00033 <font class="comment"> *</font>
|
---|
77 | 00034 <font class="comment"> * Revision 1.23 2003/12/24 15:24:13 cargilld</font>
|
---|
78 | 00035 <font class="comment"> * More updates to memory management so that the static memory manager.</font>
|
---|
79 | 00036 <font class="comment"> *</font>
|
---|
80 | 00037 <font class="comment"> * Revision 1.22 2003/12/17 20:00:49 cargilld</font>
|
---|
81 | 00038 <font class="comment"> * Update for memory management so that the static memory manager (one</font>
|
---|
82 | 00039 <font class="comment"> * used to call Initialize) is only for static data.</font>
|
---|
83 | 00040 <font class="comment"> *</font>
|
---|
84 | 00041 <font class="comment"> * Revision 1.21 2003/12/17 00:18:35 cargilld</font>
|
---|
85 | 00042 <font class="comment"> * Update to memory management so that the static memory manager (one used to call Initialize) is only for static data.</font>
|
---|
86 | 00043 <font class="comment"> *</font>
|
---|
87 | 00044 <font class="comment"> * Revision 1.20 2003/10/02 11:07:26 gareth</font>
|
---|
88 | 00045 <font class="comment"> * Made the non-memory manager version of replicate not inlined. Updated the documentation for the memory manager versions so they don't tell you you should call release.</font>
|
---|
89 | 00046 <font class="comment"> *</font>
|
---|
90 | 00047 <font class="comment"> * Revision 1.19 2003/10/01 00:22:20 knoaman</font>
|
---|
91 | 00048 <font class="comment"> * Add a lastIndexOf method that takes the string length as one of the params.</font>
|
---|
92 | 00049 <font class="comment"> *</font>
|
---|
93 | 00050 <font class="comment"> * Revision 1.18 2003/08/25 20:39:47 neilg</font>
|
---|
94 | 00051 <font class="comment"> * fix XMLString::findAny(...) docs so that they match what the method actually does (and has done since time immemorial)</font>
|
---|
95 | 00052 <font class="comment"> *</font>
|
---|
96 | 00053 <font class="comment"> * Revision 1.17 2003/05/18 14:02:05 knoaman</font>
|
---|
97 | 00054 <font class="comment"> * Memory manager implementation: pass per instance manager.</font>
|
---|
98 | 00055 <font class="comment"> *</font>
|
---|
99 | 00056 <font class="comment"> * Revision 1.16 2003/05/15 19:07:46 knoaman</font>
|
---|
100 | 00057 <font class="comment"> * Partial implementation of the configurable memory manager.</font>
|
---|
101 | 00058 <font class="comment"> *</font>
|
---|
102 | 00059 <font class="comment"> * Revision 1.15 2003/04/21 20:07:05 knoaman</font>
|
---|
103 | 00060 <font class="comment"> * Performance: use memcpy in moveChars and replicate.</font>
|
---|
104 | 00061 <font class="comment"> *</font>
|
---|
105 | 00062 <font class="comment"> * Revision 1.14 2003/02/25 16:42:31 tng</font>
|
---|
106 | 00063 <font class="comment"> * [Bug 7072] Documentation for XMLString::transcode states invalid return value.</font>
|
---|
107 | 00064 <font class="comment"> *</font>
|
---|
108 | 00065 <font class="comment"> * Revision 1.13 2003/02/05 18:50:56 tng</font>
|
---|
109 | 00066 <font class="comment"> * [Bug 11915] Utility for freeing memory.</font>
|
---|
110 | 00067 <font class="comment"> *</font>
|
---|
111 | 00068 <font class="comment"> * Revision 1.12 2003/01/24 23:16:33 peiyongz</font>
|
---|
112 | 00069 <font class="comment"> * removeWS() added;</font>
|
---|
113 | 00070 <font class="comment"> *</font>
|
---|
114 | 00071 <font class="comment"> * Revision 1.11 2002/12/20 22:10:21 tng</font>
|
---|
115 | 00072 <font class="comment"> * XML 1.1</font>
|
---|
116 | 00073 <font class="comment"> *</font>
|
---|
117 | 00074 <font class="comment"> * Revision 1.10 2002/12/18 14:17:54 gareth</font>
|
---|
118 | 00075 <font class="comment"> * Fix to bug #13438. When you eant a vector that calls delete[] on its members you should use RefArrayVectorOf.</font>
|
---|
119 | 00076 <font class="comment"> *</font>
|
---|
120 | 00077 <font class="comment"> * Revision 1.9 2002/12/04 02:32:43 knoaman</font>
|
---|
121 | 00078 <font class="comment"> * #include cleanup.</font>
|
---|
122 | 00079 <font class="comment"> *</font>
|
---|
123 | 00080 <font class="comment"> * Revision 1.8 2002/11/05 17:42:39 peiyongz</font>
|
---|
124 | 00081 <font class="comment"> * equals( const char* const, const char* const)</font>
|
---|
125 | 00082 <font class="comment"> *</font>
|
---|
126 | 00083 <font class="comment"> * Revision 1.7 2002/11/04 15:22:05 tng</font>
|
---|
127 | 00084 <font class="comment"> * C++ Namespace Support.</font>
|
---|
128 | 00085 <font class="comment"> *</font>
|
---|
129 | 00086 <font class="comment"> * Revision 1.6 2002/10/01 19:45:22 tng</font>
|
---|
130 | 00087 <font class="comment"> * Performance in XMLString::equals, only need to check one string for null as they are equal already.</font>
|
---|
131 | 00088 <font class="comment"> *</font>
|
---|
132 | 00089 <font class="comment"> * Revision 1.5 2002/09/24 19:41:21 tng</font>
|
---|
133 | 00090 <font class="comment"> * New inline function equals that is modified from compareString but simply return true or false.</font>
|
---|
134 | 00091 <font class="comment"> *</font>
|
---|
135 | 00092 <font class="comment"> * Revision 1.4 2002/09/23 18:42:18 tng</font>
|
---|
136 | 00093 <font class="comment"> * DOM L3: Support baseURI. Add utility fixURI to transform an absolute path filename to standard URI form.</font>
|
---|
137 | 00094 <font class="comment"> *</font>
|
---|
138 | 00095 <font class="comment"> * Revision 1.3 2002/08/27 19:24:43 peiyongz</font>
|
---|
139 | 00096 <font class="comment"> * Bug#12087: patch from Thomas Ford (tom@decisionsoft.com)</font>
|
---|
140 | 00097 <font class="comment"> *</font>
|
---|
141 | 00098 <font class="comment"> * Revision 1.2 2002/02/20 18:17:02 tng</font>
|
---|
142 | 00099 <font class="comment"> * [Bug 5977] Warnings on generating apiDocs.</font>
|
---|
143 | 00100 <font class="comment"> *</font>
|
---|
144 | 00101 <font class="comment"> * Revision 1.1.1.1 2002/02/01 22:22:16 peiyongz</font>
|
---|
145 | 00102 <font class="comment"> * sane_include</font>
|
---|
146 | 00103 <font class="comment"> *</font>
|
---|
147 | 00104 <font class="comment"> * Revision 1.26 2001/08/10 16:23:06 peiyongz</font>
|
---|
148 | 00105 <font class="comment"> * isHex(), isAlphaNum(), isAllWhiteSpace() and patternMatch() Added</font>
|
---|
149 | 00106 <font class="comment"> *</font>
|
---|
150 | 00107 <font class="comment"> * Revision 1.25 2001/07/06 20:27:57 peiyongz</font>
|
---|
151 | 00108 <font class="comment"> * isValidaQName()</font>
|
---|
152 | 00109 <font class="comment"> *</font>
|
---|
153 | 00110 <font class="comment"> * Revision 1.24 2001/07/04 14:38:20 peiyongz</font>
|
---|
154 | 00111 <font class="comment"> * IDDatatypeValidator: created</font>
|
---|
155 | 00112 <font class="comment"> * DatatypeValidatorFactory: IDDTV enabled</font>
|
---|
156 | 00113 <font class="comment"> * XMLString:isValidName(): to validate Name (XML [4][5])</font>
|
---|
157 | 00114 <font class="comment"> *</font>
|
---|
158 | 00115 <font class="comment"> * Revision 1.23 2001/06/13 14:07:55 peiyongz</font>
|
---|
159 | 00116 <font class="comment"> * isValidaEncName() to validate an encoding name (EncName)</font>
|
---|
160 | 00117 <font class="comment"> *</font>
|
---|
161 | 00118 <font class="comment"> * Revision 1.22 2001/05/23 15:44:51 tng</font>
|
---|
162 | 00119 <font class="comment"> * Schema: NormalizedString fix. By Pei Yong Zhang.</font>
|
---|
163 | 00120 <font class="comment"> *</font>
|
---|
164 | 00121 <font class="comment"> * Revision 1.21 2001/05/11 13:26:31 tng</font>
|
---|
165 | 00122 <font class="comment"> * Copyright update.</font>
|
---|
166 | 00123 <font class="comment"> *</font>
|
---|
167 | 00124 <font class="comment"> * Revision 1.20 2001/05/09 18:43:30 tng</font>
|
---|
168 | 00125 <font class="comment"> * Add StringDatatypeValidator and BooleanDatatypeValidator. By Pei Yong Zhang.</font>
|
---|
169 | 00126 <font class="comment"> *</font>
|
---|
170 | 00127 <font class="comment"> * Revision 1.19 2001/05/03 20:34:35 tng</font>
|
---|
171 | 00128 <font class="comment"> * Schema: SchemaValidator update</font>
|
---|
172 | 00129 <font class="comment"> *</font>
|
---|
173 | 00130 <font class="comment"> * Revision 1.18 2001/05/03 19:17:35 knoaman</font>
|
---|
174 | 00131 <font class="comment"> * TraverseSchema Part II.</font>
|
---|
175 | 00132 <font class="comment"> *</font>
|
---|
176 | 00133 <font class="comment"> * Revision 1.17 2001/03/21 21:56:13 tng</font>
|
---|
177 | 00134 <font class="comment"> * Schema: Add Schema Grammar, Schema Validator, and split the DTDValidator into DTDValidator, DTDScanner, and DTDGrammar.</font>
|
---|
178 | 00135 <font class="comment"> *</font>
|
---|
179 | 00136 <font class="comment"> * Revision 1.16 2001/03/02 20:52:46 knoaman</font>
|
---|
180 | 00137 <font class="comment"> * Schema: Regular expression - misc. updates for error messages,</font>
|
---|
181 | 00138 <font class="comment"> * and additions of new functions to XMLString class.</font>
|
---|
182 | 00139 <font class="comment"> *</font>
|
---|
183 | 00140 <font class="comment"> * Revision 1.15 2001/01/15 21:26:34 tng</font>
|
---|
184 | 00141 <font class="comment"> * Performance Patches by David Bertoni.</font>
|
---|
185 | 00142 <font class="comment"> *</font>
|
---|
186 | 00143 <font class="comment"> * Details: (see xerces-c-dev mailing Jan 14)</font>
|
---|
187 | 00144 <font class="comment"> * XMLRecognizer.cpp: the internal encoding string XMLUni::fgXMLChEncodingString</font>
|
---|
188 | 00145 <font class="comment"> * was going through this function numerous times. As a result, the top hot-spot</font>
|
---|
189 | 00146 <font class="comment"> * for the parse was _wcsicmp(). The real problem is that the Microsofts wide string</font>
|
---|
190 | 00147 <font class="comment"> * functions are unbelievably slow. For things like encodings, it might be</font>
|
---|
191 | 00148 <font class="comment"> * better to use a special comparison function that only considers a-z and</font>
|
---|
192 | 00149 <font class="comment"> * A-Z as characters with case. This works since the character set for</font>
|
---|
193 | 00150 <font class="comment"> * encodings is limit to printable ASCII characters.</font>
|
---|
194 | 00151 <font class="comment"> *</font>
|
---|
195 | 00152 <font class="comment"> * XMLScanner2.cpp: This also has some case-sensitive vs. insensitive compares.</font>
|
---|
196 | 00153 <font class="comment"> * They are also much faster. The other tweak is to only make a copy of an attribute</font>
|
---|
197 | 00154 <font class="comment"> * string if it needs to be split. And then, the strategy is to try to use a</font>
|
---|
198 | 00155 <font class="comment"> * stack-based buffer, rather than a dynamically-allocated one.</font>
|
---|
199 | 00156 <font class="comment"> *</font>
|
---|
200 | 00157 <font class="comment"> * SAX2XMLReaderImpl.cpp: Again, more case-sensitive vs. insensitive comparisons.</font>
|
---|
201 | 00158 <font class="comment"> *</font>
|
---|
202 | 00159 <font class="comment"> * KVStringPair.cpp & hpp: By storing the size of the allocation, the storage can</font>
|
---|
203 | 00160 <font class="comment"> * likely be re-used many times, cutting down on dynamic memory allocations.</font>
|
---|
204 | 00161 <font class="comment"> *</font>
|
---|
205 | 00162 <font class="comment"> * XMLString.hpp: a more efficient implementation of stringLen().</font>
|
---|
206 | 00163 <font class="comment"> *</font>
|
---|
207 | 00164 <font class="comment"> * DTDValidator.cpp: another case of using a stack-based buffer when possible</font>
|
---|
208 | 00165 <font class="comment"> *</font>
|
---|
209 | 00166 <font class="comment"> * These patches made a big difference in parse time in some of our test</font>
|
---|
210 | 00167 <font class="comment"> * files, especially the ones are very attribute-heavy.</font>
|
---|
211 | 00168 <font class="comment"> *</font>
|
---|
212 | 00169 <font class="comment"> * Revision 1.14 2000/10/13 22:47:57 andyh</font>
|
---|
213 | 00170 <font class="comment"> * Fix bug (failure to null-terminate result) in XMLString::trim().</font>
|
---|
214 | 00171 <font class="comment"> * Patch contributed by Nadav Aharoni</font>
|
---|
215 | 00172 <font class="comment"> *</font>
|
---|
216 | 00173 <font class="comment"> * Revision 1.13 2000/04/12 18:42:15 roddey</font>
|
---|
217 | 00174 <font class="comment"> * Improved docs in terms of what 'max chars' means in the method</font>
|
---|
218 | 00175 <font class="comment"> * parameters.</font>
|
---|
219 | 00176 <font class="comment"> *</font>
|
---|
220 | 00177 <font class="comment"> * Revision 1.12 2000/04/06 19:42:51 rahulj</font>
|
---|
221 | 00178 <font class="comment"> * Clarified how big the target buffer should be in the API</font>
|
---|
222 | 00179 <font class="comment"> * documentation.</font>
|
---|
223 | 00180 <font class="comment"> *</font>
|
---|
224 | 00181 <font class="comment"> * Revision 1.11 2000/03/23 01:02:38 roddey</font>
|
---|
225 | 00182 <font class="comment"> * Updates to the XMLURL class to correct a lot of parsing problems</font>
|
---|
226 | 00183 <font class="comment"> * and to add support for the port number. Updated the URL tests</font>
|
---|
227 | 00184 <font class="comment"> * to test some of this new stuff.</font>
|
---|
228 | 00185 <font class="comment"> *</font>
|
---|
229 | 00186 <font class="comment"> * Revision 1.10 2000/03/20 23:00:46 rahulj</font>
|
---|
230 | 00187 <font class="comment"> * Moved the inline definition of stringLen before the first</font>
|
---|
231 | 00188 <font class="comment"> * use. This satisfied the HP CC compiler.</font>
|
---|
232 | 00189 <font class="comment"> *</font>
|
---|
233 | 00190 <font class="comment"> * Revision 1.9 2000/03/02 19:54:49 roddey</font>
|
---|
234 | 00191 <font class="comment"> * This checkin includes many changes done while waiting for the</font>
|
---|
235 | 00192 <font class="comment"> * 1.1.0 code to be finished. I can't list them all here, but a list is</font>
|
---|
236 | 00193 <font class="comment"> * available elsewhere.</font>
|
---|
237 | 00194 <font class="comment"> *</font>
|
---|
238 | 00195 <font class="comment"> * Revision 1.8 2000/02/24 20:05:26 abagchi</font>
|
---|
239 | 00196 <font class="comment"> * Swat for removing Log from API docs</font>
|
---|
240 | 00197 <font class="comment"> *</font>
|
---|
241 | 00198 <font class="comment"> * Revision 1.7 2000/02/16 18:51:52 roddey</font>
|
---|
242 | 00199 <font class="comment"> * Fixed some facts in the docs and reformatted the docs to stay within</font>
|
---|
243 | 00200 <font class="comment"> * a reasonable line width.</font>
|
---|
244 | 00201 <font class="comment"> *</font>
|
---|
245 | 00202 <font class="comment"> * Revision 1.6 2000/02/16 17:07:07 abagchi</font>
|
---|
246 | 00203 <font class="comment"> * Added API docs</font>
|
---|
247 | 00204 <font class="comment"> *</font>
|
---|
248 | 00205 <font class="comment"> * Revision 1.5 2000/02/06 07:48:06 rahulj</font>
|
---|
249 | 00206 <font class="comment"> * Year 2K copyright swat.</font>
|
---|
250 | 00207 <font class="comment"> *</font>
|
---|
251 | 00208 <font class="comment"> * Revision 1.4 2000/01/12 00:16:23 roddey</font>
|
---|
252 | 00209 <font class="comment"> * Changes to deal with multiply nested, relative pathed, entities and to deal</font>
|
---|
253 | 00210 <font class="comment"> * with the new URL class changes.</font>
|
---|
254 | 00211 <font class="comment"> *</font>
|
---|
255 | 00212 <font class="comment"> * Revision 1.3 1999/12/18 00:18:10 roddey</font>
|
---|
256 | 00213 <font class="comment"> * More changes to support the new, completely orthagonal support for</font>
|
---|
257 | 00214 <font class="comment"> * intrinsic encodings.</font>
|
---|
258 | 00215 <font class="comment"> *</font>
|
---|
259 | 00216 <font class="comment"> * Revision 1.2 1999/12/15 19:41:28 roddey</font>
|
---|
260 | 00217 <font class="comment"> * Support for the new transcoder system, where even intrinsic encodings are</font>
|
---|
261 | 00218 <font class="comment"> * done via the same transcoder abstraction as external ones.</font>
|
---|
262 | 00219 <font class="comment"> *</font>
|
---|
263 | 00220 <font class="comment"> * Revision 1.1.1.1 1999/11/09 01:05:52 twl</font>
|
---|
264 | 00221 <font class="comment"> * Initial checkin</font>
|
---|
265 | 00222 <font class="comment"> *</font>
|
---|
266 | 00223 <font class="comment"> * Revision 1.2 1999/11/08 20:45:21 rahul</font>
|
---|
267 | 00224 <font class="comment"> * Swat for adding in Product name and CVS comment log variable.</font>
|
---|
268 | 00225 <font class="comment"> *</font>
|
---|
269 | 00226 <font class="comment"> */</font>
|
---|
270 | 00227
|
---|
271 | 00228 <font class="preprocessor">#if !defined(XMLSTRING_HPP)</font>
|
---|
272 | <a name="l00229"></a><a class="code" href="XMLString_8hpp.html#a0">00229</a> <font class="preprocessor"></font><font class="preprocessor">#define XMLSTRING_HPP</font>
|
---|
273 | 00230 <font class="preprocessor"></font>
|
---|
274 | 00231 <font class="preprocessor">#include <xercesc/util/BaseRefVectorOf.hpp></font>
|
---|
275 | 00232 <font class="preprocessor">#include <xercesc/framework/XMLBuffer.hpp></font>
|
---|
276 | 00233 <font class="preprocessor">#include <<a class="code" href="MemoryManager_8hpp.html">xercesc/framework/MemoryManager.hpp</a>></font>
|
---|
277 | 00234 <font class="preprocessor">#include <string.h></font>
|
---|
278 | 00235
|
---|
279 | 00236 <a class="code" href="XercesDefs_8hpp.html#a2">XERCES_CPP_NAMESPACE_BEGIN</a>
|
---|
280 | 00237
|
---|
281 | <a name="l00238"></a><a class="code" href="XMLString_8hpp.html#a1">00238</a> <font class="keyword">class </font><a class="code" href="classXMLLCPTranscoder.html">XMLLCPTranscoder</a>;
|
---|
282 | <a name="l00250"></a><a class="code" href="classXMLString.html">00250</a> <font class="keyword">class </font><a class="code" href="XercesDefs_8hpp.html#a8"></a> <a class="code" href="classXMLString.html">XMLString</a>
|
---|
283 | 00251 {
|
---|
284 | 00252 <font class="keyword">public</font>:
|
---|
285 | 00253 <font class="comment">/* Static methods for native character mode string manipulation */</font>
|
---|
286 | 00254
|
---|
287 | 00255
|
---|
288 | 00272 <font class="keyword">static</font> <font class="keywordtype">void</font> catString
|
---|
289 | 00273 (
|
---|
290 | 00274 <font class="keywordtype">char</font>* <font class="keyword">const</font> target
|
---|
291 | 00275 , <font class="keyword">const</font> <font class="keywordtype">char</font>* <font class="keyword">const</font> src
|
---|
292 | 00276 );
|
---|
293 | 00277
|
---|
294 | 00290 <font class="keyword">static</font> <font class="keywordtype">void</font> catString
|
---|
295 | 00291 (
|
---|
296 | 00292 XMLCh* <font class="keyword">const</font> target
|
---|
297 | 00293 , <font class="keyword">const</font> XMLCh* <font class="keyword">const</font> src
|
---|
298 | 00294 );
|
---|
299 | 00296
|
---|
300 | 00310 <font class="keyword">static</font> <font class="keywordtype">int</font> compareIString
|
---|
301 | 00311 (
|
---|
302 | 00312 <font class="keyword">const</font> <font class="keywordtype">char</font>* <font class="keyword">const</font> str1
|
---|
303 | 00313 , <font class="keyword">const</font> <font class="keywordtype">char</font>* <font class="keyword">const</font> str2
|
---|
304 | 00314 );
|
---|
305 | 00315
|
---|
306 | 00326 <font class="keyword">static</font> <font class="keywordtype">int</font> compareIString
|
---|
307 | 00327 (
|
---|
308 | 00328 <font class="keyword">const</font> XMLCh* <font class="keyword">const</font> str1
|
---|
309 | 00329 , <font class="keyword">const</font> XMLCh* <font class="keyword">const</font> str2
|
---|
310 | 00330 );
|
---|
311 | 00331
|
---|
312 | 00332
|
---|
313 | 00346 <font class="keyword">static</font> <font class="keywordtype">int</font> compareNString
|
---|
314 | 00347 (
|
---|
315 | 00348 <font class="keyword">const</font> <font class="keywordtype">char</font>* <font class="keyword">const</font> str1
|
---|
316 | 00349 , <font class="keyword">const</font> <font class="keywordtype">char</font>* <font class="keyword">const</font> str2
|
---|
317 | 00350 , <font class="keyword">const</font> <font class="keywordtype">unsigned</font> <font class="keywordtype">int</font> count
|
---|
318 | 00351 );
|
---|
319 | 00352
|
---|
320 | 00366 <font class="keyword">static</font> <font class="keywordtype">int</font> compareNString
|
---|
321 | 00367 (
|
---|
322 | 00368 <font class="keyword">const</font> XMLCh* <font class="keyword">const</font> str1
|
---|
323 | 00369 , <font class="keyword">const</font> XMLCh* <font class="keyword">const</font> str2
|
---|
324 | 00370 , <font class="keyword">const</font> <font class="keywordtype">unsigned</font> <font class="keywordtype">int</font> count
|
---|
325 | 00371 );
|
---|
326 | 00372
|
---|
327 | 00373
|
---|
328 | 00387 <font class="keyword">static</font> <font class="keywordtype">int</font> compareNIString
|
---|
329 | 00388 (
|
---|
330 | 00389 <font class="keyword">const</font> <font class="keywordtype">char</font>* <font class="keyword">const</font> str1
|
---|
331 | 00390 , <font class="keyword">const</font> <font class="keywordtype">char</font>* <font class="keyword">const</font> str2
|
---|
332 | 00391 , <font class="keyword">const</font> <font class="keywordtype">unsigned</font> <font class="keywordtype">int</font> count
|
---|
333 | 00392 );
|
---|
334 | 00393
|
---|
335 | 00408 <font class="keyword">static</font> <font class="keywordtype">int</font> compareNIString
|
---|
336 | 00409 (
|
---|
337 | 00410 <font class="keyword">const</font> XMLCh* <font class="keyword">const</font> str1
|
---|
338 | 00411 , <font class="keyword">const</font> XMLCh* <font class="keyword">const</font> str2
|
---|
339 | 00412 , <font class="keyword">const</font> <font class="keywordtype">unsigned</font> <font class="keywordtype">int</font> count
|
---|
340 | 00413 );
|
---|
341 | 00414
|
---|
342 | 00427 <font class="keyword">static</font> <font class="keywordtype">int</font> compareString
|
---|
343 | 00428 (
|
---|
344 | 00429 <font class="keyword">const</font> <font class="keywordtype">char</font>* <font class="keyword">const</font> str1
|
---|
345 | 00430 , <font class="keyword">const</font> <font class="keywordtype">char</font>* <font class="keyword">const</font> str2
|
---|
346 | 00431 );
|
---|
347 | 00432
|
---|
348 | 00444 <font class="keyword">static</font> <font class="keywordtype">int</font> compareString
|
---|
349 | 00445 (
|
---|
350 | 00446 <font class="keyword">const</font> XMLCh* <font class="keyword">const</font> str1
|
---|
351 | 00447 , <font class="keyword">const</font> XMLCh* <font class="keyword">const</font> str2
|
---|
352 | 00448 );
|
---|
353 | 00449
|
---|
354 | 00458 <font class="keyword">static</font> <font class="keywordtype">bool</font> equals
|
---|
355 | 00459 (
|
---|
356 | 00460 <font class="keyword">const</font> XMLCh* <font class="keyword">const</font> str1
|
---|
357 | 00461 , <font class="keyword">const</font> XMLCh* <font class="keyword">const</font> str2
|
---|
358 | 00462 );
|
---|
359 | 00463
|
---|
360 | 00464 <font class="keyword">static</font> <font class="keywordtype">bool</font> equals
|
---|
361 | 00465 (
|
---|
362 | 00466 <font class="keyword">const</font> <font class="keywordtype">char</font>* <font class="keyword">const</font> str1
|
---|
363 | 00467 , <font class="keyword">const</font> <font class="keywordtype">char</font>* <font class="keyword">const</font> str2
|
---|
364 | 00468 );
|
---|
365 | 00469
|
---|
366 | 00496 <font class="keyword">static</font> <font class="keywordtype">bool</font> regionMatches
|
---|
367 | 00497 (
|
---|
368 | 00498 <font class="keyword">const</font> XMLCh* <font class="keyword">const</font> str1
|
---|
369 | 00499 , <font class="keyword">const</font> <font class="keywordtype">int</font> offset1
|
---|
370 | 00500 , <font class="keyword">const</font> XMLCh* <font class="keyword">const</font> str2
|
---|
371 | 00501 , <font class="keyword">const</font> <font class="keywordtype">int</font> offset2
|
---|
372 | 00502 , <font class="keyword">const</font> <font class="keywordtype">unsigned</font> <font class="keywordtype">int</font> charCount
|
---|
373 | 00503 );
|
---|
374 | 00504
|
---|
375 | 00532 <font class="keyword">static</font> <font class="keywordtype">bool</font> regionIMatches
|
---|
376 | 00533 (
|
---|
377 | 00534 <font class="keyword">const</font> XMLCh* <font class="keyword">const</font> str1
|
---|
378 | 00535 , <font class="keyword">const</font> <font class="keywordtype">int</font> offset1
|
---|
379 | 00536 , <font class="keyword">const</font> XMLCh* <font class="keyword">const</font> str2
|
---|
380 | 00537 , <font class="keyword">const</font> <font class="keywordtype">int</font> offset2
|
---|
381 | 00538 , <font class="keyword">const</font> <font class="keywordtype">unsigned</font> <font class="keywordtype">int</font> charCount
|
---|
382 | 00539 );
|
---|
383 | 00541
|
---|
384 | 00554 <font class="keyword">static</font> <font class="keywordtype">void</font> copyString
|
---|
385 | 00555 (
|
---|
386 | 00556 <font class="keywordtype">char</font>* <font class="keyword">const</font> target
|
---|
387 | 00557 , <font class="keyword">const</font> <font class="keywordtype">char</font>* <font class="keyword">const</font> src
|
---|
388 | 00558 );
|
---|
389 | 00559
|
---|
390 | 00570 <font class="keyword">static</font> <font class="keywordtype">void</font> copyString
|
---|
391 | 00571 (
|
---|
392 | 00572 XMLCh* <font class="keyword">const</font> target
|
---|
393 | 00573 , <font class="keyword">const</font> XMLCh* <font class="keyword">const</font> src
|
---|
394 | 00574 );
|
---|
395 | 00575
|
---|
396 | 00588 <font class="keyword">static</font> <font class="keywordtype">bool</font> copyNString
|
---|
397 | 00589 (
|
---|
398 | 00590 XMLCh* <font class="keyword">const</font> target
|
---|
399 | 00591 , <font class="keyword">const</font> XMLCh* <font class="keyword">const</font> src
|
---|
400 | 00592 , <font class="keyword">const</font> <font class="keywordtype">unsigned</font> <font class="keywordtype">int</font> maxChars
|
---|
401 | 00593 );
|
---|
402 | 00595
|
---|
403 | 00605 <font class="keyword">static</font> <font class="keywordtype">unsigned</font> <font class="keywordtype">int</font> hash
|
---|
404 | 00606 (
|
---|
405 | 00607 <font class="keyword">const</font> <font class="keywordtype">char</font>* <font class="keyword">const</font> toHash
|
---|
406 | 00608 , <font class="keyword">const</font> <font class="keywordtype">unsigned</font> <font class="keywordtype">int</font> hashModulus
|
---|
407 | 00609 , <a class="code" href="classMemoryManager.html">MemoryManager</a>* <font class="keyword">const</font> manager = <a class="code" href="classXMLPlatformUtils.html#z488_4">XMLPlatformUtils::fgMemoryManager</a>
|
---|
408 | 00610 );
|
---|
409 | 00611
|
---|
410 | 00619 <font class="keyword">static</font> <font class="keywordtype">unsigned</font> <font class="keywordtype">int</font> hash
|
---|
411 | 00620 (
|
---|
412 | 00621 <font class="keyword">const</font> XMLCh* <font class="keyword">const</font> toHash
|
---|
413 | 00622 , <font class="keyword">const</font> <font class="keywordtype">unsigned</font> <font class="keywordtype">int</font> hashModulus
|
---|
414 | 00623 , <a class="code" href="classMemoryManager.html">MemoryManager</a>* <font class="keyword">const</font> manager = <a class="code" href="classXMLPlatformUtils.html#z488_4">XMLPlatformUtils::fgMemoryManager</a>
|
---|
415 | 00624 );
|
---|
416 | 00625
|
---|
417 | 00635 <font class="keyword">static</font> <font class="keywordtype">unsigned</font> <font class="keywordtype">int</font> hashN
|
---|
418 | 00636 (
|
---|
419 | 00637 <font class="keyword">const</font> XMLCh* <font class="keyword">const</font> toHash
|
---|
420 | 00638 , <font class="keyword">const</font> <font class="keywordtype">unsigned</font> <font class="keywordtype">int</font> numChars
|
---|
421 | 00639 , <font class="keyword">const</font> <font class="keywordtype">unsigned</font> <font class="keywordtype">int</font> hashModulus
|
---|
422 | 00640 , <a class="code" href="classMemoryManager.html">MemoryManager</a>* <font class="keyword">const</font> manager = <a class="code" href="classXMLPlatformUtils.html#z488_4">XMLPlatformUtils::fgMemoryManager</a>
|
---|
423 | 00641 );
|
---|
424 | 00642
|
---|
425 | 00644
|
---|
426 | 00655 <font class="keyword">static</font> <font class="keywordtype">int</font> indexOf(<font class="keyword">const</font> <font class="keywordtype">char</font>* <font class="keyword">const</font> toSearch, <font class="keyword">const</font> <font class="keywordtype">char</font> ch);
|
---|
427 | 00656
|
---|
428 | 00665 <font class="keyword">static</font> <font class="keywordtype">int</font> indexOf(<font class="keyword">const</font> XMLCh* <font class="keyword">const</font> toSearch, <font class="keyword">const</font> XMLCh ch);
|
---|
429 | 00666
|
---|
430 | 00678 <font class="keyword">static</font> <font class="keywordtype">int</font> indexOf
|
---|
431 | 00679 (
|
---|
432 | 00680 <font class="keyword">const</font> <font class="keywordtype">char</font>* <font class="keyword">const</font> toSearch
|
---|
433 | 00681 , <font class="keyword">const</font> <font class="keywordtype">char</font> chToFind
|
---|
434 | 00682 , <font class="keyword">const</font> <font class="keywordtype">unsigned</font> <font class="keywordtype">int</font> fromIndex
|
---|
435 | 00683 , <a class="code" href="classMemoryManager.html">MemoryManager</a>* <font class="keyword">const</font> manager = <a class="code" href="classXMLPlatformUtils.html#z488_4">XMLPlatformUtils::fgMemoryManager</a>
|
---|
436 | 00684 );
|
---|
437 | 00685
|
---|
438 | 00697 <font class="keyword">static</font> <font class="keywordtype">int</font> indexOf
|
---|
439 | 00698 (
|
---|
440 | 00699 <font class="keyword">const</font> XMLCh* <font class="keyword">const</font> toSearch
|
---|
441 | 00700 , <font class="keyword">const</font> XMLCh chToFind
|
---|
442 | 00701 , <font class="keyword">const</font> <font class="keywordtype">unsigned</font> <font class="keywordtype">int</font> fromIndex
|
---|
443 | 00702 , <a class="code" href="classMemoryManager.html">MemoryManager</a>* <font class="keyword">const</font> manager = <a class="code" href="classXMLPlatformUtils.html#z488_4">XMLPlatformUtils::fgMemoryManager</a>
|
---|
444 | 00703 );
|
---|
445 | 00704
|
---|
446 | 00713 <font class="keyword">static</font> <font class="keywordtype">int</font> lastIndexOf(<font class="keyword">const</font> <font class="keywordtype">char</font>* <font class="keyword">const</font> toSearch, <font class="keyword">const</font> <font class="keywordtype">char</font> ch);
|
---|
447 | 00714
|
---|
448 | 00723 <font class="keyword">static</font> <font class="keywordtype">int</font> lastIndexOf(<font class="keyword">const</font> XMLCh* <font class="keyword">const</font> toSearch, <font class="keyword">const</font> XMLCh ch);
|
---|
449 | 00724
|
---|
450 | 00734 <font class="keyword">static</font> <font class="keywordtype">int</font> lastIndexOf
|
---|
451 | 00735 (
|
---|
452 | 00736 <font class="keyword">const</font> XMLCh ch
|
---|
453 | 00737 , <font class="keyword">const</font> XMLCh* <font class="keyword">const</font> toSearch
|
---|
454 | 00738 , <font class="keyword">const</font> <font class="keywordtype">unsigned</font> <font class="keywordtype">int</font> toSearchLen
|
---|
455 | 00739 );
|
---|
456 | 00740
|
---|
457 | 00752 <font class="keyword">static</font> <font class="keywordtype">int</font> lastIndexOf
|
---|
458 | 00753 (
|
---|
459 | 00754 <font class="keyword">const</font> <font class="keywordtype">char</font>* <font class="keyword">const</font> toSearch
|
---|
460 | 00755 , <font class="keyword">const</font> <font class="keywordtype">char</font> chToFind
|
---|
461 | 00756 , <font class="keyword">const</font> <font class="keywordtype">unsigned</font> <font class="keywordtype">int</font> fromIndex
|
---|
462 | 00757 , <a class="code" href="classMemoryManager.html">MemoryManager</a>* <font class="keyword">const</font> manager = <a class="code" href="classXMLPlatformUtils.html#z488_4">XMLPlatformUtils::fgMemoryManager</a>
|
---|
463 | 00758 );
|
---|
464 | 00759
|
---|
465 | 00771 <font class="keyword">static</font> <font class="keywordtype">int</font> lastIndexOf
|
---|
466 | 00772 (
|
---|
467 | 00773 <font class="keyword">const</font> XMLCh* <font class="keyword">const</font> toSearch
|
---|
468 | 00774 , <font class="keyword">const</font> XMLCh ch
|
---|
469 | 00775 , <font class="keyword">const</font> <font class="keywordtype">unsigned</font> <font class="keywordtype">int</font> fromIndex
|
---|
470 | 00776 , <a class="code" href="classMemoryManager.html">MemoryManager</a>* <font class="keyword">const</font> manager = <a class="code" href="classXMLPlatformUtils.html#z488_4">XMLPlatformUtils::fgMemoryManager</a>
|
---|
471 | 00777 );
|
---|
472 | 00779
|
---|
473 | 00787 <font class="keyword">static</font> <font class="keywordtype">void</font> moveChars
|
---|
474 | 00788 (
|
---|
475 | 00789 XMLCh* <font class="keyword">const</font> targetStr
|
---|
476 | 00790 , <font class="keyword">const</font> XMLCh* <font class="keyword">const</font> srcStr
|
---|
477 | 00791 , <font class="keyword">const</font> <font class="keywordtype">unsigned</font> <font class="keywordtype">int</font> count
|
---|
478 | 00792 );
|
---|
479 | 00793
|
---|
480 | 00795
|
---|
481 | 00807 <font class="keyword">static</font> <font class="keywordtype">void</font> subString
|
---|
482 | 00808 (
|
---|
483 | 00809 <font class="keywordtype">char</font>* <font class="keyword">const</font> targetStr
|
---|
484 | 00810 , <font class="keyword">const</font> <font class="keywordtype">char</font>* <font class="keyword">const</font> srcStr
|
---|
485 | 00811 , <font class="keyword">const</font> <font class="keywordtype">int</font> startIndex
|
---|
486 | 00812 , <font class="keyword">const</font> <font class="keywordtype">int</font> endIndex
|
---|
487 | 00813 , <a class="code" href="classMemoryManager.html">MemoryManager</a>* <font class="keyword">const</font> manager = <a class="code" href="classXMLPlatformUtils.html#z488_4">XMLPlatformUtils::fgMemoryManager</a>
|
---|
488 | 00814 );
|
---|
489 | 00815
|
---|
490 | 00825 <font class="keyword">static</font> <font class="keywordtype">void</font> subString
|
---|
491 | 00826 (
|
---|
492 | 00827 XMLCh* <font class="keyword">const</font> targetStr
|
---|
493 | 00828 , <font class="keyword">const</font> XMLCh* <font class="keyword">const</font> srcStr
|
---|
494 | 00829 , <font class="keyword">const</font> <font class="keywordtype">int</font> startIndex
|
---|
495 | 00830 , <font class="keyword">const</font> <font class="keywordtype">int</font> endIndex
|
---|
496 | 00831 , <a class="code" href="classMemoryManager.html">MemoryManager</a>* <font class="keyword">const</font> manager = <a class="code" href="classXMLPlatformUtils.html#z488_4">XMLPlatformUtils::fgMemoryManager</a>
|
---|
497 | 00832 );
|
---|
498 | 00833
|
---|
499 | 00835
|
---|
500 | 00847 <font class="keyword">static</font> <font class="keywordtype">char</font>* replicate(<font class="keyword">const</font> <font class="keywordtype">char</font>* <font class="keyword">const</font> toRep);
|
---|
501 | 00848
|
---|
502 | 00857 <font class="keyword">static</font> <font class="keywordtype">char</font>* replicate(<font class="keyword">const</font> <font class="keywordtype">char</font>* <font class="keyword">const</font> toRep,
|
---|
503 | 00858 <a class="code" href="classMemoryManager.html">MemoryManager</a>* <font class="keyword">const</font> manager);
|
---|
504 | 00859
|
---|
505 | 00869 <font class="keyword">static</font> XMLCh* replicate(<font class="keyword">const</font> XMLCh* <font class="keyword">const</font> toRep);
|
---|
506 | 00870
|
---|
507 | 00879 <font class="keyword">static</font> XMLCh* replicate(<font class="keyword">const</font> XMLCh* <font class="keyword">const</font> toRep,
|
---|
508 | 00880 <a class="code" href="classMemoryManager.html">MemoryManager</a>* <font class="keyword">const</font> manager);
|
---|
509 | 00881
|
---|
510 | 00883
|
---|
511 | 00892 <font class="keyword">static</font> <font class="keywordtype">bool</font> startsWith
|
---|
512 | 00893 (
|
---|
513 | 00894 <font class="keyword">const</font> <font class="keywordtype">char</font>* <font class="keyword">const</font> toTest
|
---|
514 | 00895 , <font class="keyword">const</font> <font class="keywordtype">char</font>* <font class="keyword">const</font> prefix
|
---|
515 | 00896 );
|
---|
516 | 00897
|
---|
517 | 00904 <font class="keyword">static</font> <font class="keywordtype">bool</font> startsWith
|
---|
518 | 00905 (
|
---|
519 | 00906 <font class="keyword">const</font> XMLCh* <font class="keyword">const</font> toTest
|
---|
520 | 00907 , <font class="keyword">const</font> XMLCh* <font class="keyword">const</font> prefix
|
---|
521 | 00908 );
|
---|
522 | 00909
|
---|
523 | 00918 <font class="keyword">static</font> <font class="keywordtype">bool</font> startsWithI
|
---|
524 | 00919 (
|
---|
525 | 00920 <font class="keyword">const</font> <font class="keywordtype">char</font>* <font class="keyword">const</font> toTest
|
---|
526 | 00921 , <font class="keyword">const</font> <font class="keywordtype">char</font>* <font class="keyword">const</font> prefix
|
---|
527 | 00922 );
|
---|
528 | 00923
|
---|
529 | 00933 <font class="keyword">static</font> <font class="keywordtype">bool</font> startsWithI
|
---|
530 | 00934 (
|
---|
531 | 00935 <font class="keyword">const</font> XMLCh* <font class="keyword">const</font> toTest
|
---|
532 | 00936 , <font class="keyword">const</font> XMLCh* <font class="keyword">const</font> prefix
|
---|
533 | 00937 );
|
---|
534 | 00938
|
---|
535 | 00945 <font class="keyword">static</font> <font class="keywordtype">bool</font> endsWith
|
---|
536 | 00946 (
|
---|
537 | 00947 <font class="keyword">const</font> XMLCh* <font class="keyword">const</font> toTest
|
---|
538 | 00948 , <font class="keyword">const</font> XMLCh* <font class="keyword">const</font> suffix
|
---|
539 | 00949 );
|
---|
540 | 00950
|
---|
541 | 00951
|
---|
542 | 00960 <font class="keyword">static</font> <font class="keyword">const</font> XMLCh* findAny
|
---|
543 | 00961 (
|
---|
544 | 00962 <font class="keyword">const</font> XMLCh* <font class="keyword">const</font> toSearch
|
---|
545 | 00963 , <font class="keyword">const</font> XMLCh* <font class="keyword">const</font> searchList
|
---|
546 | 00964 );
|
---|
547 | 00965
|
---|
548 | 00974 <font class="keyword">static</font> XMLCh* findAny
|
---|
549 | 00975 (
|
---|
550 | 00976 XMLCh* <font class="keyword">const</font> toSearch
|
---|
551 | 00977 , <font class="keyword">const</font> XMLCh* <font class="keyword">const</font> searchList
|
---|
552 | 00978 );
|
---|
553 | 00979
|
---|
554 | 00986 <font class="keyword">static</font> <font class="keywordtype">int</font> patternMatch
|
---|
555 | 00987 (
|
---|
556 | 00988 <font class="keyword">const</font> XMLCh* <font class="keyword">const</font> toSearch
|
---|
557 | 00989 , <font class="keyword">const</font> XMLCh* <font class="keyword">const</font> pattern
|
---|
558 | 00990 );
|
---|
559 | 00991
|
---|
560 | 00996 <font class="keyword">static</font> <font class="keywordtype">unsigned</font> <font class="keywordtype">int</font> stringLen(<font class="keyword">const</font> <font class="keywordtype">char</font>* <font class="keyword">const</font> src);
|
---|
561 | 00997
|
---|
562 | 01002 <font class="keyword">static</font> <font class="keywordtype">unsigned</font> <font class="keywordtype">int</font> stringLen(<font class="keyword">const</font> XMLCh* <font class="keyword">const</font> src);
|
---|
563 | 01003
|
---|
564 | 01011 <font class="keyword">static</font> <font class="keywordtype">bool</font> isValidNOTATION(<font class="keyword">const</font> XMLCh* <font class="keyword">const</font> name
|
---|
565 | 01012 , <a class="code" href="classMemoryManager.html">MemoryManager</a>* <font class="keyword">const</font> manager = <a class="code" href="classXMLPlatformUtils.html#z488_4">XMLPlatformUtils::fgMemoryManager</a>);
|
---|
566 | 01013
|
---|
567 | 01021 <font class="keyword">static</font> <font class="keywordtype">bool</font> isValidNCName(<font class="keyword">const</font> XMLCh* <font class="keyword">const</font> name);
|
---|
568 | 01022
|
---|
569 | 01030 <font class="keyword">static</font> <font class="keywordtype">bool</font> isValidName(<font class="keyword">const</font> XMLCh* <font class="keyword">const</font> name);
|
---|
570 | 01031
|
---|
571 | 01037 <font class="keyword">static</font> <font class="keywordtype">bool</font> isValidEncName(<font class="keyword">const</font> XMLCh* <font class="keyword">const</font> name);
|
---|
572 | 01038
|
---|
573 | 01046 <font class="keyword">static</font> <font class="keywordtype">bool</font> isValidQName(<font class="keyword">const</font> XMLCh* <font class="keyword">const</font> name);
|
---|
574 | 01047
|
---|
575 | 01054 <font class="keyword">static</font> <font class="keywordtype">bool</font> isAlpha(XMLCh <font class="keyword">const</font> theChar);
|
---|
576 | 01055
|
---|
577 | 01061 <font class="keyword">static</font> <font class="keywordtype">bool</font> isDigit(XMLCh <font class="keyword">const</font> theChar);
|
---|
578 | 01062
|
---|
579 | 01068 <font class="keyword">static</font> <font class="keywordtype">bool</font> isAlphaNum(XMLCh <font class="keyword">const</font> theChar);
|
---|
580 | 01069
|
---|
581 | 01075 <font class="keyword">static</font> <font class="keywordtype">bool</font> isHex(XMLCh <font class="keyword">const</font> theChar);
|
---|
582 | 01076
|
---|
583 | 01084 <font class="keyword">static</font> <font class="keywordtype">bool</font> isAllWhiteSpace(<font class="keyword">const</font> XMLCh* <font class="keyword">const</font> toCheck);
|
---|
584 | 01085
|
---|
585 | 01091 <font class="keyword">static</font> <font class="keywordtype">bool</font> isInList(<font class="keyword">const</font> XMLCh* <font class="keyword">const</font> toFind, <font class="keyword">const</font> XMLCh* <font class="keyword">const</font> enumList);
|
---|
586 | 01092
|
---|
587 | 01094
|
---|
588 | 01097
|
---|
589 | 01109 <font class="keyword">static</font> <font class="keywordtype">void</font> binToText
|
---|
590 | 01110 (
|
---|
591 | 01111 <font class="keyword">const</font> <font class="keywordtype">unsigned</font> <font class="keywordtype">int</font> toFormat
|
---|
592 | 01112 , <font class="keywordtype">char</font>* <font class="keyword">const</font> toFill
|
---|
593 | 01113 , <font class="keyword">const</font> <font class="keywordtype">unsigned</font> <font class="keywordtype">int</font> maxChars
|
---|
594 | 01114 , <font class="keyword">const</font> <font class="keywordtype">unsigned</font> <font class="keywordtype">int</font> radix
|
---|
595 | 01115 , <a class="code" href="classMemoryManager.html">MemoryManager</a>* <font class="keyword">const</font> manager = <a class="code" href="classXMLPlatformUtils.html#z488_4">XMLPlatformUtils::fgMemoryManager</a>
|
---|
596 | 01116 );
|
---|
597 | 01117
|
---|
598 | 01129 <font class="keyword">static</font> <font class="keywordtype">void</font> binToText
|
---|
599 | 01130 (
|
---|
600 | 01131 <font class="keyword">const</font> <font class="keywordtype">unsigned</font> <font class="keywordtype">int</font> toFormat
|
---|
601 | 01132 , XMLCh* <font class="keyword">const</font> toFill
|
---|
602 | 01133 , <font class="keyword">const</font> <font class="keywordtype">unsigned</font> <font class="keywordtype">int</font> maxChars
|
---|
603 | 01134 , <font class="keyword">const</font> <font class="keywordtype">unsigned</font> <font class="keywordtype">int</font> radix
|
---|
604 | 01135 , <a class="code" href="classMemoryManager.html">MemoryManager</a>* <font class="keyword">const</font> manager = <a class="code" href="classXMLPlatformUtils.html#z488_4">XMLPlatformUtils::fgMemoryManager</a>
|
---|
605 | 01136 );
|
---|
606 | 01137
|
---|
607 | 01149 <font class="keyword">static</font> <font class="keywordtype">void</font> binToText
|
---|
608 | 01150 (
|
---|
609 | 01151 <font class="keyword">const</font> <font class="keywordtype">unsigned</font> <font class="keywordtype">long</font> toFormat
|
---|
610 | 01152 , <font class="keywordtype">char</font>* <font class="keyword">const</font> toFill
|
---|
611 | 01153 , <font class="keyword">const</font> <font class="keywordtype">unsigned</font> <font class="keywordtype">int</font> maxChars
|
---|
612 | 01154 , <font class="keyword">const</font> <font class="keywordtype">unsigned</font> <font class="keywordtype">int</font> radix
|
---|
613 | 01155 , <a class="code" href="classMemoryManager.html">MemoryManager</a>* <font class="keyword">const</font> manager = <a class="code" href="classXMLPlatformUtils.html#z488_4">XMLPlatformUtils::fgMemoryManager</a>
|
---|
614 | 01156 );
|
---|
615 | 01157
|
---|
616 | 01169 <font class="keyword">static</font> <font class="keywordtype">void</font> binToText
|
---|
617 | 01170 (
|
---|
618 | 01171 <font class="keyword">const</font> <font class="keywordtype">unsigned</font> <font class="keywordtype">long</font> toFormat
|
---|
619 | 01172 , XMLCh* <font class="keyword">const</font> toFill
|
---|
620 | 01173 , <font class="keyword">const</font> <font class="keywordtype">unsigned</font> <font class="keywordtype">int</font> maxChars
|
---|
621 | 01174 , <font class="keyword">const</font> <font class="keywordtype">unsigned</font> <font class="keywordtype">int</font> radix
|
---|
622 | 01175 , <a class="code" href="classMemoryManager.html">MemoryManager</a>* <font class="keyword">const</font> manager = <a class="code" href="classXMLPlatformUtils.html#z488_4">XMLPlatformUtils::fgMemoryManager</a>
|
---|
623 | 01176 );
|
---|
624 | 01177
|
---|
625 | 01189 <font class="keyword">static</font> <font class="keywordtype">void</font> binToText
|
---|
626 | 01190 (
|
---|
627 | 01191 <font class="keyword">const</font> <font class="keywordtype">long</font> toFormat
|
---|
628 | 01192 , <font class="keywordtype">char</font>* <font class="keyword">const</font> toFill
|
---|
629 | 01193 , <font class="keyword">const</font> <font class="keywordtype">unsigned</font> <font class="keywordtype">int</font> maxChars
|
---|
630 | 01194 , <font class="keyword">const</font> <font class="keywordtype">unsigned</font> <font class="keywordtype">int</font> radix
|
---|
631 | 01195 , <a class="code" href="classMemoryManager.html">MemoryManager</a>* <font class="keyword">const</font> manager = <a class="code" href="classXMLPlatformUtils.html#z488_4">XMLPlatformUtils::fgMemoryManager</a>
|
---|
632 | 01196 );
|
---|
633 | 01197
|
---|
634 | 01209 <font class="keyword">static</font> <font class="keywordtype">void</font> binToText
|
---|
635 | 01210 (
|
---|
636 | 01211 <font class="keyword">const</font> <font class="keywordtype">long</font> toFormat
|
---|
637 | 01212 , XMLCh* <font class="keyword">const</font> toFill
|
---|
638 | 01213 , <font class="keyword">const</font> <font class="keywordtype">unsigned</font> <font class="keywordtype">int</font> maxChars
|
---|
639 | 01214 , <font class="keyword">const</font> <font class="keywordtype">unsigned</font> <font class="keywordtype">int</font> radix
|
---|
640 | 01215 , <a class="code" href="classMemoryManager.html">MemoryManager</a>* <font class="keyword">const</font> manager = <a class="code" href="classXMLPlatformUtils.html#z488_4">XMLPlatformUtils::fgMemoryManager</a>
|
---|
641 | 01216 );
|
---|
642 | 01217
|
---|
643 | 01229 <font class="keyword">static</font> <font class="keywordtype">void</font> binToText
|
---|
644 | 01230 (
|
---|
645 | 01231 <font class="keyword">const</font> <font class="keywordtype">int</font> toFormat
|
---|
646 | 01232 , <font class="keywordtype">char</font>* <font class="keyword">const</font> toFill
|
---|
647 | 01233 , <font class="keyword">const</font> <font class="keywordtype">unsigned</font> <font class="keywordtype">int</font> maxChars
|
---|
648 | 01234 , <font class="keyword">const</font> <font class="keywordtype">unsigned</font> <font class="keywordtype">int</font> radix
|
---|
649 | 01235 , <a class="code" href="classMemoryManager.html">MemoryManager</a>* <font class="keyword">const</font> manager = <a class="code" href="classXMLPlatformUtils.html#z488_4">XMLPlatformUtils::fgMemoryManager</a>
|
---|
650 | 01236 );
|
---|
651 | 01237
|
---|
652 | 01249 <font class="keyword">static</font> <font class="keywordtype">void</font> binToText
|
---|
653 | 01250 (
|
---|
654 | 01251 <font class="keyword">const</font> <font class="keywordtype">int</font> toFormat
|
---|
655 | 01252 , XMLCh* <font class="keyword">const</font> toFill
|
---|
656 | 01253 , <font class="keyword">const</font> <font class="keywordtype">unsigned</font> <font class="keywordtype">int</font> maxChars
|
---|
657 | 01254 , <font class="keyword">const</font> <font class="keywordtype">unsigned</font> <font class="keywordtype">int</font> radix
|
---|
658 | 01255 , <a class="code" href="classMemoryManager.html">MemoryManager</a>* <font class="keyword">const</font> manager = <a class="code" href="classXMLPlatformUtils.html#z488_4">XMLPlatformUtils::fgMemoryManager</a>
|
---|
659 | 01256 );
|
---|
660 | 01257
|
---|
661 | 01269 <font class="keyword">static</font> <font class="keywordtype">bool</font> textToBin
|
---|
662 | 01270 (
|
---|
663 | 01271 <font class="keyword">const</font> XMLCh* <font class="keyword">const</font> toConvert
|
---|
664 | 01272 , <font class="keywordtype">unsigned</font> <font class="keywordtype">int</font>& toFill
|
---|
665 | 01273 , <a class="code" href="classMemoryManager.html">MemoryManager</a>* <font class="keyword">const</font> manager = <a class="code" href="classXMLPlatformUtils.html#z488_4">XMLPlatformUtils::fgMemoryManager</a>
|
---|
666 | 01274 );
|
---|
667 | 01275
|
---|
668 | 01289 <font class="keyword">static</font> <font class="keywordtype">int</font> parseInt
|
---|
669 | 01290 (
|
---|
670 | 01291 <font class="keyword">const</font> XMLCh* <font class="keyword">const</font> toConvert
|
---|
671 | 01292 , <a class="code" href="classMemoryManager.html">MemoryManager</a>* <font class="keyword">const</font> manager = <a class="code" href="classXMLPlatformUtils.html#z488_4">XMLPlatformUtils::fgMemoryManager</a>
|
---|
672 | 01293 );
|
---|
673 | 01294
|
---|
674 | 01300 <font class="keyword">static</font> <font class="keywordtype">void</font> cut
|
---|
675 | 01301 (
|
---|
676 | 01302 XMLCh* <font class="keyword">const</font> toCutFrom
|
---|
677 | 01303 , <font class="keyword">const</font> <font class="keywordtype">unsigned</font> <font class="keywordtype">int</font> count
|
---|
678 | 01304 );
|
---|
679 | 01305
|
---|
680 | 01316 <font class="keyword">static</font> <font class="keywordtype">char</font>* transcode
|
---|
681 | 01317 (
|
---|
682 | 01318 <font class="keyword">const</font> XMLCh* <font class="keyword">const</font> toTranscode
|
---|
683 | 01319 );
|
---|
684 | 01320 <font class="keyword">static</font> <font class="keywordtype">char</font>* transcode
|
---|
685 | 01321 (
|
---|
686 | 01322 <font class="keyword">const</font> XMLCh* <font class="keyword">const</font> toTranscode
|
---|
687 | 01323 , <a class="code" href="classMemoryManager.html">MemoryManager</a>* <font class="keyword">const</font> manager
|
---|
688 | 01324 );
|
---|
689 | 01325
|
---|
690 | 01341 <font class="keyword">static</font> <font class="keywordtype">bool</font> transcode
|
---|
691 | 01342 (
|
---|
692 | 01343 <font class="keyword">const</font> XMLCh* <font class="keyword">const</font> toTranscode
|
---|
693 | 01344 , <font class="keywordtype">char</font>* <font class="keyword">const</font> toFill
|
---|
694 | 01345 , <font class="keyword">const</font> <font class="keywordtype">unsigned</font> <font class="keywordtype">int</font> maxChars
|
---|
695 | 01346 , <a class="code" href="classMemoryManager.html">MemoryManager</a>* <font class="keyword">const</font> manager = <a class="code" href="classXMLPlatformUtils.html#z488_4">XMLPlatformUtils::fgMemoryManager</a>
|
---|
696 | 01347 );
|
---|
697 | 01348
|
---|
698 | 01359 <font class="keyword">static</font> XMLCh* transcode
|
---|
699 | 01360 (
|
---|
700 | 01361 <font class="keyword">const</font> <font class="keywordtype">char</font>* <font class="keyword">const</font> toTranscode
|
---|
701 | 01362 );
|
---|
702 | 01363 <font class="keyword">static</font> XMLCh* transcode
|
---|
703 | 01364 (
|
---|
704 | 01365 <font class="keyword">const</font> <font class="keywordtype">char</font>* <font class="keyword">const</font> toTranscode
|
---|
705 | 01366 , <a class="code" href="classMemoryManager.html">MemoryManager</a>* <font class="keyword">const</font> manager
|
---|
706 | 01367 );
|
---|
707 | 01368
|
---|
708 | 01379 <font class="keyword">static</font> <font class="keywordtype">bool</font> transcode
|
---|
709 | 01380 (
|
---|
710 | 01381 <font class="keyword">const</font> <font class="keywordtype">char</font>* <font class="keyword">const</font> toTranscode
|
---|
711 | 01382 , XMLCh* <font class="keyword">const</font> toFill
|
---|
712 | 01383 , <font class="keyword">const</font> <font class="keywordtype">unsigned</font> <font class="keywordtype">int</font> maxChars
|
---|
713 | 01384 , <a class="code" href="classMemoryManager.html">MemoryManager</a>* <font class="keyword">const</font> manager = <a class="code" href="classXMLPlatformUtils.html#z488_4">XMLPlatformUtils::fgMemoryManager</a>
|
---|
714 | 01385 );
|
---|
715 | 01386
|
---|
716 | 01392 <font class="keyword">static</font> <font class="keywordtype">void</font> trim(<font class="keywordtype">char</font>* <font class="keyword">const</font> toTrim);
|
---|
717 | 01393
|
---|
718 | 01399 <font class="keyword">static</font> <font class="keywordtype">void</font> trim(XMLCh* <font class="keyword">const</font> toTrim);
|
---|
719 | 01400
|
---|
720 | 01408 <font class="keyword">static</font> BaseRefVectorOf<XMLCh>* tokenizeString(<font class="keyword">const</font> XMLCh* <font class="keyword">const</font> tokenizeSrc
|
---|
721 | 01409 , <a class="code" href="classMemoryManager.html">MemoryManager</a>* <font class="keyword">const</font> manager = <a class="code" href="classXMLPlatformUtils.html#z488_4">XMLPlatformUtils::fgMemoryManager</a>);
|
---|
722 | 01410
|
---|
723 | 01412
|
---|
724 | 01423 <font class="keyword">static</font> XMLCh* makeUName
|
---|
725 | 01424 (
|
---|
726 | 01425 <font class="keyword">const</font> XMLCh* <font class="keyword">const</font> pszURI
|
---|
727 | 01426 , <font class="keyword">const</font> XMLCh* <font class="keyword">const</font> pszName
|
---|
728 | 01427 );
|
---|
729 | 01428
|
---|
730 | 01445 <font class="keyword">static</font> <font class="keywordtype">unsigned</font> <font class="keywordtype">int</font> replaceTokens
|
---|
731 | 01446 (
|
---|
732 | 01447 XMLCh* <font class="keyword">const</font> errText
|
---|
733 | 01448 , <font class="keyword">const</font> <font class="keywordtype">unsigned</font> <font class="keywordtype">int</font> maxChars
|
---|
734 | 01449 , <font class="keyword">const</font> XMLCh* <font class="keyword">const</font> text1
|
---|
735 | 01450 , <font class="keyword">const</font> XMLCh* <font class="keyword">const</font> text2
|
---|
736 | 01451 , <font class="keyword">const</font> XMLCh* <font class="keyword">const</font> text3
|
---|
737 | 01452 , <font class="keyword">const</font> XMLCh* <font class="keyword">const</font> text4
|
---|
738 | 01453 , <a class="code" href="classMemoryManager.html">MemoryManager</a>* <font class="keyword">const</font> manager = <a class="code" href="classXMLPlatformUtils.html#z488_4">XMLPlatformUtils::fgMemoryManager</a>
|
---|
739 | 01454 );
|
---|
740 | 01455
|
---|
741 | 01460 <font class="keyword">static</font> <font class="keywordtype">void</font> upperCase(XMLCh* <font class="keyword">const</font> toUpperCase);
|
---|
742 | 01461
|
---|
743 | 01466 <font class="keyword">static</font> <font class="keywordtype">void</font> lowerCase(XMLCh* <font class="keyword">const</font> toLowerCase);
|
---|
744 | 01467
|
---|
745 | 01471 <font class="keyword">static</font> <font class="keywordtype">bool</font> isWSReplaced(<font class="keyword">const</font> XMLCh* <font class="keyword">const</font> toCheck);
|
---|
746 | 01472
|
---|
747 | 01476 <font class="keyword">static</font> <font class="keywordtype">bool</font> isWSCollapsed(<font class="keyword">const</font> XMLCh* <font class="keyword">const</font> toCheck);
|
---|
748 | 01477
|
---|
749 | 01483 <font class="keyword">static</font> <font class="keywordtype">void</font> replaceWS(XMLCh* <font class="keyword">const</font> toConvert
|
---|
750 | 01484 , <a class="code" href="classMemoryManager.html">MemoryManager</a>* <font class="keyword">const</font> manager = <a class="code" href="classXMLPlatformUtils.html#z488_4">XMLPlatformUtils::fgMemoryManager</a>);
|
---|
751 | 01485
|
---|
752 | 01491 <font class="keyword">static</font> <font class="keywordtype">void</font> collapseWS(XMLCh* <font class="keyword">const</font> toConvert
|
---|
753 | 01492 , <a class="code" href="classMemoryManager.html">MemoryManager</a>* <font class="keyword">const</font> manager = <a class="code" href="classXMLPlatformUtils.html#z488_4">XMLPlatformUtils::fgMemoryManager</a>);
|
---|
754 | 01493
|
---|
755 | 01499 <font class="keyword">static</font> <font class="keywordtype">void</font> removeWS(XMLCh* <font class="keyword">const</font> toConvert
|
---|
756 | 01500 , <a class="code" href="classMemoryManager.html">MemoryManager</a>* <font class="keyword">const</font> manager = <a class="code" href="classXMLPlatformUtils.html#z488_4">XMLPlatformUtils::fgMemoryManager</a>);
|
---|
757 | 01501
|
---|
758 | 01502
|
---|
759 | 01508 <font class="keyword">static</font> <font class="keywordtype">void</font> removeChar(<font class="keyword">const</font> XMLCh* <font class="keyword">const</font> srcString
|
---|
760 | 01509 , <font class="keyword">const</font> XMLCh& toRemove
|
---|
761 | 01510 , XMLBuffer& dstBuffer);
|
---|
762 | 01511
|
---|
763 | 01519 <font class="keyword">static</font> <font class="keywordtype">void</font> fixURI(<font class="keyword">const</font> XMLCh* <font class="keyword">const</font> str, XMLCh* <font class="keyword">const</font> target);
|
---|
764 | 01520
|
---|
765 | 01522
|
---|
766 | 01530 <font class="keyword">static</font> <font class="keywordtype">void</font> release(<font class="keywordtype">char</font>** buf);
|
---|
767 | 01531
|
---|
768 | 01538 <font class="keyword">static</font> <font class="keywordtype">void</font> release(XMLCh** buf);
|
---|
769 | 01539
|
---|
770 | 01546 <font class="keyword">static</font> <font class="keywordtype">void</font> release(<a class="code" href="XercesDefs_8hpp.html#a16">XMLByte</a>** buf);
|
---|
771 | 01547
|
---|
772 | 01549
|
---|
773 | 01550
|
---|
774 | 01551 <font class="keyword">private</font> :
|
---|
775 | 01552
|
---|
776 | 01556 <a class="code" href="classXMLString.html">XMLString</a>();
|
---|
777 | 01558 ~<a class="code" href="classXMLString.html">XMLString</a>();
|
---|
778 | 01560
|
---|
779 | 01561
|
---|
780 | 01565 <font class="keyword">static</font> <font class="keywordtype">void</font> initString(<a class="code" href="classXMLLCPTranscoder.html">XMLLCPTranscoder</a>* <font class="keyword">const</font> defToUse,
|
---|
781 | 01566 <a class="code" href="classMemoryManager.html">MemoryManager</a>* <font class="keyword">const</font> manager);
|
---|
782 | 01567 <font class="keyword">static</font> <font class="keywordtype">void</font> termString();
|
---|
783 | 01569
|
---|
784 | 01574 <font class="keyword">static</font> <font class="keywordtype">bool</font> validateRegion(<font class="keyword">const</font> XMLCh* <font class="keyword">const</font> str1, <font class="keyword">const</font> <font class="keywordtype">int</font> offset1,
|
---|
785 | 01575 <font class="keyword">const</font> XMLCh* <font class="keyword">const</font> str2, <font class="keyword">const</font> <font class="keywordtype">int</font> offset2,
|
---|
786 | 01576 <font class="keyword">const</font> <font class="keywordtype">unsigned</font> <font class="keywordtype">int</font> charCount);
|
---|
787 | 01577
|
---|
788 | 01578 <font class="keyword">static</font> <a class="code" href="classMemoryManager.html">MemoryManager</a>* fgMemoryManager;
|
---|
789 | 01579
|
---|
790 | <a name="l01580"></a><a class="code" href="classXMLString.html#l0">01580</a> <font class="keyword">friend</font> <font class="keyword">class </font><a class="code" href="classXMLPlatformUtils.html">XMLPlatformUtils</a>;
|
---|
791 | 01581 };
|
---|
792 | 01582
|
---|
793 | 01583
|
---|
794 | 01584 <font class="comment">// ---------------------------------------------------------------------------</font>
|
---|
795 | 01585 <font class="comment">// Inline some methods that are either just passthroughs to other string</font>
|
---|
796 | 01586 <font class="comment">// methods, or which are key for performance.</font>
|
---|
797 | 01587 <font class="comment">// ---------------------------------------------------------------------------</font>
|
---|
798 | <a name="l01588"></a><a class="code" href="classXMLString.html#z516_0">01588</a> <font class="keyword">inline</font> <font class="keywordtype">void</font> <a class="code" href="classXMLString.html#z516_0">XMLString::moveChars</a>( XMLCh* <font class="keyword">const</font> targetStr
|
---|
799 | 01589 , <font class="keyword">const</font> XMLCh* <font class="keyword">const</font> srcStr
|
---|
800 | 01590 , <font class="keyword">const</font> <font class="keywordtype">unsigned</font> <font class="keywordtype">int</font> count)
|
---|
801 | 01591 {
|
---|
802 | 01592 memcpy(targetStr, srcStr, count * <font class="keyword">sizeof</font>(XMLCh));
|
---|
803 | 01593 }
|
---|
804 | 01594
|
---|
805 | <a name="l01595"></a><a class="code" href="classXMLString.html#z519_9">01595</a> <font class="keyword">inline</font> <font class="keywordtype">unsigned</font> <font class="keywordtype">int</font> <a class="code" href="classXMLString.html#z519_8">XMLString::stringLen</a>(<font class="keyword">const</font> XMLCh* <font class="keyword">const</font> src)
|
---|
806 | 01596 {
|
---|
807 | 01597 <font class="keywordflow">if</font> (src == 0 || *src == 0)
|
---|
808 | 01598 {
|
---|
809 | 01599 <font class="keywordflow">return</font> 0;
|
---|
810 | 01600 }
|
---|
811 | 01601 <font class="keywordflow">else</font>
|
---|
812 | 01602 {
|
---|
813 | 01603 <font class="keyword">const</font> XMLCh* pszTmp = src + 1;
|
---|
814 | 01604
|
---|
815 | 01605 <font class="keywordflow">while</font> (*pszTmp)
|
---|
816 | 01606 ++pszTmp;
|
---|
817 | 01607
|
---|
818 | 01608 <font class="keywordflow">return</font> (<font class="keywordtype">unsigned</font> <font class="keywordtype">int</font>)(pszTmp - src);
|
---|
819 | 01609 }
|
---|
820 | 01610 }
|
---|
821 | 01611
|
---|
822 | <a name="l01612"></a><a class="code" href="classXMLString.html#z518_3">01612</a> <font class="keyword">inline</font> XMLCh* <a class="code" href="classXMLString.html#z518_0">XMLString::replicate</a>(<font class="keyword">const</font> XMLCh* <font class="keyword">const</font> toRep,
|
---|
823 | 01613 <a class="code" href="classMemoryManager.html">MemoryManager</a>* <font class="keyword">const</font> manager)
|
---|
824 | 01614 {
|
---|
825 | 01615 <font class="comment">// If a null string, return a null string!</font>
|
---|
826 | 01616 XMLCh* ret = 0;
|
---|
827 | 01617 <font class="keywordflow">if</font> (toRep)
|
---|
828 | 01618 {
|
---|
829 | 01619 <font class="keyword">const</font> <font class="keywordtype">unsigned</font> <font class="keywordtype">int</font> len = <a class="code" href="classXMLString.html#z519_8">stringLen</a>(toRep);
|
---|
830 | 01620 ret = (XMLCh*) manager-><a class="code" href="classMemoryManager.html#z221_0">allocate</a>((len+1) * <font class="keyword">sizeof</font>(XMLCh)); <font class="comment">//new XMLCh[len + 1];</font>
|
---|
831 | 01621 memcpy(ret, toRep, (len + 1) * <font class="keyword">sizeof</font>(XMLCh));
|
---|
832 | 01622 }
|
---|
833 | 01623 <font class="keywordflow">return</font> ret;
|
---|
834 | 01624 }
|
---|
835 | 01625
|
---|
836 | <a name="l01626"></a><a class="code" href="classXMLString.html#z519_1">01626</a> <font class="keyword">inline</font> <font class="keywordtype">bool</font> <a class="code" href="classXMLString.html#z519_0">XMLString::startsWith</a>( <font class="keyword">const</font> XMLCh* <font class="keyword">const</font> toTest
|
---|
837 | 01627 , <font class="keyword">const</font> XMLCh* <font class="keyword">const</font> prefix)
|
---|
838 | 01628 {
|
---|
839 | 01629 <font class="keywordflow">return</font> (<a class="code" href="classXMLString.html#z512_2">compareNString</a>(toTest, prefix, <a class="code" href="classXMLString.html#z519_8">stringLen</a>(prefix)) == 0);
|
---|
840 | 01630 }
|
---|
841 | 01631
|
---|
842 | <a name="l01632"></a><a class="code" href="classXMLString.html#z519_3">01632</a> <font class="keyword">inline</font> <font class="keywordtype">bool</font> <a class="code" href="classXMLString.html#z519_2">XMLString::startsWithI</a>( <font class="keyword">const</font> XMLCh* <font class="keyword">const</font> toTest
|
---|
843 | 01633 , <font class="keyword">const</font> XMLCh* <font class="keyword">const</font> prefix)
|
---|
844 | 01634 {
|
---|
845 | 01635 <font class="keywordflow">return</font> (<a class="code" href="classXMLString.html#z512_4">compareNIString</a>(toTest, prefix, <a class="code" href="classXMLString.html#z519_8">stringLen</a>(prefix)) == 0);
|
---|
846 | 01636 }
|
---|
847 | 01637
|
---|
848 | <a name="l01638"></a><a class="code" href="classXMLString.html#z519_4">01638</a> <font class="keyword">inline</font> <font class="keywordtype">bool</font> <a class="code" href="classXMLString.html#z519_4">XMLString::endsWith</a>(<font class="keyword">const</font> XMLCh* <font class="keyword">const</font> toTest,
|
---|
849 | 01639 <font class="keyword">const</font> XMLCh* <font class="keyword">const</font> suffix)
|
---|
850 | 01640 {
|
---|
851 | 01641
|
---|
852 | 01642 <font class="keywordtype">unsigned</font> <font class="keywordtype">int</font> suffixLen = <a class="code" href="classXMLString.html#z519_8">XMLString::stringLen</a>(suffix);
|
---|
853 | 01643
|
---|
854 | 01644 <font class="keywordflow">return</font> <a class="code" href="classXMLString.html#z512_10">regionMatches</a>(toTest, <a class="code" href="classXMLString.html#z519_8">XMLString::stringLen</a>(toTest) - suffixLen,
|
---|
855 | 01645 suffix, 0, suffixLen);
|
---|
856 | 01646 }
|
---|
857 | 01647
|
---|
858 | 01648 <font class="keyword">inline</font> <font class="keywordtype">bool</font> XMLString::validateRegion(<font class="keyword">const</font> XMLCh* <font class="keyword">const</font> str1,
|
---|
859 | 01649 <font class="keyword">const</font> <font class="keywordtype">int</font> offset1,
|
---|
860 | 01650 <font class="keyword">const</font> XMLCh* <font class="keyword">const</font> str2,
|
---|
861 | 01651 <font class="keyword">const</font> <font class="keywordtype">int</font> offset2,
|
---|
862 | 01652 <font class="keyword">const</font> <font class="keywordtype">unsigned</font> <font class="keywordtype">int</font> charCount)
|
---|
863 | 01653 {
|
---|
864 | 01654
|
---|
865 | 01655 <font class="keywordflow">if</font> (offset1 < 0 || offset2 < 0 ||
|
---|
866 | 01656 (offset1 + charCount) > <a class="code" href="classXMLString.html#z519_8">XMLString::stringLen</a>(str1) ||
|
---|
867 | 01657 (offset2 + charCount) > <a class="code" href="classXMLString.html#z519_8">XMLString::stringLen</a>(str2) )
|
---|
868 | 01658 <font class="keywordflow">return</font> <font class="keyword">false</font>;
|
---|
869 | 01659
|
---|
870 | 01660 <font class="keywordflow">return</font> <font class="keyword">true</font>;
|
---|
871 | 01661 }
|
---|
872 | 01662
|
---|
873 | <a name="l01663"></a><a class="code" href="classXMLString.html#z512_8">01663</a> <font class="keyword">inline</font> <font class="keywordtype">bool</font> <a class="code" href="classXMLString.html#z512_8">XMLString::equals</a>( <font class="keyword">const</font> XMLCh* <font class="keyword">const</font> str1
|
---|
874 | 01664 , <font class="keyword">const</font> XMLCh* <font class="keyword">const</font> str2)
|
---|
875 | 01665 {
|
---|
876 | 01666 <font class="keyword">const</font> XMLCh* psz1 = str1;
|
---|
877 | 01667 <font class="keyword">const</font> XMLCh* psz2 = str2;
|
---|
878 | 01668
|
---|
879 | 01669 <font class="keywordflow">if</font> (psz1 == 0 || psz2 == 0) {
|
---|
880 | 01670 <font class="keywordflow">if</font> ((psz1 != 0 && *psz1) || (psz2 != 0 && *psz2))
|
---|
881 | 01671 <font class="keywordflow">return</font> <font class="keyword">false</font>;
|
---|
882 | 01672 <font class="keywordflow">else</font>
|
---|
883 | 01673 <font class="keywordflow">return</font> <font class="keyword">true</font>;
|
---|
884 | 01674 }
|
---|
885 | 01675
|
---|
886 | 01676 <font class="keywordflow">while</font> (*psz1 == *psz2)
|
---|
887 | 01677 {
|
---|
888 | 01678 <font class="comment">// If either has ended, then they both ended, so equal</font>
|
---|
889 | 01679 <font class="keywordflow">if</font> (!*psz1)
|
---|
890 | 01680 <font class="keywordflow">return</font> <font class="keyword">true</font>;
|
---|
891 | 01681
|
---|
892 | 01682 <font class="comment">// Move upwards for the next round</font>
|
---|
893 | 01683 psz1++;
|
---|
894 | 01684 psz2++;
|
---|
895 | 01685 }
|
---|
896 | 01686 <font class="keywordflow">return</font> <font class="keyword">false</font>;
|
---|
897 | 01687 }
|
---|
898 | 01688
|
---|
899 | <a name="l01689"></a><a class="code" href="classXMLString.html#z512_9">01689</a> <font class="keyword">inline</font> <font class="keywordtype">bool</font> <a class="code" href="classXMLString.html#z512_8">XMLString::equals</a>( <font class="keyword">const</font> <font class="keywordtype">char</font>* <font class="keyword">const</font> str1
|
---|
900 | 01690 , <font class="keyword">const</font> <font class="keywordtype">char</font>* <font class="keyword">const</font> str2)
|
---|
901 | 01691 {
|
---|
902 | 01692 <font class="keyword">const</font> <font class="keywordtype">char</font>* psz1 = str1;
|
---|
903 | 01693 <font class="keyword">const</font> <font class="keywordtype">char</font>* psz2 = str2;
|
---|
904 | 01694
|
---|
905 | 01695 <font class="keywordflow">if</font> (psz1 == 0 || psz2 == 0) {
|
---|
906 | 01696 <font class="keywordflow">if</font> ((psz1 != 0 && *psz1) || (psz2 != 0 && *psz2))
|
---|
907 | 01697 <font class="keywordflow">return</font> <font class="keyword">false</font>;
|
---|
908 | 01698 <font class="keywordflow">else</font>
|
---|
909 | 01699 <font class="keywordflow">return</font> <font class="keyword">true</font>;
|
---|
910 | 01700 }
|
---|
911 | 01701
|
---|
912 | 01702 <font class="keywordflow">while</font> (*psz1 == *psz2)
|
---|
913 | 01703 {
|
---|
914 | 01704 <font class="comment">// If either has ended, then they both ended, so equal</font>
|
---|
915 | 01705 <font class="keywordflow">if</font> (!*psz1)
|
---|
916 | 01706 <font class="keywordflow">return</font> <font class="keyword">true</font>;
|
---|
917 | 01707
|
---|
918 | 01708 <font class="comment">// Move upwards for the next round</font>
|
---|
919 | 01709 psz1++;
|
---|
920 | 01710 psz2++;
|
---|
921 | 01711 }
|
---|
922 | 01712 <font class="keywordflow">return</font> <font class="keyword">false</font>;
|
---|
923 | 01713 }
|
---|
924 | 01714
|
---|
925 | <a name="l01715"></a><a class="code" href="classXMLString.html#z515_5">01715</a> <font class="keyword">inline</font> <font class="keywordtype">int</font> <a class="code" href="classXMLString.html#z515_4">XMLString::lastIndexOf</a>(<font class="keyword">const</font> XMLCh* <font class="keyword">const</font> toSearch, <font class="keyword">const</font> XMLCh ch)
|
---|
926 | 01716 {
|
---|
927 | 01717 <font class="keywordflow">return</font> <a class="code" href="classXMLString.html#z515_4">XMLString::lastIndexOf</a>(ch, toSearch, <a class="code" href="classXMLString.html#z519_8">stringLen</a>(toSearch));
|
---|
928 | 01718 }
|
---|
929 | 01719
|
---|
930 | 01720 <a class="code" href="XercesDefs_8hpp.html#a3">XERCES_CPP_NAMESPACE_END</a>
|
---|
931 | 01721
|
---|
932 | 01722 <font class="preprocessor">#endif</font>
|
---|
933 | </pre></div> </FONT></TD></TR></TABLE><BR>
|
---|
934 | </TD></TR></TABLE></TD></TR></TABLE><BR><TABLE border="0" cellpadding="0" cellspacing="0" width="620"><TR><TD bgcolor="#0086b2"><IMG height="1" src="images/dot.gif" width="1" alt=""></TD></TR><TR><TD align="center"><FONT color="#0086b2" size="-1"><I>
|
---|
935 | Copyright © 1994-2004 The Apache Software Foundation.
|
---|
936 | All Rights Reserved.
|
---|
937 | </I></FONT></TD></TR></TABLE></BODY></HTML>
|
---|