(file) Return to String.h CVS log (file) (dir) Up to [Pegasus] / pegasus / src / Pegasus / Common

  1 karl  1.87 //%2005////////////////////////////////////////////////////////////////////////
  2 mike  1.38 //
  3 karl  1.86 // Copyright (c) 2000, 2001, 2002 BMC Software; Hewlett-Packard Development
  4            // Company, L.P.; IBM Corp.; The Open Group; Tivoli Systems.
  5            // Copyright (c) 2003 BMC Software; Hewlett-Packard Development Company, L.P.;
  6 karl  1.78 // IBM Corp.; EMC Corporation, The Open Group.
  7 karl  1.86 // Copyright (c) 2004 BMC Software; Hewlett-Packard Development Company, L.P.;
  8            // IBM Corp.; EMC Corporation; VERITAS Software Corporation; The Open Group.
  9 karl  1.87 // Copyright (c) 2005 Hewlett-Packard Development Company, L.P.; IBM Corp.;
 10            // EMC Corporation; VERITAS Software Corporation; The Open Group.
 11 mike  1.38 //
 12            // Permission is hereby granted, free of charge, to any person obtaining a copy
 13 kumpf 1.50 // of this software and associated documentation files (the "Software"), to
 14            // deal in the Software without restriction, including without limitation the
 15            // rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
 16 mike  1.38 // sell copies of the Software, and to permit persons to whom the Software is
 17            // furnished to do so, subject to the following conditions:
 18            // 
 19 kumpf 1.50 // THE ABOVE COPYRIGHT NOTICE AND THIS PERMISSION NOTICE SHALL BE INCLUDED IN
 20 mike  1.38 // ALL COPIES OR SUBSTANTIAL PORTIONS OF THE SOFTWARE. THE SOFTWARE IS PROVIDED
 21            // "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT
 22 kumpf 1.50 // LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
 23            // PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
 24            // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
 25 mike  1.38 // ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
 26            // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 27            //
 28            //==============================================================================
 29            //
 30            //%/////////////////////////////////////////////////////////////////////////////
 31            
 32            #ifndef Pegasus_String_h
 33            #define Pegasus_String_h
 34            
 35 kumpf 1.71 #ifdef PEGASUS_OS_HPUX
 36 kumpf 1.72 # ifdef HPUX_IA64_NATIVE_COMPILER
 37            #  include <iostream>
 38            # else
 39            #  include <iostream.h>
 40            # endif
 41 kumpf 1.71 #else
 42            # include <iostream>
 43            #endif
 44 mike  1.38 #include <Pegasus/Common/Config.h>
 45            #include <Pegasus/Common/Char16.h>
 46 kumpf 1.54 #include <Pegasus/Common/Linkage.h>
 47 mike  1.38 
 48 david 1.81 // Locale constants
 49            // These constants need to be defined as follows:
 50            // lower case language; underscore; Uppercase Country
 51            const char ENGLISH_US[] = "en_US";
 52             
 53 david 1.76 
 54 mike  1.38 PEGASUS_NAMESPACE_BEGIN
 55            
 56 kumpf 1.59 class String;
 57 kumpf 1.51 class StringRep;
 58            
 59 kumpf 1.59 /** The CString class provides access to an 8-bit String representation.
 60            */
 61 kumpf 1.60 class PEGASUS_COMMON_LINKAGE CString
 62 kumpf 1.59 {
 63            public:
 64            
 65 karl  1.79     /** Constructs a CString object with null values (default constructor).
 66                */
 67 kumpf 1.59     CString();
 68            
 69 karl  1.79     /** REVIEWERS: Describe method here.
 70                @param cstr Specifies the name of the CString instance.
 71                */
 72 kumpf 1.59     CString(const CString& cstr);
 73            
 74 karl  1.79     /** CString destructor.
 75                */
 76 kumpf 1.59     ~CString();
 77            
 78 karl  1.79     /** Assigns the values of one CString instance to another.
 79                @param cstr Specifies the name of the CString instance whose values 
 80                are assigned to CString.
 81                */
 82 kumpf 1.62     CString& operator=(const CString& cstr);
 83            
 84 karl  1.79     /** REVIEWERS: Describe constructor here.
 85                */
 86 kumpf 1.59     operator const char*() const;
 87            
 88            private:
 89            
 90                CString(char* cstr);
 91            
 92                friend class String;
 93            
 94 kumpf 1.64     void* _rep;
 95 kumpf 1.59 };
 96            
 97 mike  1.38 /**
 98                The Pegasus String C++ Class implements the CIM string type.
 99 karl  1.79     REVIEWERS: We need more definition here.
100 mike  1.38 */
101            class PEGASUS_COMMON_LINKAGE String
102            {
103            public:
104            
105 kumpf 1.74     /**	This member is used to represent an empty string. Using this 
106 karl  1.79         member avoids construction of an empty string (for example, String()).
107 kumpf 1.48     */
108                static const String EMPTY;
109            
110 mike  1.38     /** Default constructor without parameters. This constructor creates a
111 karl  1.79 	null string. For example, 
112 mike  1.38 	<pre>
113            	    String test;
114            	</pre>
115                */
116                String();
117            
118 karl  1.79     /** Copy constructor.
119                @param str Specifies the name of the String instance.
120                */
121 kumpf 1.48     String(const String& str);
122 mike  1.38 
123 karl  1.79     /** Initialize with first n characters from str.
124                @param str Specifies the name of the String instance.
125                @param n Specifies the Uint32 size to use for the length of the string object.
126                */
127 kumpf 1.48     String(const String& str, Uint32 n);
128 mike  1.38 
129 karl  1.79     /** Initialize with str.
130                @param str Specifies the name of the String instance.
131                */
132 kumpf 1.48     String(const Char16* str);
133 mike  1.38 
134 karl  1.79     /** Initialize with first n characters of str.
135                @param str Specifies the name of the String instance.
136                @param n Specifies the Uint32 size.
137                */
138 kumpf 1.48     String(const Char16* str, Uint32 n);
139 mike  1.38 
140 karl  1.79     /** Initialize from a plain C-String:
141                @param str Specifies the name of the String instance.
142 david 1.81     API supports UTF8
143 karl  1.79     */
144 kumpf 1.48     String(const char* str);
145 chuck 1.77 
146 karl  1.79     /** Initialize from the first n characters of a plain C-String:
147                @param str Specifies the name of the String instance.
148                @param u Specifies the Uint32 size.
149 david 1.81     API supports UTF8
150 karl  1.79     */
151 kumpf 1.48     String(const char* str, Uint32 n);
152 mike  1.38 
153 karl  1.79     /** String destructor. 
154                */
155 mike  1.38     ~String();
156            
157 karl  1.79     /** Assign this string with str. For example,
158 mike  1.38 	<pre>
159            	    String t1 = "abc";
160            	    String t2 = t1;
161            	</pre>
162 karl  1.79 	String t2 is assigned the value of t1.
163                    @param str Specifies the name of the String to assign to another 
164                    String instance.
165 mike  1.38     */
166 kumpf 1.48     String& operator=(const String& str);
167 mike  1.38 
168 kumpf 1.74     /** Assign this string with String str.
169                    @param str String to assign.
170                    @return Returns the String.
171 david 1.81         API supports UTF8
172 mike  1.38     */
173 kumpf 1.48     String& assign(const String& str);
174 mike  1.38 
175 karl  1.79     /** Assign this string with str.
176                */
177 kumpf 1.48     String& assign(const Char16* str);
178 mike  1.38 
179 karl  1.79     /** Assign this string with first n characters of str.
180                @param n REVIEWERS: Insert text here.
181                @param str REVIEWERS: Insert text here.
182                */
183 kumpf 1.48     String& assign(const Char16* str, Uint32 n);
184 mike  1.38 
185 karl  1.79     /** Assign this string with the plain C-String str.
186                @param str REVIEWERS: Insert text here.
187 david 1.81     API supports UTF8
188 karl  1.79     */
189 kumpf 1.48     String& assign(const char* str);
190 mike  1.38 
191 karl  1.79     /** Assign this string with first n characters of the plain C-String str.
192                @param str REVIEWERS: Insert text here.
193                @param n REVIEWERS: Insert text here.
194 david 1.81     API supports UTF8
195 karl  1.79     */
196 kumpf 1.48     String& assign(const char* str, Uint32 n);
197 mike  1.38 
198 kumpf 1.74     /** Clear this string. After calling clear(), size() will return 0.
199 mike  1.38 	<pre>
200            	    String test = "abc";
201 kumpf 1.74 	    test.clear();
202 mike  1.38 	</pre>
203                */
204                void clear();
205            
206            
207 kumpf 1.74     /** Reserves memory for capacity characters. Notice
208 kumpf 1.53         that this does not change the size of the string (size() returns
209                    what it did before).  If the capacity of the string is already
210                    greater or equal to the capacity argument, this method has no
211                    effect.  The capacity of a String object has no bearing on its
212                    external behavior.  The capacity of a String is set only for
213                    performance reasons.
214 karl  1.79 	@param capacity Defines the capacity in characters to reserve.
215 mike  1.38     */
216 kumpf 1.51     void reserveCapacity(Uint32 capacity);
217 mike  1.38 
218                /** Returns the length of the String object.
219 karl  1.79 	@return Length of the String in characters. For example, 
220 mike  1.38 	<pre>
221            	    String s = "abcd";
222            	    assert(s.size() == 4);
223            	</pre>
224 karl  1.79         returns a value of 4 for the length.
225 mike  1.38     */
226 kumpf 1.48     Uint32 size() const;
227 mike  1.38 
228 kumpf 1.74     /** Returns a pointer to the first character in the 
229 kumpf 1.61 	null-terminated Char16 buffer of the String object.
230 karl  1.79 	@return	Pointer to the first character of the String object. For example, 
231 mike  1.38     	<pre>
232 kumpf 1.74 	    String test = "abc";
233            	    const Char16* q = test.getChar16Data();
234 mike  1.38 	</pre>
235 karl  1.79         points to the first character in the String instance named test.
236 mike  1.38     */
237 kumpf 1.61     const Char16* getChar16Data() const;
238 mike  1.38 
239 karl  1.79     /** Create an 8-bit representation of this String object. For example,
240 kumpf 1.59 
241 david 1.81         @return CString object that provides access to the UTF8 String
242 kumpf 1.74         representation.
243 kumpf 1.59 
244 mike  1.38 	<pre>
245            	    String test = "abc";
246 kumpf 1.59             printf("test = %s\n", (const char*)test.getCString());
247 chuck 1.75 
248                        NOTE:  Do not do the following:
249                        const char * p = (const char *)test.getCString();
250                        The pointer p will be invalid.  This is because
251                        the CString object is destructed, which deletes
252                        the heap space for p.
253 mike  1.38 	</pre>
254                */
255 kumpf 1.59     CString getCString() const;
256 mike  1.38 
257 kumpf 1.58     /** Returns the specified character of the String object.
258 kumpf 1.74 	@param index Index of the character to access.
259 karl  1.79         @return Specified character of the String object.
260            	@exception IndexOutOfBoundsException If the index
261 kumpf 1.58 	is outside the bounds of the String.
262 mike  1.38 	<pre>
263 kumpf 1.74 	    String test = "abc;
264            	    Char16 c = test[1];
265 mike  1.38 	</pre>
266                */
267 kumpf 1.58     Char16& operator[](Uint32 index);
268 mike  1.38 
269 kumpf 1.58     /** Returns the specified character of the String object (const version).
270 kumpf 1.74 	@param index Index of the character to access.
271 karl  1.79         @return Specified character of the String object.
272            	@exception IndexOutOfBoundsException If the index
273 kumpf 1.58 	is outside the bounds of the String.
274 mike  1.38     */
275 kumpf 1.58     const Char16 operator[](Uint32 index) const;
276 mike  1.38 
277 kumpf 1.57     /** Append the given character to this String.
278            	@param c Character to append.
279 kumpf 1.74 	@return This String.
280 kumpf 1.57 	<pre>
281 kumpf 1.74 	    String test = "abc";
282            	    test.append(Char16('d'));
283            	    assert(test == "abcd");
284 mike  1.38 	</pre>
285                */
286                String& append(const Char16& c);
287            
288 karl  1.79     /** Append n characters from str to this String.
289                @param str REVIEWERS: Insert text here.
290                @param n REVIEWERS: Insert text here.
291                */
292 mike  1.38     String& append(const Char16* str, Uint32 n);
293            
294 kumpf 1.57     /** Append the given String to this String.
295            	@param str String to append.
296 kumpf 1.74 	@return This String.
297 mike  1.38 	<pre>
298            	String test = "abc";
299 kumpf 1.57 	test.append("def");
300 mike  1.38 	assert(test == "abcdef");
301            	</pre>
302                */
303 kumpf 1.57     String& append(const String& str);
304 mike  1.38 
305                /** Remove size characters from the string starting at the given
306 kumpf 1.58 	index. If size is PEG_NOT_FOUND, then all characters after index are
307 mike  1.38 	removed.
308 kumpf 1.74 	@param index Position in string to start remove.
309 mike  1.38 	@param size Number of characters to remove. Default is PEG_NOT_FOUND
310 kumpf 1.74 	which causes all characters after index to be removed.
311 mike  1.38 	<pre>
312            	    String s;
313            	    s = "abc";
314            	    s.remove(0, 1);
315            	    assert(String::equal(s, "bc"));
316            	    assert(s.size() == 2);
317            	    s.remove(0);
318            	    assert(String::equal(s, ""));
319            	    assert(s.size() == 0);
320            	</pre>
321 karl  1.79 	@exception IndexOutOfBoundsException If size is greater than
322 kumpf 1.58 	length of String plus starting index for remove.
323 mike  1.38     */
324 kumpf 1.58     void remove(Uint32 index, Uint32 size = PEG_NOT_FOUND);
325 mike  1.38 
326                /** Return a new String which is initialzed with <TT>length</TT>
327 kumpf 1.58 	characters from this string starting at <TT>index</TT>.
328 karl  1.79 	@param index Specifies the index in string to start getting the
329 mike  1.38 	substring.
330 karl  1.79 	@param length Specifies the number of characters to get. If length
331 kumpf 1.58 	is PEG_NOT_FOUND, then all characters after index are added to the new
332 mike  1.38 	string.
333 karl  1.79 	@return String Specifies the Sting with the defined substring.
334 mike  1.38     */
335 kumpf 1.58     String subString(Uint32 index, Uint32 length = PEG_NOT_FOUND) const;
336 mike  1.38 
337 karl  1.79     /** Find the index of the first occurrence of the character c.
338 mike  1.38 	If the character is not found, PEG_NOT_FOUND is returned.
339 kumpf 1.74 	@param c Char to be found in the String.
340 mike  1.38 	@return Position of the character in the string or PEG_NOT_FOUND if not
341            	found.
342                */
343                Uint32 find(Char16 c) const;
344            
345 karl  1.79     /** Find the index of the first occurence of the character c.
346            	If the character is not found, PEG_NOT_FOUND is returned.
347                    This begins searching from the given index. 
348            	@param c Char to be found in the String.
349            	@return Position of the character in the string or PEG_NOT_FOUND if not
350            	found.
351 kumpf 1.74     */
352 kumpf 1.58     Uint32 find(Uint32 index, Char16 c) const;
353 mike  1.38 
354 kumpf 1.58     /** Find the index of the first occurence of the string object.
355 kumpf 1.74 	This function finds one string inside another.
356 mike  1.38 	If the matching substring is not found, PEG_NOT_FOUND is returned.
357 kumpf 1.74 	@param s String object to be found in the String.
358 mike  1.38 	@return Position of the substring in the String or PEG_NOT_FOUND if not
359            	found.
360                */
361                Uint32 find(const String& s) const;
362            
363 kumpf 1.74     /** Same as find() but start looking in reverse (last character first).
364 mike  1.38     	@param c Char16 character to find in String.
365            	@return Position of the character in the string or PEG_NOT_FOUND if not
366            	found.
367                */
368                Uint32 reverseFind(Char16 c) const;
369            
370 david 1.81     /** Converts all characters in this string to lowercase characters,
371                    ICU    : Operation will use default locale or the locale provided
372                    NON ICU: Operattion will use c runtime function
373                */
374                void toLower();
375            #ifdef PEGASUS_USE_EXPERIMENTAL_INTERFACES
376 denise.eckstein 1.85     /** <I><B>Experimental Interface</B></I><BR>
377                              @param strLocale const char * is the locale to use for the operation.
378 david           1.81                If NULL will use the default locale for the process.
379                              Refer to Locale constants for formating.
380                          */
381                          void toLower(const char * strLocale);
382                      #endif
383                      
384 denise.eckstein 1.85 #ifdef PEGASUS_USE_EXPERIMENTAL_INTERFACES
385                          /** <I><B>Experimental Interface</B></I><BR>
386                              Converts all characters in this string to uppercase characters.
387 david           1.81         @param strLocale const char * is the locale to use for the operation.
388                                     If NULL will use the default locale for the process.
389                              ICU    : Operation will use default locale or the locale provided
390                              NON ICU: Operattion will use c runtime function 
391                              Refer to Locale constants for formating.   
392 mike            1.38     */
393 david           1.81     void toUpper(const char * strLocale = NULL);
394                      #endif
395 kumpf           1.48 
396 karl            1.79     /** Compare the first n characters of the two strings.
397 mike            1.38     	@param s1 First null-terminated string for the comparison.
398                      	@param s2 Second null-terminated string for the comparison.
399                      	@param n Number of characters to compare.
400 karl            1.79 	@return Return -1 If s1 is lexographically less than s2; if they are
401                      	equivalent return 0; otherwise return 1.
402 mike            1.38     */
403 kumpf           1.51     static int compare(const String& s1, const String& s2, Uint32 n);
404 mike            1.38 
405                          /** Compare two null-terminated strings.
406                          	@param s1 First null-terminated string for the comparison.
407                      	@param s2 Second null-terminated string for the comparison.
408 kumpf           1.74 	@return Return -1 if s1 is less than s2; if equal return 0;
409                      	otherwise return 1.
410 mike            1.38 
411                      	NOTE: Use the comparison operators <,<= > >= to compare
412                      	String objects.
413                          */
414 kumpf           1.51     static int compare(const String& s1, const String& s2);
415 mike            1.38 
416 karl            1.79     /** Compare two null-terminated strings but ignore case.
417                              @param s1 First null-terminated string for the comparison.
418                      	@param s2 Second null-terminated string for the comparison.
419                      	@return Return -1 if s1 is less than s2; if equal return 0;
420                      	otherwise return 1.
421                      
422                      	NOTE: Use the comparison operators <,<= > >= to compare
423                      	String objects.
424 david           1.81         ICU    : Operation will use default locale or the locale provided
425                              NON ICU: Operattion will use c runtime function
426 kumpf           1.48     */
427 kumpf           1.49     static int compareNoCase(const String& s1, const String& s2);
428 david           1.81 #ifdef PEGASUS_USE_EXPERIMENTAL_INTERFACES
429 denise.eckstein 1.85     /** <I><B>Experimental Interface</B></I><BR>
430                              @param strLocale const char * is the locale to use for the operation.
431 david           1.81                If NULL will use the default locale for the process.
432                              Refer to Locale constants for formating.
433                          */
434                          static int compareNoCase(const String& s1, const String& s2, const char * strLocale);
435                      #endif
436 kumpf           1.48 
437 mike            1.38     /** Compare two String objects for equality.
438                      	@param s1 First <TT>String</TT> for comparison.
439                      	@param s2 Second <TT>String</TT> for comparison.
440                      
441 karl            1.79 	@return true If the two strings are equal; otherwise, false. For example, 
442 mike            1.38 	<pre>
443                      	    String s1 = "Hello World";
444                      	    String s2 = s1;
445                      	    String s3(s2);
446                      	    assert(String::equal(s1, s3));
447                      	</pre>
448                          */
449 kumpf           1.48     static Boolean equal(const String& str1, const String& str2);
450 mike            1.38 
451 kumpf           1.74     /** Compares two strings and returns true if they
452                      	are equal indepedent of case of the characters.
453                      	@param str1 First String parameter.
454                      	@param str2 Second String parameter.
455 karl            1.79 	@return true If strings are equal independent of case, flase
456 kumpf           1.74         otherwise.
457 david           1.81 
458                              ICU    : Operation will use default locale or the locale provided
459                              NON ICU: Operation will use c runtime function
460 karl            1.47     */
461 kumpf           1.48     static Boolean equalNoCase(const String& str1, const String& str2);
462 david           1.81 #ifdef PEGASUS_USE_EXPERIMENTAL_INTERFACES
463 denise.eckstein 1.85     /** <I><B>Experimental Interface</B></I><BR>
464                              @param strLocale const char * is the locale to use for the operation.
465 david           1.81                If NULL will use the default locale for the process.
466                              Refer to Locale constants for formating.
467                          */
468                          static Boolean equalNoCase(const String& str1, const String& str2, const char * strLocale);
469                      #endif
470 david           1.76 
471 mike            1.38 private:
472                      
473 kumpf           1.51     StringRep* _rep;
474 mike            1.38 };
475 mike            1.40 
476 karl            1.79 /** String operator == tests for equality between two strings of any of the
477 mike            1.38     types String or char*.
478 karl            1.79     @return true If the strings are equal; otherwise, false.
479                          @param str1 REVIEWERS: Insert description here.
480                          @param str2 REVIEWERS: Insert description here.
481 mike            1.38 */
482 kumpf           1.48 PEGASUS_COMMON_LINKAGE Boolean operator==(
483                          const String& str1,
484                          const String& str2);
485 mike            1.38 
486 kumpf           1.74 /** String operator ==. Test for equality between two strings.
487 karl            1.79     @param str1 REVIEWERS: Insert description here.
488                          @param str2 REVIEWERS: Insert description here.
489 mike            1.38 */
490 kumpf           1.48 PEGASUS_COMMON_LINKAGE Boolean operator==(const String& str1, const char* str2);
491 mike            1.38 
492 kumpf           1.74 /** String operator ==. Test for equality between two strings.
493 karl            1.79     @param str1 REVIEWERS: Insert description here.
494                          @param str2 REVIEWERS: Insert description here.
495 mike            1.38 */
496 kumpf           1.48 PEGASUS_COMMON_LINKAGE Boolean operator==(const char* str1, const String& str2);
497 mike            1.38 
498 kumpf           1.74 /** String operator ==. Test for equality between two strings.
499 karl            1.79     @param str1 REVIEWERS: Insert description here.
500                          @param str2 REVIEWERS: Insert description here.
501 mike            1.38 */
502 kumpf           1.48 PEGASUS_COMMON_LINKAGE Boolean operator!=(
503                          const String& str1,
504                          const String& str2);
505 mike            1.38 
506 karl            1.79 /** REVIEWERS: Insert description here.
507                          @param str REVIEWERS: Insert description here.
508                          @param os REVIEWERS: Insert description here.
509                      */
510 mike            1.38 PEGASUS_COMMON_LINKAGE PEGASUS_STD(ostream)& operator<<(
511                          PEGASUS_STD(ostream)& os,
512 kumpf           1.48     const String& str);
513 mike            1.38 
514 karl            1.79 /** This overload operator (+) concatenates String objects. For example, 
515 mike            1.38     <pre>
516                      	String t1 = "abc";
517                      	String t2;
518                      	t2 = t1 + "def"
519                      	assert(t2 == "abcdef");
520                          </pre>
521                      */
522 kumpf           1.48 PEGASUS_COMMON_LINKAGE String operator+(const String& str1, const String& str2);
523 mike            1.38 
524 karl            1.79 /** The overload operator (<) compares String obects.
525 mike            1.38     <pre>
526                      	String t1 = "def";
527                      	String t2 = "a";
528                      	assert (t2 < t1);
529                          </pre>
530 karl            1.79     @param str1 REVIEWERS: Insert description here.
531                          @param str2 REVIEWERS: Insert description here.
532 mike            1.38 */
533 kumpf           1.48 PEGASUS_COMMON_LINKAGE Boolean operator<(
534                          const String& str1,
535                          const String& str2);
536 mike            1.38 
537 karl            1.79 /** The overload operator (<=) compares String objects.
538                          @param str1 REVIEWERS: Insert description here.
539                          @param str2 REVIEWERS: Insert description here.
540 mike            1.38 */
541 kumpf           1.48 PEGASUS_COMMON_LINKAGE Boolean operator<=(
542                          const String& str1,
543                          const String& str2);
544 mike            1.38 
545 karl            1.79 /** The overload operator (>) compares String objects.
546                          @param str1 REVIEWERS: Insert description here.
547                          @param str2 REVIEWERS: Insert description here.
548 mike            1.38 */
549 kumpf           1.48 PEGASUS_COMMON_LINKAGE Boolean operator>(
550                          const String& str1,
551                          const String& str2);
552 mike            1.38 
553 karl            1.79 /** The overload operator (>=) compares String objects.
554                          @param str1 REVIEWERS: Insert description here.
555                          @param str2 REVIEWERS: Insert description here.
556 mike            1.38 */
557 kumpf           1.48 PEGASUS_COMMON_LINKAGE Boolean operator>=(
558                          const String& str1,
559                          const String& str2);
560 mike            1.38 
561                      PEGASUS_NAMESPACE_END
562                      
563                      #endif /* Pegasus_String_h */

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2