X-Git-Url: https://git.saurik.com/apple/icu.git/blobdiff_plain/f3c0d7a59d99c2a94c6b8822291f0e42be3773c9..3d1f044b704633e2e541231cd17ae9ecf9ad5c7a:/icuSources/common/unicode/unistr.h
diff --git a/icuSources/common/unicode/unistr.h b/icuSources/common/unicode/unistr.h
index 1a8f74f9..55739ac2 100644
--- a/icuSources/common/unicode/unistr.h
+++ b/icuSources/common/unicode/unistr.h
@@ -38,16 +38,6 @@
struct UConverter; // unicode/ucnv.h
-#ifndef U_COMPARE_CODE_POINT_ORDER
-/* see also ustring.h and unorm.h */
-/**
- * Option bit for u_strCaseCompare, u_strcasecmp, unorm_compare, etc:
- * Compare strings in code point order instead of code unit order.
- * @stable ICU 2.2
- */
-#define U_COMPARE_CODE_POINT_ORDER 0x8000
-#endif
-
#ifndef USTRING_H
/**
* \ingroup ustring_ustrlen
@@ -121,7 +111,7 @@ class UnicodeStringAppendable; // unicode/appendable.h
*
* The string parameter must be a C string literal.
* The length of the string, not including the terminating
- * NUL
, must be specified as a constant.
+ * `NUL`, must be specified as a constant.
* @stable ICU 2.0
*/
#if !U_CHAR16_IS_TYPEDEF
@@ -236,32 +226,35 @@ class UnicodeStringAppendable; // unicode/appendable.h
*
* The UnicodeString class is not suitable for subclassing.
*
- *
For an overview of Unicode strings in C and C++ see the - * User Guide Strings chapter.
+ * For an overview of Unicode strings in C and C++ see the + * [User Guide Strings chapter](http://userguide.icu-project.org/strings#TOC-Strings-in-C-C-). * - *In ICU, a Unicode string consists of 16-bit Unicode code units. + * In ICU, a Unicode string consists of 16-bit Unicode *code units*. * A Unicode character may be stored with either one code unit * (the most common case) or with a matched pair of special code units * ("surrogates"). The data type for code units is char16_t. - * For single-character handling, a Unicode character code point is a value - * in the range 0..0x10ffff. ICU uses the UChar32 type for code points.
+ * For single-character handling, a Unicode character code *point* is a value + * in the range 0..0x10ffff. ICU uses the UChar32 type for code points. * - *Indexes and offsets into and lengths of strings always count code units, not code points. + * Indexes and offsets into and lengths of strings always count code units, not code points. * This is the same as with multi-byte char* strings in traditional string handling. * Operations on partial strings typically do not test for code point boundaries. * If necessary, the user needs to take care of such boundaries by testing for the code unit * values or by using functions like * UnicodeString::getChar32Start() and UnicodeString::getChar32Limit() - * (or, in C, the equivalent macros U16_SET_CP_START() and U16_SET_CP_LIMIT(), see utf.h).
+ * (or, in C, the equivalent macros U16_SET_CP_START() and U16_SET_CP_LIMIT(), see utf.h). * * UnicodeString methods are more lenient with regard to input parameter values * than other ICU APIs. In particular: * - If indexes are out of bounds for a UnicodeString object - * (<0 or >length()) then they are "pinned" to the nearest boundary. + * (< 0 or > length()) then they are "pinned" to the nearest boundary. + * - If the buffer passed to an insert/append/replace operation is owned by the + * target object, e.g., calling str.append(str), an extra copy may take place + * to ensure safety. * - If primitive string pointer values (e.g., const char16_t * or char *) * for input strings are NULL, then those input string parameters are treated * as if they pointed to an empty string. - * However, this is not the case for char * parameters for charset names + * However, this is *not* the case for char * parameters for charset names * or other IDs. * - Most UnicodeString methods do not take a UErrorCode parameter because * there are usually very few opportunities for failure other than a shortage @@ -285,14 +278,14 @@ class UnicodeStringAppendable; // unicode/appendable.h * This includes the const UnicodeString & parameters for * copy construction, assignment, and cloning. * - *UnicodeString uses several storage methods. + * UnicodeString uses several storage methods. * String contents can be stored inside the UnicodeString object itself, * in an allocated and shared buffer, or in an outside buffer that is "aliased". * Most of this is done transparently, but careful aliasing in particular provides * significant performance improvements. * Also, the internal buffer is accessible via special functions. * For details see the - * User Guide Strings chapter.
+ * [User Guide Strings chapter](http://userguide.icu-project.org/strings#TOC-Maximizing-Performance-with-the-UnicodeString-Storage-Model). * * @see utf.h * @see CharacterIterator @@ -327,7 +320,7 @@ public: /** * Equality operator. Performs only bitwise comparison. * @param text The UnicodeString to compare to this one. - * @return TRUE if text contains the same characters as this one, + * @return TRUE if `text` contains the same characters as this one, * FALSE otherwise. * @stable ICU 2.0 */ @@ -336,7 +329,7 @@ public: /** * Inequality operator. Performs only bitwise comparison. * @param text The UnicodeString to compare to this one. - * @return FALSE if text contains the same characters as this one, + * @return FALSE if `text` contains the same characters as this one, * TRUE otherwise. * @stable ICU 2.0 */ @@ -346,7 +339,7 @@ public: * Greater than operator. Performs only bitwise comparison. * @param text The UnicodeString to compare to this one. * @return TRUE if the characters in this are bitwise - * greater than the characters intext
, FALSE otherwise
+ * greater than the characters in `text`, FALSE otherwise
* @stable ICU 2.0
*/
inline UBool operator> (const UnicodeString& text) const;
@@ -355,7 +348,7 @@ public:
* Less than operator. Performs only bitwise comparison.
* @param text The UnicodeString to compare to this one.
* @return TRUE if the characters in this are bitwise
- * less than the characters in text
, FALSE otherwise
+ * less than the characters in `text`, FALSE otherwise
* @stable ICU 2.0
*/
inline UBool operator< (const UnicodeString& text) const;
@@ -364,7 +357,7 @@ public:
* Greater than or equal operator. Performs only bitwise comparison.
* @param text The UnicodeString to compare to this one.
* @return TRUE if the characters in this are bitwise
- * greater than or equal to the characters in text
, FALSE otherwise
+ * greater than or equal to the characters in `text`, FALSE otherwise
* @stable ICU 2.0
*/
inline UBool operator>= (const UnicodeString& text) const;
@@ -373,37 +366,37 @@ public:
* Less than or equal operator. Performs only bitwise comparison.
* @param text The UnicodeString to compare to this one.
* @return TRUE if the characters in this are bitwise
- * less than or equal to the characters in text
, FALSE otherwise
+ * less than or equal to the characters in `text`, FALSE otherwise
* @stable ICU 2.0
*/
inline UBool operator<= (const UnicodeString& text) const;
/**
* Compare the characters bitwise in this UnicodeString to
- * the characters in text
.
+ * the characters in `text`.
* @param text The UnicodeString to compare to this one.
* @return The result of bitwise character comparison: 0 if this
- * contains the same characters as text
, -1 if the characters in
- * this are bitwise less than the characters in text
, +1 if the
+ * contains the same characters as `text`, -1 if the characters in
+ * this are bitwise less than the characters in `text`, +1 if the
* characters in this are bitwise greater than the characters
- * in text
.
+ * in `text`.
* @stable ICU 2.0
*/
inline int8_t compare(const UnicodeString& text) const;
/**
* Compare the characters bitwise in the range
- * [start, start + length) with the characters
- * in the entire string text.
+ * [`start`, `start + length`) with the characters
+ * in the **entire string** `text`.
* (The parameters "start" and "length" are not applied to the other text "text".)
* @param start the offset at which the compare operation begins
* @param length the number of characters of text to compare.
* @param text the other text to be compared against this string.
* @return The result of bitwise character comparison: 0 if this
- * contains the same characters as text
, -1 if the characters in
- * this are bitwise less than the characters in text
, +1 if the
+ * contains the same characters as `text`, -1 if the characters in
+ * this are bitwise less than the characters in `text`, +1 if the
* characters in this are bitwise greater than the characters
- * in text
.
+ * in `text`.
* @stable ICU 2.0
*/
inline int8_t compare(int32_t start,
@@ -412,19 +405,19 @@ public:
/**
* Compare the characters bitwise in the range
- * [start, start + length) with the characters
- * in srcText in the range
- * [srcStart, srcStart + srcLength).
+ * [`start`, `start + length`) with the characters
+ * in `srcText` in the range
+ * [`srcStart`, `srcStart + srcLength`).
* @param start the offset at which the compare operation begins
* @param length the number of characters in this to compare.
* @param srcText the text to be compared
- * @param srcStart the offset into srcText to start comparison
- * @param srcLength the number of characters in src to compare
+ * @param srcStart the offset into `srcText` to start comparison
+ * @param srcLength the number of characters in `src` to compare
* @return The result of bitwise character comparison: 0 if this
- * contains the same characters as srcText
, -1 if the characters in
- * this are bitwise less than the characters in srcText
, +1 if the
+ * contains the same characters as `srcText`, -1 if the characters in
+ * this are bitwise less than the characters in `srcText`, +1 if the
* characters in this are bitwise greater than the characters
- * in srcText
.
+ * in `srcText`.
* @stable ICU 2.0
*/
inline int8_t compare(int32_t start,
@@ -435,14 +428,14 @@ public:
/**
* Compare the characters bitwise in this UnicodeString with the first
- * srcLength characters in srcChars.
+ * `srcLength` characters in `srcChars`.
* @param srcChars The characters to compare to this UnicodeString.
- * @param srcLength the number of characters in srcChars to compare
+ * @param srcLength the number of characters in `srcChars` to compare
* @return The result of bitwise character comparison: 0 if this
- * contains the same characters as srcChars
, -1 if the characters in
- * this are bitwise less than the characters in srcChars
, +1 if the
+ * contains the same characters as `srcChars`, -1 if the characters in
+ * this are bitwise less than the characters in `srcChars`, +1 if the
* characters in this are bitwise greater than the characters
- * in srcChars
.
+ * in `srcChars`.
* @stable ICU 2.0
*/
inline int8_t compare(ConstChar16Ptr srcChars,
@@ -450,16 +443,16 @@ public:
/**
* Compare the characters bitwise in the range
- * [start, start + length) with the first
- * length characters in srcChars
+ * [`start`, `start + length`) with the first
+ * `length` characters in `srcChars`
* @param start the offset at which the compare operation begins
* @param length the number of characters to compare.
* @param srcChars the characters to be compared
* @return The result of bitwise character comparison: 0 if this
- * contains the same characters as srcChars
, -1 if the characters in
- * this are bitwise less than the characters in srcChars
, +1 if the
+ * contains the same characters as `srcChars`, -1 if the characters in
+ * this are bitwise less than the characters in `srcChars`, +1 if the
* characters in this are bitwise greater than the characters
- * in srcChars
.
+ * in `srcChars`.
* @stable ICU 2.0
*/
inline int8_t compare(int32_t start,
@@ -468,19 +461,19 @@ public:
/**
* Compare the characters bitwise in the range
- * [start, start + length) with the characters
- * in srcChars in the range
- * [srcStart, srcStart + srcLength).
+ * [`start`, `start + length`) with the characters
+ * in `srcChars` in the range
+ * [`srcStart`, `srcStart + srcLength`).
* @param start the offset at which the compare operation begins
* @param length the number of characters in this to compare
* @param srcChars the characters to be compared
- * @param srcStart the offset into srcChars to start comparison
- * @param srcLength the number of characters in srcChars to compare
+ * @param srcStart the offset into `srcChars` to start comparison
+ * @param srcLength the number of characters in `srcChars` to compare
* @return The result of bitwise character comparison: 0 if this
- * contains the same characters as srcChars
, -1 if the characters in
- * this are bitwise less than the characters in srcChars
, +1 if the
+ * contains the same characters as `srcChars`, -1 if the characters in
+ * this are bitwise less than the characters in `srcChars`, +1 if the
* characters in this are bitwise greater than the characters
- * in srcChars
.
+ * in `srcChars`.
* @stable ICU 2.0
*/
inline int8_t compare(int32_t start,
@@ -491,19 +484,19 @@ public:
/**
* Compare the characters bitwise in the range
- * [start, limit) with the characters
- * in srcText in the range
- * [srcStart, srcLimit).
+ * [`start`, `limit`) with the characters
+ * in `srcText` in the range
+ * [`srcStart`, `srcLimit`).
* @param start the offset at which the compare operation begins
* @param limit the offset immediately following the compare operation
* @param srcText the text to be compared
- * @param srcStart the offset into srcText to start comparison
- * @param srcLimit the offset into srcText to limit comparison
+ * @param srcStart the offset into `srcText` to start comparison
+ * @param srcLimit the offset into `srcText` to limit comparison
* @return The result of bitwise character comparison: 0 if this
- * contains the same characters as srcText
, -1 if the characters in
- * this are bitwise less than the characters in srcText
, +1 if the
+ * contains the same characters as `srcText`, -1 if the characters in
+ * this are bitwise less than the characters in `srcText`, +1 if the
* characters in this are bitwise greater than the characters
- * in srcText
.
+ * in `srcText`.
* @stable ICU 2.0
*/
inline int8_t compareBetween(int32_t start,
@@ -860,21 +853,21 @@ public:
uint32_t options) const;
/**
- * Determine if this starts with the characters in text
+ * Determine if this starts with the characters in `text`
* @param text The text to match.
- * @return TRUE if this starts with the characters in text,
+ * @return TRUE if this starts with the characters in `text`,
* FALSE otherwise
* @stable ICU 2.0
*/
inline UBool startsWith(const UnicodeString& text) const;
/**
- * Determine if this starts with the characters in srcText
- * in the range [srcStart, srcStart + srcLength).
+ * Determine if this starts with the characters in `srcText`
+ * in the range [`srcStart`, `srcStart + srcLength`).
* @param srcText The text to match.
- * @param srcStart the offset into srcText to start matching
- * @param srcLength the number of characters in srcText to match
- * @return TRUE if this starts with the characters in text,
+ * @param srcStart the offset into `srcText` to start matching
+ * @param srcLength the number of characters in `srcText` to match
+ * @return TRUE if this starts with the characters in `text`,
* FALSE otherwise
* @stable ICU 2.0
*/
@@ -883,10 +876,10 @@ public:
int32_t srcLength) const;
/**
- * Determine if this starts with the characters in srcChars
+ * Determine if this starts with the characters in `srcChars`
* @param srcChars The characters to match.
- * @param srcLength the number of characters in srcChars
- * @return TRUE if this starts with the characters in srcChars,
+ * @param srcLength the number of characters in `srcChars`
+ * @return TRUE if this starts with the characters in `srcChars`,
* FALSE otherwise
* @stable ICU 2.0
*/
@@ -894,12 +887,12 @@ public:
int32_t srcLength) const;
/**
- * Determine if this ends with the characters in srcChars
- * in the range [srcStart, srcStart + srcLength).
+ * Determine if this ends with the characters in `srcChars`
+ * in the range [`srcStart`, `srcStart + srcLength`).
* @param srcChars The characters to match.
- * @param srcStart the offset into srcText to start matching
- * @param srcLength the number of characters in srcChars to match
- * @return TRUE if this ends with the characters in srcChars, FALSE otherwise
+ * @param srcStart the offset into `srcText` to start matching
+ * @param srcLength the number of characters in `srcChars` to match
+ * @return TRUE if this ends with the characters in `srcChars`, FALSE otherwise
* @stable ICU 2.0
*/
inline UBool startsWith(const char16_t *srcChars,
@@ -907,21 +900,21 @@ public:
int32_t srcLength) const;
/**
- * Determine if this ends with the characters in text
+ * Determine if this ends with the characters in `text`
* @param text The text to match.
- * @return TRUE if this ends with the characters in text,
+ * @return TRUE if this ends with the characters in `text`,
* FALSE otherwise
* @stable ICU 2.0
*/
inline UBool endsWith(const UnicodeString& text) const;
/**
- * Determine if this ends with the characters in srcText
- * in the range [srcStart, srcStart + srcLength).
+ * Determine if this ends with the characters in `srcText`
+ * in the range [`srcStart`, `srcStart + srcLength`).
* @param srcText The text to match.
- * @param srcStart the offset into srcText to start matching
- * @param srcLength the number of characters in srcText to match
- * @return TRUE if this ends with the characters in text,
+ * @param srcStart the offset into `srcText` to start matching
+ * @param srcLength the number of characters in `srcText` to match
+ * @return TRUE if this ends with the characters in `text`,
* FALSE otherwise
* @stable ICU 2.0
*/
@@ -930,10 +923,10 @@ public:
int32_t srcLength) const;
/**
- * Determine if this ends with the characters in srcChars
+ * Determine if this ends with the characters in `srcChars`
* @param srcChars The characters to match.
- * @param srcLength the number of characters in srcChars
- * @return TRUE if this ends with the characters in srcChars,
+ * @param srcLength the number of characters in `srcChars`
+ * @return TRUE if this ends with the characters in `srcChars`,
* FALSE otherwise
* @stable ICU 2.0
*/
@@ -941,12 +934,12 @@ public:
int32_t srcLength) const;
/**
- * Determine if this ends with the characters in srcChars
- * in the range [srcStart, srcStart + srcLength).
+ * Determine if this ends with the characters in `srcChars`
+ * in the range [`srcStart`, `srcStart + srcLength`).
* @param srcChars The characters to match.
- * @param srcStart the offset into srcText to start matching
- * @param srcLength the number of characters in srcChars to match
- * @return TRUE if this ends with the characters in srcChars,
+ * @param srcStart the offset into `srcText` to start matching
+ * @param srcLength the number of characters in `srcChars` to match
+ * @return TRUE if this ends with the characters in `srcChars`,
* FALSE otherwise
* @stable ICU 2.0
*/
@@ -958,21 +951,21 @@ public:
/* Searching - bitwise only */
/**
- * Locate in this the first occurrence of the characters in text,
+ * Locate in this the first occurrence of the characters in `text`,
* using bitwise comparison.
* @param text The text to search for.
- * @return The offset into this of the start of text,
+ * @return The offset into this of the start of `text`,
* or -1 if not found.
* @stable ICU 2.0
*/
inline int32_t indexOf(const UnicodeString& text) const;
/**
- * Locate in this the first occurrence of the characters in text
- * starting at offset start, using bitwise comparison.
+ * Locate in this the first occurrence of the characters in `text`
+ * starting at offset `start`, using bitwise comparison.
* @param text The text to search for.
* @param start The offset at which searching will start.
- * @return The offset into this of the start of text,
+ * @return The offset into this of the start of `text`,
* or -1 if not found.
* @stable ICU 2.0
*/
@@ -981,12 +974,12 @@ public:
/**
* Locate in this the first occurrence in the range
- * [start, start + length) of the characters
- * in text, using bitwise comparison.
+ * [`start`, `start + length`) of the characters
+ * in `text`, using bitwise comparison.
* @param text The text to search for.
* @param start The offset at which searching will start.
* @param length The number of characters to search
- * @return The offset into this of the start of text,
+ * @return The offset into this of the start of `text`,
* or -1 if not found.
* @stable ICU 2.0
*/
@@ -996,17 +989,17 @@ public:
/**
* Locate in this the first occurrence in the range
- * [start, start + length) of the characters
- * in srcText in the range
- * [srcStart, srcStart + srcLength),
+ * [`start`, `start + length`) of the characters
+ * in `srcText` in the range
+ * [`srcStart`, `srcStart + srcLength`),
* using bitwise comparison.
* @param srcText The text to search for.
- * @param srcStart the offset into srcText at which
+ * @param srcStart the offset into `srcText` at which
* to start matching
- * @param srcLength the number of characters in srcText to match
+ * @param srcLength the number of characters in `srcText` to match
* @param start the offset into this at which to start matching
* @param length the number of characters in this to search
- * @return The offset into this of the start of text,
+ * @return The offset into this of the start of `text`,
* or -1 if not found.
* @stable ICU 2.0
*/
@@ -1018,12 +1011,12 @@ public:
/**
* Locate in this the first occurrence of the characters in
- * srcChars
- * starting at offset start, using bitwise comparison.
+ * `srcChars`
+ * starting at offset `start`, using bitwise comparison.
* @param srcChars The text to search for.
- * @param srcLength the number of characters in srcChars to match
+ * @param srcLength the number of characters in `srcChars` to match
* @param start the offset into this at which to start matching
- * @return The offset into this of the start of text,
+ * @return The offset into this of the start of `text`,
* or -1 if not found.
* @stable ICU 2.0
*/
@@ -1033,13 +1026,13 @@ public:
/**
* Locate in this the first occurrence in the range
- * [start, start + length) of the characters
- * in srcChars, using bitwise comparison.
+ * [`start`, `start + length`) of the characters
+ * in `srcChars`, using bitwise comparison.
* @param srcChars The text to search for.
- * @param srcLength the number of characters in srcChars
+ * @param srcLength the number of characters in `srcChars`
* @param start The offset at which searching will start.
* @param length The number of characters to search
- * @return The offset into this of the start of srcChars,
+ * @return The offset into this of the start of `srcChars`,
* or -1 if not found.
* @stable ICU 2.0
*/
@@ -1050,17 +1043,17 @@ public:
/**
* Locate in this the first occurrence in the range
- * [start, start + length) of the characters
- * in srcChars in the range
- * [srcStart, srcStart + srcLength),
+ * [`start`, `start + length`) of the characters
+ * in `srcChars` in the range
+ * [`srcStart`, `srcStart + srcLength`),
* using bitwise comparison.
* @param srcChars The text to search for.
- * @param srcStart the offset into srcChars at which
+ * @param srcStart the offset into `srcChars` at which
* to start matching
- * @param srcLength the number of characters in srcChars to match
+ * @param srcLength the number of characters in `srcChars` to match
* @param start the offset into this at which to start matching
* @param length the number of characters in this to search
- * @return The offset into this of the start of text,
+ * @return The offset into this of the start of `text`,
* or -1 if not found.
* @stable ICU 2.0
*/
@@ -1071,55 +1064,55 @@ public:
int32_t length) const;
/**
- * Locate in this the first occurrence of the BMP code point c
,
+ * Locate in this the first occurrence of the BMP code point `c`,
* using bitwise comparison.
* @param c The code unit to search for.
- * @return The offset into this of c, or -1 if not found.
+ * @return The offset into this of `c`, or -1 if not found.
* @stable ICU 2.0
*/
inline int32_t indexOf(char16_t c) const;
/**
- * Locate in this the first occurrence of the code point c,
+ * Locate in this the first occurrence of the code point `c`,
* using bitwise comparison.
*
* @param c The code point to search for.
- * @return The offset into this of c, or -1 if not found.
+ * @return The offset into this of `c`, or -1 if not found.
* @stable ICU 2.0
*/
inline int32_t indexOf(UChar32 c) const;
/**
- * Locate in this the first occurrence of the BMP code point c
,
- * starting at offset start, using bitwise comparison.
+ * Locate in this the first occurrence of the BMP code point `c`,
+ * starting at offset `start`, using bitwise comparison.
* @param c The code unit to search for.
* @param start The offset at which searching will start.
- * @return The offset into this of c, or -1 if not found.
+ * @return The offset into this of `c`, or -1 if not found.
* @stable ICU 2.0
*/
inline int32_t indexOf(char16_t c,
int32_t start) const;
/**
- * Locate in this the first occurrence of the code point c
- * starting at offset start, using bitwise comparison.
+ * Locate in this the first occurrence of the code point `c`
+ * starting at offset `start`, using bitwise comparison.
*
* @param c The code point to search for.
* @param start The offset at which searching will start.
- * @return The offset into this of c, or -1 if not found.
+ * @return The offset into this of `c`, or -1 if not found.
* @stable ICU 2.0
*/
inline int32_t indexOf(UChar32 c,
int32_t start) const;
/**
- * Locate in this the first occurrence of the BMP code point c
- * in the range [start, start + length),
+ * Locate in this the first occurrence of the BMP code point `c`
+ * in the range [`start`, `start + length`),
* using bitwise comparison.
* @param c The code unit to search for.
* @param start the offset into this at which to start matching
* @param length the number of characters in this to search
- * @return The offset into this of c, or -1 if not found.
+ * @return The offset into this of `c`, or -1 if not found.
* @stable ICU 2.0
*/
inline int32_t indexOf(char16_t c,
@@ -1127,14 +1120,14 @@ public:
int32_t length) const;
/**
- * Locate in this the first occurrence of the code point c
- * in the range [start, start + length),
+ * Locate in this the first occurrence of the code point `c`
+ * in the range [`start`, `start + length`),
* using bitwise comparison.
*
* @param c The code point to search for.
* @param start the offset into this at which to start matching
* @param length the number of characters in this to search
- * @return The offset into this of c, or -1 if not found.
+ * @return The offset into this of `c`, or -1 if not found.
* @stable ICU 2.0
*/
inline int32_t indexOf(UChar32 c,
@@ -1142,21 +1135,21 @@ public:
int32_t length) const;
/**
- * Locate in this the last occurrence of the characters in text,
+ * Locate in this the last occurrence of the characters in `text`,
* using bitwise comparison.
* @param text The text to search for.
- * @return The offset into this of the start of text,
+ * @return The offset into this of the start of `text`,
* or -1 if not found.
* @stable ICU 2.0
*/
inline int32_t lastIndexOf(const UnicodeString& text) const;
/**
- * Locate in this the last occurrence of the characters in text
- * starting at offset start, using bitwise comparison.
+ * Locate in this the last occurrence of the characters in `text`
+ * starting at offset `start`, using bitwise comparison.
* @param text The text to search for.
* @param start The offset at which searching will start.
- * @return The offset into this of the start of text,
+ * @return The offset into this of the start of `text`,
* or -1 if not found.
* @stable ICU 2.0
*/
@@ -1165,12 +1158,12 @@ public:
/**
* Locate in this the last occurrence in the range
- * [start, start + length) of the characters
- * in text, using bitwise comparison.
+ * [`start`, `start + length`) of the characters
+ * in `text`, using bitwise comparison.
* @param text The text to search for.
* @param start The offset at which searching will start.
* @param length The number of characters to search
- * @return The offset into this of the start of text,
+ * @return The offset into this of the start of `text`,
* or -1 if not found.
* @stable ICU 2.0
*/
@@ -1180,17 +1173,17 @@ public:
/**
* Locate in this the last occurrence in the range
- * [start, start + length) of the characters
- * in srcText in the range
- * [srcStart, srcStart + srcLength),
+ * [`start`, `start + length`) of the characters
+ * in `srcText` in the range
+ * [`srcStart`, `srcStart + srcLength`),
* using bitwise comparison.
* @param srcText The text to search for.
- * @param srcStart the offset into srcText at which
+ * @param srcStart the offset into `srcText` at which
* to start matching
- * @param srcLength the number of characters in srcText to match
+ * @param srcLength the number of characters in `srcText` to match
* @param start the offset into this at which to start matching
* @param length the number of characters in this to search
- * @return The offset into this of the start of text,
+ * @return The offset into this of the start of `text`,
* or -1 if not found.
* @stable ICU 2.0
*/
@@ -1201,12 +1194,12 @@ public:
int32_t length) const;
/**
- * Locate in this the last occurrence of the characters in srcChars
- * starting at offset start, using bitwise comparison.
+ * Locate in this the last occurrence of the characters in `srcChars`
+ * starting at offset `start`, using bitwise comparison.
* @param srcChars The text to search for.
- * @param srcLength the number of characters in srcChars to match
+ * @param srcLength the number of characters in `srcChars` to match
* @param start the offset into this at which to start matching
- * @return The offset into this of the start of text,
+ * @return The offset into this of the start of `text`,
* or -1 if not found.
* @stable ICU 2.0
*/
@@ -1216,13 +1209,13 @@ public:
/**
* Locate in this the last occurrence in the range
- * [start, start + length) of the characters
- * in srcChars, using bitwise comparison.
+ * [`start`, `start + length`) of the characters
+ * in `srcChars`, using bitwise comparison.
* @param srcChars The text to search for.
- * @param srcLength the number of characters in srcChars
+ * @param srcLength the number of characters in `srcChars`
* @param start The offset at which searching will start.
* @param length The number of characters to search
- * @return The offset into this of the start of srcChars,
+ * @return The offset into this of the start of `srcChars`,
* or -1 if not found.
* @stable ICU 2.0
*/
@@ -1233,17 +1226,17 @@ public:
/**
* Locate in this the last occurrence in the range
- * [start, start + length) of the characters
- * in srcChars in the range
- * [srcStart, srcStart + srcLength),
+ * [`start`, `start + length`) of the characters
+ * in `srcChars` in the range
+ * [`srcStart`, `srcStart + srcLength`),
* using bitwise comparison.
* @param srcChars The text to search for.
- * @param srcStart the offset into srcChars at which
+ * @param srcStart the offset into `srcChars` at which
* to start matching
- * @param srcLength the number of characters in srcChars to match
+ * @param srcLength the number of characters in `srcChars` to match
* @param start the offset into this at which to start matching
* @param length the number of characters in this to search
- * @return The offset into this of the start of text,
+ * @return The offset into this of the start of `text`,
* or -1 if not found.
* @stable ICU 2.0
*/
@@ -1254,55 +1247,55 @@ public:
int32_t length) const;
/**
- * Locate in this the last occurrence of the BMP code point c
,
+ * Locate in this the last occurrence of the BMP code point `c`,
* using bitwise comparison.
* @param c The code unit to search for.
- * @return The offset into this of c, or -1 if not found.
+ * @return The offset into this of `c`, or -1 if not found.
* @stable ICU 2.0
*/
inline int32_t lastIndexOf(char16_t c) const;
/**
- * Locate in this the last occurrence of the code point c,
+ * Locate in this the last occurrence of the code point `c`,
* using bitwise comparison.
*
* @param c The code point to search for.
- * @return The offset into this of c, or -1 if not found.
+ * @return The offset into this of `c`, or -1 if not found.
* @stable ICU 2.0
*/
inline int32_t lastIndexOf(UChar32 c) const;
/**
- * Locate in this the last occurrence of the BMP code point c
- * starting at offset start, using bitwise comparison.
+ * Locate in this the last occurrence of the BMP code point `c`
+ * starting at offset `start`, using bitwise comparison.
* @param c The code unit to search for.
* @param start The offset at which searching will start.
- * @return The offset into this of c, or -1 if not found.
+ * @return The offset into this of `c`, or -1 if not found.
* @stable ICU 2.0
*/
inline int32_t lastIndexOf(char16_t c,
int32_t start) const;
/**
- * Locate in this the last occurrence of the code point c
- * starting at offset start, using bitwise comparison.
+ * Locate in this the last occurrence of the code point `c`
+ * starting at offset `start`, using bitwise comparison.
*
* @param c The code point to search for.
* @param start The offset at which searching will start.
- * @return The offset into this of c, or -1 if not found.
+ * @return The offset into this of `c`, or -1 if not found.
* @stable ICU 2.0
*/
inline int32_t lastIndexOf(UChar32 c,
int32_t start) const;
/**
- * Locate in this the last occurrence of the BMP code point c
- * in the range [start, start + length),
+ * Locate in this the last occurrence of the BMP code point `c`
+ * in the range [`start`, `start + length`),
* using bitwise comparison.
* @param c The code unit to search for.
* @param start the offset into this at which to start matching
* @param length the number of characters in this to search
- * @return The offset into this of c, or -1 if not found.
+ * @return The offset into this of `c`, or -1 if not found.
* @stable ICU 2.0
*/
inline int32_t lastIndexOf(char16_t c,
@@ -1310,14 +1303,14 @@ public:
int32_t length) const;
/**
- * Locate in this the last occurrence of the code point c
- * in the range [start, start + length),
+ * Locate in this the last occurrence of the code point `c`
+ * in the range [`start`, `start + length`),
* using bitwise comparison.
*
* @param c The code point to search for.
* @param start the offset into this at which to start matching
* @param length the number of characters in this to search
- * @return The offset into this of c, or -1 if not found.
+ * @return The offset into this of `c`, or -1 if not found.
* @stable ICU 2.0
*/
inline int32_t lastIndexOf(UChar32 c,
@@ -1328,32 +1321,32 @@ public:
/* Character access */
/**
- * Return the code unit at offset offset.
+ * Return the code unit at offset `offset`.
* If the offset is not valid (0..length()-1) then U+ffff is returned.
* @param offset a valid offset into the text
- * @return the code unit at offset offset
+ * @return the code unit at offset `offset`
* or 0xffff if the offset is not valid for this string
* @stable ICU 2.0
*/
inline char16_t charAt(int32_t offset) const;
/**
- * Return the code unit at offset offset.
+ * Return the code unit at offset `offset`.
* If the offset is not valid (0..length()-1) then U+ffff is returned.
* @param offset a valid offset into the text
- * @return the code unit at offset offset
+ * @return the code unit at offset `offset`
* @stable ICU 2.0
*/
inline char16_t operator[] (int32_t offset) const;
/**
* Return the code point that contains the code unit
- * at offset offset.
+ * at offset `offset`.
* If the offset is not valid (0..length()-1) then U+ffff is returned.
* @param offset a valid offset into the text
* that indicates the text offset of any of the code units
* that will be assembled into a code point (21-bit value) and returned
- * @return the code point of text at offset
+ * @return the code point of text at `offset`
* or 0xffff if the offset is not valid for this string
* @stable ICU 2.0
*/
@@ -1410,33 +1403,33 @@ public:
* This behaves like CharacterIterator::move32(delta, kCurrent).
*
* Behavior for out-of-bounds indexes:
- * moveIndex32
pins the input index to 0..length(), i.e.,
+ * `moveIndex32` pins the input index to 0..length(), i.e.,
* if the input index<0 then it is pinned to 0;
* if it is index>length() then it is pinned to length().
- * Afterwards, the index is moved by delta
code points
+ * Afterwards, the index is moved by `delta` code points
* forward or backward,
* but no further backward than to 0 and no further forward than to length().
* The resulting index return value will be in between 0 and length(), inclusively.
*
* Examples:
- * - * // s has code points 'a' U+10000 'b' U+10ffff U+2029 - * UnicodeString s=UNICODE_STRING("a\\U00010000b\\U0010ffff\\u2029", 31).unescape(); + * \code + * // s has code points 'a' U+10000 'b' U+10ffff U+2029 + * UnicodeString s(u"a\U00010000b\U0010ffff\u2029"); * - * // initial index: position of U+10000 - * int32_t index=1; + * // initial index: position of U+10000 + * int32_t index=1; * - * // the following examples will all result in index==4, position of U+10ffff + * // the following examples will all result in index==4, position of U+10ffff * - * // skip 2 code points from some position in the string - * index=s.moveIndex32(index, 2); // skips U+10000 and 'b' + * // skip 2 code points from some position in the string + * index=s.moveIndex32(index, 2); // skips U+10000 and 'b' * - * // go to the 3rd code point from the start of s (0-based) - * index=s.moveIndex32(0, 3); // skips 'a', U+10000, and 'b' + * // go to the 3rd code point from the start of s (0-based) + * index=s.moveIndex32(0, 3); // skips 'a', U+10000, and 'b' * - * // go to the next-to-last code point of s - * index=s.moveIndex32(s.length(), -2); // backward-skips U+2029 and U+10ffff - *+ * // go to the next-to-last code point of s + * index=s.moveIndex32(s.length(), -2); // backward-skips U+2029 and U+10ffff + * \endcode * * @param index input code unit index * @param delta (signed) code point count to move the index forward or backward @@ -1450,16 +1443,16 @@ public: /** * Copy the characters in the range - * [start, start + length) into the array dst, - * beginning at dstStart. - * If the string aliases to
dst
itself as an external buffer,
+ * [`start`, `start + length`) into the array `dst`,
+ * beginning at `dstStart`.
+ * If the string aliases to `dst` itself as an external buffer,
* then extract() will not copy the contents.
*
* @param start offset of first character which will be copied into the array
* @param length the number of characters to extract
- * @param dst array in which to copy characters. The length of dst
- * must be at least (dstStart + length).
- * @param dstStart the offset in dst where the first character
+ * @param dst array in which to copy characters. The length of `dst`
+ * must be at least (`dstStart + length`).
+ * @param dstStart the offset in `dst` where the first character
* will be extracted
* @stable ICU 2.0
*/
@@ -1480,7 +1473,7 @@ public:
* If the string itself does not fit into dest
* (length()>destCapacity) then the error code is set to U_BUFFER_OVERFLOW_ERROR.
*
- * If the string aliases to dest
itself as an external buffer,
+ * If the string aliases to `dest` itself as an external buffer,
* then extract() will not copy the contents.
*
* @param dest Destination string buffer.
@@ -1495,12 +1488,11 @@ public:
/**
* Copy the characters in the range
- * [start, start + length) into the UnicodeString
- * target.
+ * [`start`, `start + length`) into the UnicodeString
+ * `target`.
* @param start offset of first character which will be copied
* @param length the number of characters to extract
* @param target UnicodeString into which to copy characters.
- * @return A reference to target
* @stable ICU 2.0
*/
inline void extract(int32_t start,
@@ -1508,13 +1500,13 @@ public:
UnicodeString& target) const;
/**
- * Copy the characters in the range [start, limit)
- * into the array dst, beginning at dstStart.
+ * Copy the characters in the range [`start`, `limit`)
+ * into the array `dst`, beginning at `dstStart`.
* @param start offset of first character which will be copied into the array
* @param limit offset immediately following the last character to be copied
- * @param dst array in which to copy characters. The length of dst
- * must be at least (dstStart + (limit - start)).
- * @param dstStart the offset in dst where the first character
+ * @param dst array in which to copy characters. The length of `dst`
+ * must be at least (`dstStart + (limit - start)`).
+ * @param dstStart the offset in `dst` where the first character
* will be extracted
* @stable ICU 2.0
*/
@@ -1524,12 +1516,11 @@ public:
int32_t dstStart = 0) const;
/**
- * Copy the characters in the range [start, limit)
- * into the UnicodeString target. Replaceable API.
+ * Copy the characters in the range [`start`, `limit`)
+ * into the UnicodeString `target`. Replaceable API.
* @param start offset of first character which will be copied
* @param limit offset immediately following the last character to be copied
* @param target UnicodeString into which to copy characters.
- * @return A reference to target
* @stable ICU 2.0
*/
virtual void extractBetween(int32_t start,
@@ -1538,11 +1529,11 @@ public:
/**
* Copy the characters in the range
- * [start, start + startLength) into an array of characters.
+ * [`start`, `start + startLength`) into an array of characters.
* All characters must be invariant (see utypes.h).
* Use US_INV as the last, signature-distinguishing parameter.
*
- * This function does not write any more than targetCapacity
+ * This function does not write any more than `targetCapacity`
* characters but returns the length of the entire output string
* so that one can allocate a larger buffer and call the function again
* if necessary.
@@ -1567,9 +1558,9 @@ public:
/**
* Copy the characters in the range
- * [start, start + length) into an array of characters
+ * [`start`, `start + length`) into an array of characters
* in the platform's default codepage.
- * This function does not write any more than targetLength
+ * This function does not write any more than `targetLength`
* characters but returns the length of the entire output string
* so that one can allocate a larger buffer and call the function again
* if necessary.
@@ -1579,8 +1570,8 @@ public:
* @param startLength the number of characters to extract
* @param target the target buffer for extraction
* @param targetLength the length of the target buffer
- * If target is NULL, then the number of bytes required for
- * target is returned.
+ * If `target` is NULL, then the number of bytes required for
+ * `target` is returned.
* @return the output string length, not including the terminating NUL
* @stable ICU 2.0
*/
@@ -1595,7 +1586,7 @@ public:
/**
* Copy the characters in the range
- * [start, start + length) into an array of characters
+ * [`start`, `start + length`) into an array of characters
* in a specified codepage.
* The output string is NUL-terminated.
*
@@ -1609,11 +1600,11 @@ public:
* @param target the target buffer for extraction
* @param codepage the desired codepage for the characters. 0 has
* the special meaning of the default codepage
- * If codepage
is an empty string (""
),
+ * If `codepage` is an empty string (`""`),
* then a simple conversion is performed on the codepage-invariant
* subset ("invariant characters") of the platform encoding. See utypes.h.
- * If target is NULL, then the number of bytes required for
- * target is returned. It is assumed that the target is big enough
+ * If `target` is NULL, then the number of bytes required for
+ * `target` is returned. It is assumed that the target is big enough
* to fit all of the characters.
* @return the output string length, not including the terminating NUL
* @stable ICU 2.0
@@ -1625,9 +1616,9 @@ public:
/**
* Copy the characters in the range
- * [start, start + length) into an array of characters
+ * [`start`, `start + length`) into an array of characters
* in a specified codepage.
- * This function does not write any more than targetLength
+ * This function does not write any more than `targetLength`
* characters but returns the length of the entire output string
* so that one can allocate a larger buffer and call the function again
* if necessary.
@@ -1644,11 +1635,11 @@ public:
* @param targetLength the length of the target buffer
* @param codepage the desired codepage for the characters. 0 has
* the special meaning of the default codepage
- * If codepage
is an empty string (""
),
+ * If `codepage` is an empty string (`""`),
* then a simple conversion is performed on the codepage-invariant
* subset ("invariant characters") of the platform encoding. See utypes.h.
- * If target is NULL, then the number of bytes required for
- * target is returned.
+ * If `target` is NULL, then the number of bytes required for
+ * `target` is returned.
* @return the output string length, not including the terminating NUL
* @stable ICU 2.0
*/
@@ -1735,7 +1726,7 @@ public:
*/
templatesrcText
.
+ * with the characters from `srcText`.
*
* This function works the same as the assignment operator
* for all strings except for ones that are readonly aliases.
@@ -1906,31 +1897,15 @@ public:
*/
UnicodeString &fastCopyFrom(const UnicodeString &src);
-#if U_HAVE_RVALUE_REFERENCES
/**
- * Move assignment operator, might leave src in bogus state.
+ * Move assignment operator; might leave src in bogus state.
* This string will have the same contents and state that the source string had.
* The behavior is undefined if *this and src are the same object.
* @param src source string
* @return *this
* @stable ICU 56
*/
- UnicodeString &operator=(UnicodeString &&src) U_NOEXCEPT {
- return moveFrom(src);
- }
-#endif
- // do not use #ifndef U_HIDE_DRAFT_API for moveFrom, needed by non-draft API
- /**
- * Move assignment, might leave src in bogus state.
- * This string will have the same contents and state that the source string had.
- * The behavior is undefined if *this and src are the same object.
- *
- * Can be called explicitly, does not need C++11 support.
- * @param src source string
- * @return *this
- * @draft ICU 56
- */
- UnicodeString &moveFrom(UnicodeString &src) U_NOEXCEPT;
+ UnicodeString &operator=(UnicodeString &&src) U_NOEXCEPT;
/**
* Swap strings.
@@ -1945,14 +1920,14 @@ public:
* @param s2 will get s1's contents and state
* @stable ICU 56
*/
- friend U_COMMON_API inline void U_EXPORT2
+ friend inline void U_EXPORT2
swap(UnicodeString &s1, UnicodeString &s2) U_NOEXCEPT {
s1.swap(s2);
}
/**
* Assignment operator. Replace the characters in this UnicodeString
- * with the code unit ch.
+ * with the code unit `ch`.
* @param ch the code unit to replace
* @return a reference to this
* @stable ICU 2.0
@@ -1961,7 +1936,7 @@ public:
/**
* Assignment operator. Replace the characters in this UnicodeString
- * with the code point ch.
+ * with the code point `ch`.
* @param ch the code point to replace
* @return a reference to this
* @stable ICU 2.0
@@ -1970,11 +1945,11 @@ public:
/**
* Set the text in the UnicodeString object to the characters
- * in srcText in the range
- * [srcStart, srcText.length()).
- * srcText is not modified.
+ * in `srcText` in the range
+ * [`srcStart`, `srcText.length()`).
+ * `srcText` is not modified.
* @param srcText the source for the new characters
- * @param srcStart the offset into srcText where new characters
+ * @param srcStart the offset into `srcText` where new characters
* will be obtained
* @return a reference to this
* @stable ICU 2.2
@@ -1984,13 +1959,13 @@ public:
/**
* Set the text in the UnicodeString object to the characters
- * in srcText in the range
- * [srcStart, srcStart + srcLength).
- * srcText is not modified.
+ * in `srcText` in the range
+ * [`srcStart`, `srcStart + srcLength`).
+ * `srcText` is not modified.
* @param srcText the source for the new characters
- * @param srcStart the offset into srcText where new characters
+ * @param srcStart the offset into `srcText` where new characters
* will be obtained
- * @param srcLength the number of characters in srcText in the
+ * @param srcLength the number of characters in `srcText` in the
* replace string.
* @return a reference to this
* @stable ICU 2.0
@@ -2001,8 +1976,8 @@ public:
/**
* Set the text in the UnicodeString object to the characters in
- * srcText.
- * srcText is not modified.
+ * `srcText`.
+ * `srcText` is not modified.
* @param srcText the source for the new characters
* @return a reference to this
* @stable ICU 2.0
@@ -2011,7 +1986,7 @@ public:
/**
* Set the characters in the UnicodeString object to the characters
- * in srcChars. srcChars is not modified.
+ * in `srcChars`. `srcChars` is not modified.
* @param srcChars the source for the new characters
* @param srcLength the number of Unicode characters in srcChars.
* @return a reference to this
@@ -2022,23 +1997,23 @@ public:
/**
* Set the characters in the UnicodeString object to the code unit
- * srcChar.
+ * `srcChar`.
* @param srcChar the code unit which becomes the UnicodeString's character
* content
* @return a reference to this
* @stable ICU 2.0
*/
- UnicodeString& setTo(char16_t srcChar);
+ inline UnicodeString& setTo(char16_t srcChar);
/**
* Set the characters in the UnicodeString object to the code point
- * srcChar.
+ * `srcChar`.
* @param srcChar the code point which becomes the UnicodeString's character
* content
* @return a reference to this
* @stable ICU 2.0
*/
- UnicodeString& setTo(UChar32 srcChar);
+ inline UnicodeString& setTo(UChar32 srcChar);
/**
* Aliasing setTo() function, analogous to the readonly-aliasing char16_t* constructor.
@@ -2054,12 +2029,12 @@ public:
* When using fastCopyFrom(), the text will be aliased again,
* so that both strings then alias the same readonly-text.
*
- * @param isTerminated specifies if text
is NUL
-terminated.
- * This must be true if textLength==-1
.
+ * @param isTerminated specifies if `text` is `NUL`-terminated.
+ * This must be true if `textLength==-1`.
* @param text The characters to alias for the UnicodeString.
- * @param textLength The number of Unicode characters in text
to alias.
+ * @param textLength The number of Unicode characters in `text` to alias.
* If -1, then this constructor will determine the length
- * by calling u_strlen()
.
+ * by calling `u_strlen()`.
* @return a reference to this
* @stable ICU 2.0
*/
@@ -2081,8 +2056,8 @@ public:
* as the string buffer itself and will in this case not copy the contents.
*
* @param buffer The characters to alias for the UnicodeString.
- * @param buffLength The number of Unicode characters in buffer
to alias.
- * @param buffCapacity The size of buffer
in char16_ts.
+ * @param buffLength The number of Unicode characters in `buffer` to alias.
+ * @param buffCapacity The size of `buffer` in char16_ts.
* @return a reference to this
* @stable ICU 2.0
*/
@@ -2146,7 +2121,7 @@ public:
/* Append operations */
/**
- * Append operator. Append the code unit ch to the UnicodeString
+ * Append operator. Append the code unit `ch` to the UnicodeString
* object.
* @param ch the code unit to be appended
* @return a reference to this
@@ -2155,7 +2130,7 @@ public:
inline UnicodeString& operator+= (char16_t ch);
/**
- * Append operator. Append the code point ch to the UnicodeString
+ * Append operator. Append the code point `ch` to the UnicodeString
* object.
* @param ch the code point to be appended
* @return a reference to this
@@ -2164,8 +2139,8 @@ public:
inline UnicodeString& operator+= (UChar32 ch);
/**
- * Append operator. Append the characters in srcText to the
- * UnicodeString object. srcText is not modified.
+ * Append operator. Append the characters in `srcText` to the
+ * UnicodeString object. `srcText` is not modified.
* @param srcText the source for the new characters
* @return a reference to this
* @stable ICU 2.0
@@ -2174,14 +2149,14 @@ public:
/**
* Append the characters
- * in srcText in the range
- * [srcStart, srcStart + srcLength) to the
- * UnicodeString object at offset start. srcText
+ * in `srcText` in the range
+ * [`srcStart`, `srcStart + srcLength`) to the
+ * UnicodeString object at offset `start`. `srcText`
* is not modified.
* @param srcText the source for the new characters
- * @param srcStart the offset into srcText where new characters
+ * @param srcStart the offset into `srcText` where new characters
* will be obtained
- * @param srcLength the number of characters in srcText in
+ * @param srcLength the number of characters in `srcText` in
* the append string
* @return a reference to this
* @stable ICU 2.0
@@ -2191,8 +2166,8 @@ public:
int32_t srcLength);
/**
- * Append the characters in srcText to the UnicodeString object.
- * srcText is not modified.
+ * Append the characters in `srcText` to the UnicodeString object.
+ * `srcText` is not modified.
* @param srcText the source for the new characters
* @return a reference to this
* @stable ICU 2.0
@@ -2200,15 +2175,15 @@ public:
inline UnicodeString& append(const UnicodeString& srcText);
/**
- * Append the characters in srcChars in the range
- * [srcStart, srcStart + srcLength) to the UnicodeString
+ * Append the characters in `srcChars` in the range
+ * [`srcStart`, `srcStart + srcLength`) to the UnicodeString
* object at offset
- * start. srcChars is not modified.
+ * `start`. `srcChars` is not modified.
* @param srcChars the source for the new characters
- * @param srcStart the offset into srcChars where new characters
+ * @param srcStart the offset into `srcChars` where new characters
* will be obtained
- * @param srcLength the number of characters in srcChars in
- * the append string; can be -1 if srcChars is NUL-terminated
+ * @param srcLength the number of characters in `srcChars` in
+ * the append string; can be -1 if `srcChars` is NUL-terminated
* @return a reference to this
* @stable ICU 2.0
*/
@@ -2217,11 +2192,11 @@ public:
int32_t srcLength);
/**
- * Append the characters in srcChars to the UnicodeString object
- * at offset start. srcChars is not modified.
+ * Append the characters in `srcChars` to the UnicodeString object
+ * at offset `start`. `srcChars` is not modified.
* @param srcChars the source for the new characters
- * @param srcLength the number of Unicode characters in srcChars;
- * can be -1 if srcChars is NUL-terminated
+ * @param srcLength the number of Unicode characters in `srcChars`;
+ * can be -1 if `srcChars` is NUL-terminated
* @return a reference to this
* @stable ICU 2.0
*/
@@ -2229,7 +2204,7 @@ public:
int32_t srcLength);
/**
- * Append the code unit srcChar to the UnicodeString object.
+ * Append the code unit `srcChar` to the UnicodeString object.
* @param srcChar the code unit to append
* @return a reference to this
* @stable ICU 2.0
@@ -2237,7 +2212,7 @@ public:
inline UnicodeString& append(char16_t srcChar);
/**
- * Append the code point srcChar to the UnicodeString object.
+ * Append the code point `srcChar` to the UnicodeString object.
* @param srcChar the code point to append
* @return a reference to this
* @stable ICU 2.0
@@ -2248,14 +2223,14 @@ public:
/* Insert operations */
/**
- * Insert the characters in srcText in the range
- * [srcStart, srcStart + srcLength) into the UnicodeString
- * object at offset start. srcText is not modified.
+ * Insert the characters in `srcText` in the range
+ * [`srcStart`, `srcStart + srcLength`) into the UnicodeString
+ * object at offset `start`. `srcText` is not modified.
* @param start the offset where the insertion begins
* @param srcText the source for the new characters
- * @param srcStart the offset into srcText where new characters
+ * @param srcStart the offset into `srcText` where new characters
* will be obtained
- * @param srcLength the number of characters in srcText in
+ * @param srcLength the number of characters in `srcText` in
* the insert string
* @return a reference to this
* @stable ICU 2.0
@@ -2266,8 +2241,8 @@ public:
int32_t srcLength);
/**
- * Insert the characters in srcText into the UnicodeString object
- * at offset start. srcText is not modified.
+ * Insert the characters in `srcText` into the UnicodeString object
+ * at offset `start`. `srcText` is not modified.
* @param start the offset where the insertion begins
* @param srcText the source for the new characters
* @return a reference to this
@@ -2277,14 +2252,14 @@ public:
const UnicodeString& srcText);
/**
- * Insert the characters in srcChars in the range
- * [srcStart, srcStart + srcLength) into the UnicodeString
- * object at offset start. srcChars is not modified.
+ * Insert the characters in `srcChars` in the range
+ * [`srcStart`, `srcStart + srcLength`) into the UnicodeString
+ * object at offset `start`. `srcChars` is not modified.
* @param start the offset at which the insertion begins
* @param srcChars the source for the new characters
- * @param srcStart the offset into srcChars where new characters
+ * @param srcStart the offset into `srcChars` where new characters
* will be obtained
- * @param srcLength the number of characters in srcChars
+ * @param srcLength the number of characters in `srcChars`
* in the insert string
* @return a reference to this
* @stable ICU 2.0
@@ -2295,8 +2270,8 @@ public:
int32_t srcLength);
/**
- * Insert the characters in srcChars into the UnicodeString object
- * at offset start. srcChars is not modified.
+ * Insert the characters in `srcChars` into the UnicodeString object
+ * at offset `start`. `srcChars` is not modified.
* @param start the offset where the insertion begins
* @param srcChars the source for the new characters
* @param srcLength the number of Unicode characters in srcChars.
@@ -2308,8 +2283,8 @@ public:
int32_t srcLength);
/**
- * Insert the code unit srcChar into the UnicodeString object at
- * offset start.
+ * Insert the code unit `srcChar` into the UnicodeString object at
+ * offset `start`.
* @param start the offset at which the insertion occurs
* @param srcChar the code unit to insert
* @return a reference to this
@@ -2319,8 +2294,8 @@ public:
char16_t srcChar);
/**
- * Insert the code point srcChar into the UnicodeString object at
- * offset start.
+ * Insert the code point `srcChar` into the UnicodeString object at
+ * offset `start`.
* @param start the offset at which the insertion occurs
* @param srcChar the code point to insert
* @return a reference to this
@@ -2334,22 +2309,22 @@ public:
/**
* Replace the characters in the range
- * [start, start + length) with the characters in
- * srcText in the range
- * [srcStart, srcStart + srcLength).
- * srcText is not modified.
+ * [`start`, `start + length`) with the characters in
+ * `srcText` in the range
+ * [`srcStart`, `srcStart + srcLength`).
+ * `srcText` is not modified.
* @param start the offset at which the replace operation begins
* @param length the number of characters to replace. The character at
- * start + length is not modified.
+ * `start + length` is not modified.
* @param srcText the source for the new characters
- * @param srcStart the offset into srcText where new characters
+ * @param srcStart the offset into `srcText` where new characters
* will be obtained
- * @param srcLength the number of characters in srcText in
+ * @param srcLength the number of characters in `srcText` in
* the replace string
* @return a reference to this
* @stable ICU 2.0
*/
- UnicodeString& replace(int32_t start,
+ inline UnicodeString& replace(int32_t start,
int32_t length,
const UnicodeString& srcText,
int32_t srcStart,
@@ -2357,38 +2332,38 @@ public:
/**
* Replace the characters in the range
- * [start, start + length)
- * with the characters in srcText. srcText is
+ * [`start`, `start + length`)
+ * with the characters in `srcText`. `srcText` is
* not modified.
* @param start the offset at which the replace operation begins
* @param length the number of characters to replace. The character at
- * start + length is not modified.
+ * `start + length` is not modified.
* @param srcText the source for the new characters
* @return a reference to this
* @stable ICU 2.0
*/
- UnicodeString& replace(int32_t start,
+ inline UnicodeString& replace(int32_t start,
int32_t length,
const UnicodeString& srcText);
/**
* Replace the characters in the range
- * [start, start + length) with the characters in
- * srcChars in the range
- * [srcStart, srcStart + srcLength). srcChars
+ * [`start`, `start + length`) with the characters in
+ * `srcChars` in the range
+ * [`srcStart`, `srcStart + srcLength`). `srcChars`
* is not modified.
* @param start the offset at which the replace operation begins
* @param length the number of characters to replace. The character at
- * start + length is not modified.
+ * `start + length` is not modified.
* @param srcChars the source for the new characters
- * @param srcStart the offset into srcChars where new characters
+ * @param srcStart the offset into `srcChars` where new characters
* will be obtained
- * @param srcLength the number of characters in srcChars
+ * @param srcLength the number of characters in `srcChars`
* in the replace string
* @return a reference to this
* @stable ICU 2.0
*/
- UnicodeString& replace(int32_t start,
+ inline UnicodeString& replace(int32_t start,
int32_t length,
const char16_t *srcChars,
int32_t srcStart,
@@ -2396,11 +2371,11 @@ public:
/**
* Replace the characters in the range
- * [start, start + length) with the characters in
- * srcChars. srcChars is not modified.
+ * [`start`, `start + length`) with the characters in
+ * `srcChars`. `srcChars` is not modified.
* @param start the offset at which the replace operation begins
* @param length number of characters to replace. The character at
- * start + length is not modified.
+ * `start + length` is not modified.
* @param srcChars the source for the new characters
* @param srcLength the number of Unicode characters in srcChars
* @return a reference to this
@@ -2413,11 +2388,11 @@ public:
/**
* Replace the characters in the range
- * [start, start + length) with the code unit
- * srcChar.
+ * [`start`, `start + length`) with the code unit
+ * `srcChar`.
* @param start the offset at which the replace operation begins
* @param length the number of characters to replace. The character at
- * start + length is not modified.
+ * `start + length` is not modified.
* @param srcChar the new code unit
* @return a reference to this
* @stable ICU 2.0
@@ -2428,11 +2403,11 @@ public:
/**
* Replace the characters in the range
- * [start, start + length) with the code point
- * srcChar.
+ * [`start`, `start + length`) with the code point
+ * `srcChar`.
* @param start the offset at which the replace operation begins
* @param length the number of characters to replace. The character at
- * start + length is not modified.
+ * `start + length` is not modified.
* @param srcChar the new code point
* @return a reference to this
* @stable ICU 2.0
@@ -2440,8 +2415,8 @@ public:
UnicodeString& replace(int32_t start, int32_t length, UChar32 srcChar);
/**
- * Replace the characters in the range [start, limit)
- * with the characters in srcText. srcText is not modified.
+ * Replace the characters in the range [`start`, `limit`)
+ * with the characters in `srcText`. `srcText` is not modified.
* @param start the offset at which the replace operation begins
* @param limit the offset immediately following the replace range
* @param srcText the source for the new characters
@@ -2453,16 +2428,16 @@ public:
const UnicodeString& srcText);
/**
- * Replace the characters in the range [start, limit)
- * with the characters in srcText in the range
- * [srcStart, srcLimit). srcText is not modified.
+ * Replace the characters in the range [`start`, `limit`)
+ * with the characters in `srcText` in the range
+ * [`srcStart`, `srcLimit`). `srcText` is not modified.
* @param start the offset at which the replace operation begins
* @param limit the offset immediately following the replace range
* @param srcText the source for the new characters
- * @param srcStart the offset into srcChars where new characters
+ * @param srcStart the offset into `srcChars` where new characters
* will be obtained
* @param srcLimit the offset immediately following the range to copy
- * in srcText
+ * in `srcText`
* @return a reference to this
* @stable ICU 2.0
*/
@@ -2474,12 +2449,9 @@ public:
/**
* Replace a substring of this object with the given text.
- * @param start the beginning index, inclusive; 0 <= start
- * <= limit
.
- * @param limit the ending index, exclusive; start <= limit
- * <= length()
.
- * @param text the text to replace characters start
- * to limit - 1
+ * @param start the beginning index, inclusive; `0 <= start <= limit`.
+ * @param limit the ending index, exclusive; `start <= limit <= length()`.
+ * @param text the text to replace characters `start` to `limit - 1`
* @stable ICU 2.0
*/
virtual void handleReplaceBetween(int32_t start,
@@ -2498,14 +2470,12 @@ public:
* information. This method is used to duplicate or reorder substrings.
* The destination index must not overlap the source range.
*
- * @param start the beginning index, inclusive; 0 <= start <=
- * limit
.
- * @param limit the ending index, exclusive; start <= limit <=
- * length()
.
+ * @param start the beginning index, inclusive; `0 <= start <= limit`.
+ * @param limit the ending index, exclusive; `start <= limit <= length()`.
* @param dest the destination index. The characters from
- * start..limit-1
will be copied to dest
.
- * Implementations of this method may assume that dest <= start ||
- * dest >= limit
.
+ * `start..limit-1` will be copied to `dest`.
+ * Implementations of this method may assume that `dest <= start ||
+ * dest >= limit`.
* @stable ICU 2.0
*/
virtual void copy(int32_t start, int32_t limit, int32_t dest);
@@ -2526,7 +2496,7 @@ public:
/**
* Replace all occurrences of characters in oldText with characters
* in newText
- * in the range [start, start + length).
+ * in the range [`start`, `start + length`).
* @param start the start of the range in which replace will performed
* @param length the length of the range in which replace will be performed
* @param oldText the text containing the search text
@@ -2541,18 +2511,18 @@ public:
/**
* Replace all occurrences of characters in oldText in the range
- * [oldStart, oldStart + oldLength) with the characters
+ * [`oldStart`, `oldStart + oldLength`) with the characters
* in newText in the range
- * [newStart, newStart + newLength)
- * in the range [start, start + length).
+ * [`newStart`, `newStart + newLength`)
+ * in the range [`start`, `start + length`).
* @param start the start of the range in which replace will performed
* @param length the length of the range in which replace will be performed
* @param oldText the text containing the search text
- * @param oldStart the start of the search range in oldText
- * @param oldLength the length of the search range in oldText
+ * @param oldStart the start of the search range in `oldText`
+ * @param oldLength the length of the search range in `oldText`
* @param newText the text containing the replacement text
- * @param newStart the start of the replacement range in newText
- * @param newLength the length of the replacement range in newText
+ * @param newStart the start of the replacement range in `newText`
+ * @param newLength the length of the replacement range in `newText`
* @return a reference to this
* @stable ICU 2.0
*/
@@ -2577,7 +2547,7 @@ public:
/**
* Remove the characters in the range
- * [start, start + length) from the UnicodeString object.
+ * [`start`, `start + length`) from the UnicodeString object.
* @param start the offset of the first character to remove
* @param length the number of characters to remove
* @return a reference to this
@@ -2588,7 +2558,7 @@ public:
/**
* Remove the characters in the range
- * [start, limit) from the UnicodeString object.
+ * [`start`, `limit`) from the UnicodeString object.
* @param start the offset of the first character to remove
* @param limit the offset immediately following the range to remove
* @return a reference to this
@@ -2599,8 +2569,8 @@ public:
/**
* Retain only the characters in the range
- * [start
, limit
) from the UnicodeString object.
- * Removes characters before start
and at and after limit
.
+ * [`start`, `limit`) from the UnicodeString object.
+ * Removes characters before `start` and at and after `limit`.
* @param start the offset of the first character to retain
* @param limit the offset immediately following the range to retain
* @return a reference to this
@@ -2611,7 +2581,7 @@ public:
/* Length operations */
/**
- * Pad the start of this UnicodeString with the character padChar.
+ * Pad the start of this UnicodeString with the character `padChar`.
* If the length of this UnicodeString is less than targetLength,
* length() - targetLength copies of padChar will be added to the
* beginning of this UnicodeString.
@@ -2625,7 +2595,7 @@ public:
char16_t padChar = 0x0020);
/**
- * Pad the end of this UnicodeString with the character padChar.
+ * Pad the end of this UnicodeString with the character `padChar`.
* If the length of this UnicodeString is less than targetLength,
* length() - targetLength copies of padChar will be added to the
* end of this UnicodeString.
@@ -2639,7 +2609,7 @@ public:
char16_t padChar = 0x0020);
/**
- * Truncate this UnicodeString to the targetLength.
+ * Truncate this UnicodeString to the `targetLength`.
* @param targetLength the desired length of this UnicodeString.
* @return TRUE if the text was truncated, FALSE otherwise
* @stable ICU 2.0
@@ -2664,7 +2634,7 @@ public:
inline UnicodeString& reverse(void);
/**
- * Reverse the range [start, start + length) in
+ * Reverse the range [`start`, `start + length`) in
* this UnicodeString.
* @param start the start of the range to reverse
* @param length the number of characters to to reverse
@@ -2791,11 +2761,11 @@ public:
* break iterator is opened.
* Otherwise the provided iterator is set to the string's text.
* @param locale The locale to consider.
+ * @param options Options bit set, usually 0. See U_TITLECASE_NO_LOWERCASE,
+ * U_TITLECASE_NO_BREAK_ADJUSTMENT, U_TITLECASE_ADJUST_TO_CASED,
+ * U_TITLECASE_WHOLE_STRING, U_TITLECASE_SENTENCES.
* @param options Options bit set, see ucasemap_open().
* @return A reference to this.
- * @see U_TITLECASE_NO_LOWERCASE
- * @see U_TITLECASE_NO_BREAK_ADJUSTMENT
- * @see ucasemap_open
* @stable ICU 3.8
*/
UnicodeString &toTitle(BreakIterator *titleIter, const Locale &locale, uint32_t options);
@@ -2849,7 +2819,7 @@ public:
* If the length() was greater than minCapacity, then any contents after minCapacity
* may be lost.
* The buffer contents is not NUL-terminated by getBuffer().
- * If length()-DUNISTR_FROM_CHAR_EXPLICIT=explicit
+ * `-DUNISTR_FROM_CHAR_EXPLICIT=explicit`
* on the compiler command line or similar.
* @param ch the character to place in the UnicodeString
* @stable ICU 2.0
@@ -2992,7 +2962,7 @@ public:
* Single UChar32 (code point) constructor.
*
* It is recommended to mark this constructor "explicit" by
- * -DUNISTR_FROM_CHAR_EXPLICIT=explicit
+ * `-DUNISTR_FROM_CHAR_EXPLICIT=explicit`
* on the compiler command line or similar.
* @param ch the character to place in the UnicodeString
* @stable ICU 2.0
@@ -3003,37 +2973,29 @@ public:
* char16_t* constructor.
*
* It is recommended to mark this constructor "explicit" by
- * -DUNISTR_FROM_STRING_EXPLICIT=explicit
+ * `-DUNISTR_FROM_STRING_EXPLICIT=explicit`
* on the compiler command line or similar.
- * @param text The characters to place in the UnicodeString. text
+ * @param text The characters to place in the UnicodeString. `text`
* must be NULL (U+0000) terminated.
* @stable ICU 2.0
*/
UNISTR_FROM_STRING_EXPLICIT UnicodeString(const char16_t *text);
- /*
- * Do not use #ifndef U_HIDE_DRAFT_API for the following constructor,
- * it should always be available regardless of U_HIDE_DRAFT_API status
- */
#if !U_CHAR16_IS_TYPEDEF
/**
* uint16_t * constructor.
* Delegates to UnicodeString(const char16_t *).
*
* It is recommended to mark this constructor "explicit" by
- * -DUNISTR_FROM_STRING_EXPLICIT=explicit
+ * `-DUNISTR_FROM_STRING_EXPLICIT=explicit`
* on the compiler command line or similar.
* @param text NUL-terminated UTF-16 string
- * @draft ICU 59
+ * @stable ICU 59
*/
UNISTR_FROM_STRING_EXPLICIT UnicodeString(const uint16_t *text) :
UnicodeString(ConstChar16Ptr(text)) {}
#endif
- /*
- * Do not use #ifndef U_HIDE_DRAFT_API for the following constructor,
- * it should always be available regardless of U_HIDE_DRAFT_API status
- */
#if U_SIZEOF_WCHAR_T==2 || defined(U_IN_DOXYGEN)
/**
* wchar_t * constructor.
@@ -3041,61 +3003,49 @@ public:
* Delegates to UnicodeString(const char16_t *).
*
* It is recommended to mark this constructor "explicit" by
- * -DUNISTR_FROM_STRING_EXPLICIT=explicit
+ * `-DUNISTR_FROM_STRING_EXPLICIT=explicit`
* on the compiler command line or similar.
* @param text NUL-terminated UTF-16 string
- * @draft ICU 59
+ * @stable ICU 59
*/
UNISTR_FROM_STRING_EXPLICIT UnicodeString(const wchar_t *text) :
UnicodeString(ConstChar16Ptr(text)) {}
#endif
- /*
- * Do not use #ifndef U_HIDE_DRAFT_API for the following constructor,
- * it should always be available regardless of U_HIDE_DRAFT_API status
- */
/**
* nullptr_t constructor.
* Effectively the same as the default constructor, makes an empty string object.
*
* It is recommended to mark this constructor "explicit" by
- * -DUNISTR_FROM_STRING_EXPLICIT=explicit
+ * `-DUNISTR_FROM_STRING_EXPLICIT=explicit`
* on the compiler command line or similar.
* @param text nullptr
- * @draft ICU 59
+ * @stable ICU 59
*/
UNISTR_FROM_STRING_EXPLICIT inline UnicodeString(const std::nullptr_t text);
/**
* char16_t* constructor.
* @param text The characters to place in the UnicodeString.
- * @param textLength The number of Unicode characters in text
+ * @param textLength The number of Unicode characters in `text`
* to copy.
* @stable ICU 2.0
*/
UnicodeString(const char16_t *text,
int32_t textLength);
- /*
- * Do not use #ifndef U_HIDE_DRAFT_API for the following constructor,
- * it should always be available regardless of U_HIDE_DRAFT_API status
- */
#if !U_CHAR16_IS_TYPEDEF
/**
* uint16_t * constructor.
* Delegates to UnicodeString(const char16_t *, int32_t).
* @param text UTF-16 string
* @param length string length
- * @draft ICU 59
+ * @stable ICU 59
*/
UnicodeString(const uint16_t *text, int32_t length) :
UnicodeString(ConstChar16Ptr(text), length) {}
#endif
- /*
- * Do not use #ifndef U_HIDE_DRAFT_API for the following constructor,
- * it should always be available regardless of U_HIDE_DRAFT_API status
- */
#if U_SIZEOF_WCHAR_T==2 || defined(U_IN_DOXYGEN)
/**
* wchar_t * constructor.
@@ -3103,22 +3053,18 @@ public:
* Delegates to UnicodeString(const char16_t *, int32_t).
* @param text NUL-terminated UTF-16 string
* @param length string length
- * @draft ICU 59
+ * @stable ICU 59
*/
UnicodeString(const wchar_t *text, int32_t length) :
UnicodeString(ConstChar16Ptr(text), length) {}
#endif
- /*
- * Do not use #ifndef U_HIDE_DRAFT_API for the following constructor,
- * it should always be available regardless of U_HIDE_DRAFT_API status
- */
/**
* nullptr_t constructor.
* Effectively the same as the default constructor, makes an empty string object.
* @param text nullptr
* @param length ignored
- * @draft ICU 59
+ * @stable ICU 59
*/
inline UnicodeString(const std::nullptr_t text, int32_t length);
@@ -3136,12 +3082,12 @@ public:
* When using fastCopyFrom(), the text will be aliased again,
* so that both strings then alias the same readonly-text.
*
- * @param isTerminated specifies if text
is NUL
-terminated.
- * This must be true if textLength==-1
.
+ * @param isTerminated specifies if `text` is `NUL`-terminated.
+ * This must be true if `textLength==-1`.
* @param text The characters to alias for the UnicodeString.
- * @param textLength The number of Unicode characters in text
to alias.
+ * @param textLength The number of Unicode characters in `text` to alias.
* If -1, then this constructor will determine the length
- * by calling u_strlen()
.
+ * by calling `u_strlen()`.
* @stable ICU 2.0
*/
UnicodeString(UBool isTerminated,
@@ -3162,16 +3108,12 @@ public:
* as the string buffer itself and will in this case not copy the contents.
*
* @param buffer The characters to alias for the UnicodeString.
- * @param buffLength The number of Unicode characters in buffer
to alias.
- * @param buffCapacity The size of buffer
in char16_ts.
+ * @param buffLength The number of Unicode characters in `buffer` to alias.
+ * @param buffCapacity The size of `buffer` in char16_ts.
* @stable ICU 2.0
*/
UnicodeString(char16_t *buffer, int32_t buffLength, int32_t buffCapacity);
- /*
- * Do not use #ifndef U_HIDE_DRAFT_API for the following constructor,
- * it should always be available regardless of U_HIDE_DRAFT_API status
- */
#if !U_CHAR16_IS_TYPEDEF
/**
* Writable-aliasing uint16_t * constructor.
@@ -3179,16 +3121,12 @@ public:
* @param buffer writable buffer of/for UTF-16 text
* @param buffLength length of the current buffer contents
* @param buffCapacity buffer capacity
- * @draft ICU 59
+ * @stable ICU 59
*/
UnicodeString(uint16_t *buffer, int32_t buffLength, int32_t buffCapacity) :
UnicodeString(Char16Ptr(buffer), buffLength, buffCapacity) {}
#endif
- /*
- * Do not use #ifndef U_HIDE_DRAFT_API for the following constructor,
- * it should always be available regardless of U_HIDE_DRAFT_API status
- */
#if U_SIZEOF_WCHAR_T==2 || defined(U_IN_DOXYGEN)
/**
* Writable-aliasing wchar_t * constructor.
@@ -3197,23 +3135,19 @@ public:
* @param buffer writable buffer of/for UTF-16 text
* @param buffLength length of the current buffer contents
* @param buffCapacity buffer capacity
- * @draft ICU 59
+ * @stable ICU 59
*/
UnicodeString(wchar_t *buffer, int32_t buffLength, int32_t buffCapacity) :
UnicodeString(Char16Ptr(buffer), buffLength, buffCapacity) {}
#endif
- /*
- * Do not use #ifndef U_HIDE_DRAFT_API for the following constructor,
- * it should always be available regardless of U_HIDE_DRAFT_API status
- */
/**
* Writable-aliasing nullptr_t constructor.
* Effectively the same as the default constructor, makes an empty string object.
* @param buffer nullptr
* @param buffLength ignored
* @param buffCapacity ignored
- * @draft ICU 59
+ * @stable ICU 59
*/
inline UnicodeString(std::nullptr_t buffer, int32_t buffLength, int32_t buffCapacity);
@@ -3230,7 +3164,7 @@ public:
* UNICODE_STRING_SIMPLE.
*
* It is recommended to mark this constructor "explicit" by
- * -DUNISTR_FROM_STRING_EXPLICIT=explicit
+ * `-DUNISTR_FROM_STRING_EXPLICIT=explicit`
* on the compiler command line or similar.
* @param codepageData an array of bytes, null-terminated,
* in the platform's default codepage.
@@ -3245,7 +3179,7 @@ public:
* Uses the default converter (and thus depends on the ICU conversion code)
* unless U_CHARSET_IS_UTF8 is set to 1.
* @param codepageData an array of bytes in the platform's default codepage.
- * @param dataLength The number of bytes in codepageData.
+ * @param dataLength The number of bytes in `codepageData`.
* @stable ICU 2.0
*/
UnicodeString(const char *codepageData, int32_t dataLength);
@@ -3257,11 +3191,11 @@ public:
/**
* char* constructor.
* @param codepageData an array of bytes, null-terminated
- * @param codepage the encoding of codepageData. The special
- * value 0 for codepage indicates that the text is in the
+ * @param codepage the encoding of `codepageData`. The special
+ * value 0 for `codepage` indicates that the text is in the
* platform's default codepage.
*
- * If codepage
is an empty string (""
),
+ * If `codepage` is an empty string (`""`),
* then a simple conversion is performed on the codepage-invariant
* subset ("invariant characters") of the platform encoding. See utypes.h.
* Recommendation: For invariant-character strings use the constructor
@@ -3276,11 +3210,11 @@ public:
/**
* char* constructor.
* @param codepageData an array of bytes.
- * @param dataLength The number of bytes in codepageData.
- * @param codepage the encoding of codepageData. The special
- * value 0 for codepage indicates that the text is in the
+ * @param dataLength The number of bytes in `codepageData`.
+ * @param codepage the encoding of `codepageData`. The special
+ * value 0 for `codepage` indicates that the text is in the
* platform's default codepage.
- * If codepage
is an empty string (""
),
+ * If `codepage` is an empty string (`""`),
* then a simple conversion is performed on the codepage-invariant
* subset ("invariant characters") of the platform encoding. See utypes.h.
* Recommendation: For invariant-character strings use the constructor
@@ -3331,12 +3265,11 @@ public:
*
* For example:
* \code
- * void fn(const char *s) {
- * UnicodeString ustr(s, -1, US_INV);
- * // use ustr ...
- * }
+ * void fn(const char *s) {
+ * UnicodeString ustr(s, -1, US_INV);
+ * // use ustr ...
+ * }
* \endcode
- *
* @param src String using only invariant characters.
* @param length Length of src, or -1 if NUL-terminated.
* @param inv Signature-distinguishing paramater, use US_INV.
@@ -3365,20 +3298,18 @@ public:
*/
UnicodeString(const UnicodeString& that);
-#if U_HAVE_RVALUE_REFERENCES
/**
- * Move constructor, might leave src in bogus state.
+ * Move constructor; might leave src in bogus state.
* This string will have the same contents and state that the source string had.
* @param src source string
* @stable ICU 56
*/
UnicodeString(UnicodeString &&src) U_NOEXCEPT;
-#endif
/**
* 'Substring' constructor from tail of source string.
* @param src The UnicodeString object to copy.
- * @param srcStart The offset into src at which to start copying.
+ * @param srcStart The offset into `src` at which to start copying.
* @stable ICU 2.2
*/
UnicodeString(const UnicodeString& src, int32_t srcStart);
@@ -3386,8 +3317,8 @@ public:
/**
* 'Substring' constructor from subrange of source string.
* @param src The UnicodeString object to copy.
- * @param srcStart The offset into src at which to start copying.
- * @param srcLength The number of characters from src to copy.
+ * @param srcStart The offset into `src` at which to start copying.
+ * @param srcLength The number of characters from `src` to copy.
* @stable ICU 2.2
*/
UnicodeString(const UnicodeString& src, int32_t srcStart, int32_t srcLength);
@@ -3459,7 +3390,7 @@ public:
*
* \\a => U+0007, \\b => U+0008, \\t => U+0009, \\n => U+000A,
* \\v => U+000B, \\f => U+000C, \\r => U+000D, \\e => U+001B,
- * \\" => U+0022, \\' => U+0027, \\? => U+003F, \\\\ => U+005C
+ * \\" => U+0022, \\' => U+0027, \\? => U+003F, \\\\ => U+005C
*
* Anything else following a backslash is generically escaped. For
* example, "[a\\-z]" returns "[a-z]".
@@ -3707,9 +3638,9 @@ private:
* Real constructor for converting from codepage data.
* It assumes that it is called with !fRefCounted.
*
- * If codepage==0
, then the default converter
+ * If `codepage==0`, then the default converter
* is used for the platform encoding.
- * If codepage
is an empty string (""
),
+ * If `codepage` is an empty string (`""`),
* then a simple conversion is performed on the codepage-invariant
* subset ("invariant characters") of the platform encoding. See utypes.h.
*/