Xerces-C++ 3.3.0
XMLString Class Reference

Class for representing native character strings and handling common string operations. More...

#include <xercesc/util/XMLString.hpp>

Static Public Member Functions

String concatenation functions
static void catString (char *const target, const char *const src)
 Concatenates two strings.
 
static void catString (XMLCh *const target, const XMLCh *const src)
 Concatenates two strings.
 
String comparison functions
static int compareIString (const char *const str1, const char *const str2)
 Lexicographically compares lowercase versions of str1 and str2 and returns a value indicating their relationship.
 
static int compareIString (const XMLCh *const str1, const XMLCh *const str2)
 Lexicographically compares lowercase versions of str1 and str2 and returns a value indicating their relationship.
 
static int compareIStringASCII (const XMLCh *const str1, const XMLCh *const str2)
 Lexicographically compares lowercase versions of str1 and str2 and returns a value indicating their relationship.
 
static int compareNString (const char *const str1, const char *const str2, const XMLSize_t count)
 Lexicographically compares, at most, the first count characters in str1 and str2 and returns a value indicating the relationship between the substrings.
 
static int compareNString (const XMLCh *const str1, const XMLCh *const str2, const XMLSize_t count)
 Lexicographically compares, at most, the first count characters in str1 and str2 and returns a value indicating the relationship between the substrings.
 
static int compareNIString (const char *const str1, const char *const str2, const XMLSize_t count)
 Lexicographically compares, at most, the first count characters in str1 and str2 without regard to case and returns a value indicating the relationship between the substrings.
 
static int compareNIString (const XMLCh *const str1, const XMLCh *const str2, const XMLSize_t count)
 Lexicographically compares, at most, the first count characters in str1 and str2 without regard to case and returns a value indicating the relationship between the substrings.
 
static int compareString (const char *const str1, const char *const str2)
 Lexicographically compares str1 and str2 and returns a value indicating their relationship.
 
static int compareString (const XMLCh *const str1, const XMLCh *const str2)
 Lexicographically compares str1 and str2 and returns a value indicating their relationship.
 
static bool equals (const XMLCh *str1, const XMLCh *str2)
 compares str1 and str2
 
static bool equalsN (const XMLCh *str1, const XMLCh *str2, XMLSize_t n)
 compares str1 and str2
 
static bool equals (const char *str1, const char *str2)
 
static bool equalsN (const char *str1, const char *str2, XMLSize_t n)
 compares str1 and str2
 
static bool regionMatches (const XMLCh *const str1, const int offset1, const XMLCh *const str2, const int offset2, const XMLSize_t charCount)
 Lexicographically compares str1 and str2 regions and returns true if they are equal, otherwise false.
 
static bool regionIMatches (const XMLCh *const str1, const int offset1, const XMLCh *const str2, const int offset2, const XMLSize_t charCount)
 Lexicographically compares str1 and str2 regions without regard to case and returns true if they are equal, otherwise false.
 
String copy functions
static void copyString (char *const target, const char *const src)
 Copies src, including the terminating null character, to the location specified by target.
 
static void copyString (XMLCh *const target, const XMLCh *const src)
 Copies src, including the terminating null character, to the location specified by target.
 
static bool copyNString (XMLCh *const target, const XMLCh *const src, const XMLSize_t maxChars)
 Copies src, upto a fixed number of characters, to the location specified by target.
 
Hash functions
static XMLSize_t hash (const char *const toHash, const XMLSize_t hashModulus)
 Hashes a string given a modulus.
 
static XMLSize_t hash (const XMLCh *const toHash, const XMLSize_t hashModulus)
 Hashes a string given a modulus.
 
static XMLSize_t hashN (const XMLCh *const toHash, const XMLSize_t numChars, const XMLSize_t hashModulus)
 Hashes a string given a modulus taking a maximum number of characters as the limit.
 
Search functions
static int indexOf (const char *const toSearch, const char ch)
 Provides the index of the first occurrence of a character within a string.
 
static int indexOf (const XMLCh *const toSearch, const XMLCh ch)
 Provides the index of the first occurrence of a character within a string.
 
static int indexOf (const char *const toSearch, const char chToFind, const XMLSize_t fromIndex, MemoryManager *const manager=XMLPlatformUtils::fgMemoryManager)
 Provides the index of the first occurrence of a character within a string starting from a given index.
 
static int indexOf (const XMLCh *const toSearch, const XMLCh chToFind, const XMLSize_t fromIndex, MemoryManager *const manager=XMLPlatformUtils::fgMemoryManager)
 Provides the index of the first occurrence of a character within a string starting from a given index.
 
static int lastIndexOf (const char *const toSearch, const char ch)
 Provides the index of the last occurrence of a character within a string.
 
static int lastIndexOf (const XMLCh *const toSearch, const XMLCh ch)
 Provides the index of the last occurrence of a character within a string.
 
static int lastIndexOf (const XMLCh ch, const XMLCh *const toSearch, const XMLSize_t toSearchLen)
 Provides the index of the last occurrence of a character within a string.
 
static int lastIndexOf (const char *const toSearch, const char chToFind, const XMLSize_t fromIndex, MemoryManager *const manager=XMLPlatformUtils::fgMemoryManager)
 Provides the index of the last occurrence of a character within a string starting backward from a given index.
 
static int lastIndexOf (const XMLCh *const toSearch, const XMLCh ch, const XMLSize_t fromIndex, MemoryManager *const manager=XMLPlatformUtils::fgMemoryManager)
 Provides the index of the last occurrence of a character within a string starting backward from a given index.
 
Fixed size string movement
static void moveChars (XMLCh *const targetStr, const XMLCh *const srcStr, const XMLSize_t count)
 Moves X number of chars.
 
Substring function
static void subString (char *const targetStr, const char *const srcStr, const XMLSize_t startIndex, const XMLSize_t endIndex, MemoryManager *const manager=XMLPlatformUtils::fgMemoryManager)
 Create a substring of a given string.
 
static void subString (XMLCh *const targetStr, const XMLCh *const srcStr, const XMLSize_t startIndex, const XMLSize_t endIndex, MemoryManager *const manager=XMLPlatformUtils::fgMemoryManager)
 Create a substring of a given string.
 
static void subString (XMLCh *const targetStr, const XMLCh *const srcStr, const XMLSize_t startIndex, const XMLSize_t endIndex, const XMLSize_t srcStrLength, MemoryManager *const manager=XMLPlatformUtils::fgMemoryManager)
 Create a substring of a given string.
 
Replication function
static char * replicate (const char *const toRep, MemoryManager *const manager=XMLPlatformUtils::fgMemoryManager)
 Replicates a string NOTE: The returned buffer is allocated with the MemoryManager.
 
static XMLChreplicate (const XMLCh *const toRep, MemoryManager *const manager=XMLPlatformUtils::fgMemoryManager)
 Replicates a string NOTE: The returned buffer is allocated with the MemoryManager.
 
String query function
static bool startsWith (const char *const toTest, const char *const prefix)
 Tells if the sub-string appears within a string at the beginning.
 
static bool startsWith (const XMLCh *const toTest, const XMLCh *const prefix)
 Tells if the sub-string appears within a string at the beginning.
 
static bool startsWithI (const char *const toTest, const char *const prefix)
 Tells if the sub-string appears within a string at the beginning without regard to case.
 
static bool startsWithI (const XMLCh *const toTest, const XMLCh *const prefix)
 Tells if the sub-string appears within a string at the beginning without regard to case.
 
static bool endsWith (const XMLCh *const toTest, const XMLCh *const suffix)
 Tells if the sub-string appears within a string at the end.
 
static const XMLChfindAny (const XMLCh *const toSearch, const XMLCh *const searchList)
 Tells if a string has any occurrence of any character of another string within itself.
 
static XMLChfindAny (XMLCh *const toSearch, const XMLCh *const searchList)
 Tells if a string has any occurrence of any character of another string within itself.
 
static int patternMatch (const XMLCh *const toSearch, const XMLCh *const pattern)
 Tells if a string has pattern within itself.
 
static XMLSize_t stringLen (const char *const src)
 Get the length of the string.
 
static XMLSize_t stringLen (const XMLCh *const src)
 Get the length of the string.
 
static bool isValidNOTATION (const XMLCh *const name, MemoryManager *const manager=XMLPlatformUtils::fgMemoryManager)
 Checks whether an name is a valid NOTATION according to XML 1.0.
 
static bool isValidEncName (const XMLCh *const name)
 Checks whether an name is a valid EncName.
 
static bool isAlpha (XMLCh const theChar)
 Checks whether a character is within [a-zA-Z].
 
static bool isDigit (XMLCh const theChar)
 Checks whether a character is within [0-9].
 
static bool isAlphaNum (XMLCh const theChar)
 Checks whether a character is within [0-9a-zA-Z].
 
static bool isHex (XMLCh const theChar)
 Checks whether a character is within [0-9a-fA-F].
 
static bool isInList (const XMLCh *const toFind, const XMLCh *const enumList)
 Find is the string appears in the enum list.
 
Conversion functions
static void sizeToText (const XMLSize_t toFormat, char *const toFill, const XMLSize_t maxChars, const unsigned int radix, MemoryManager *const manager=XMLPlatformUtils::fgMemoryManager)
 Converts size to a text string based a given radix.
 
static void sizeToText (const XMLSize_t toFormat, XMLCh *const toFill, const XMLSize_t maxChars, const unsigned int radix, MemoryManager *const manager=XMLPlatformUtils::fgMemoryManager)
 Converts size to a text string based a given radix.
 
static void binToText (const unsigned int toFormat, char *const toFill, const XMLSize_t maxChars, const unsigned int radix, MemoryManager *const manager=XMLPlatformUtils::fgMemoryManager)
 Converts binary data to a text string based a given radix.
 
static void binToText (const unsigned int toFormat, XMLCh *const toFill, const XMLSize_t maxChars, const unsigned int radix, MemoryManager *const manager=XMLPlatformUtils::fgMemoryManager)
 Converts binary data to a text string based a given radix.
 
static void binToText (const unsigned long toFormat, char *const toFill, const XMLSize_t maxChars, const unsigned int radix, MemoryManager *const manager=XMLPlatformUtils::fgMemoryManager)
 Converts binary data to a text string based a given radix.
 
static void binToText (const unsigned long toFormat, XMLCh *const toFill, const XMLSize_t maxChars, const unsigned int radix, MemoryManager *const manager=XMLPlatformUtils::fgMemoryManager)
 Converts binary data to a text string based a given radix.
 
static void binToText (const int toFormat, char *const toFill, const XMLSize_t maxChars, const unsigned int radix, MemoryManager *const manager=XMLPlatformUtils::fgMemoryManager)
 Converts binary data to a text string based a given radix.
 
static void binToText (const int toFormat, XMLCh *const toFill, const XMLSize_t maxChars, const unsigned int radix, MemoryManager *const manager=XMLPlatformUtils::fgMemoryManager)
 Converts binary data to a text string based a given radix.
 
static void binToText (const long toFormat, char *const toFill, const XMLSize_t maxChars, const unsigned int radix, MemoryManager *const manager=XMLPlatformUtils::fgMemoryManager)
 Converts binary data to a text string based a given radix.
 
static void binToText (const long toFormat, XMLCh *const toFill, const XMLSize_t maxChars, const unsigned int radix, MemoryManager *const manager=XMLPlatformUtils::fgMemoryManager)
 Converts binary data to a text string based a given radix.
 
static bool textToBin (const XMLCh *const toConvert, unsigned int &toFill, MemoryManager *const manager=XMLPlatformUtils::fgMemoryManager)
 Converts a string of decimal chars to a binary value.
 
static int parseInt (const XMLCh *const toConvert, MemoryManager *const manager=XMLPlatformUtils::fgMemoryManager)
 Converts a string of decimal chars to a binary value.
 
static void cut (XMLCh *const toCutFrom, const XMLSize_t count)
 Cut leading chars from a string.
 
static char * transcode (const XMLCh *const toTranscode, MemoryManager *const manager=XMLPlatformUtils::fgMemoryManager)
 Transcodes a string to native code-page.
 
static bool transcode (const XMLCh *const toTranscode, char *const toFill, const XMLSize_t maxChars, MemoryManager *const manager=XMLPlatformUtils::fgMemoryManager)
 Transcodes a string to native code-page (DEPRECATED)
 
static XMLChtranscode (const char *const toTranscode, MemoryManager *const manager=XMLPlatformUtils::fgMemoryManager)
 Transcodes a string to native code-page.
 
static bool transcode (const char *const toTranscode, XMLCh *const toFill, const XMLSize_t maxChars, MemoryManager *const manager=XMLPlatformUtils::fgMemoryManager)
 Transcodes a string to native code-page (DEPRECATED)
 
static void trim (char *const toTrim)
 Trims off extra space characters from the start and end of the string, moving the non-space string content back to the start.
 
static void trim (XMLCh *const toTrim)
 Trims off extra space characters from the start and end of the string, moving the non-space string content back to the start.
 
static BaseRefVectorOf< XMLCh > * tokenizeString (const XMLCh *const tokenizeSrc, MemoryManager *const manager=XMLPlatformUtils::fgMemoryManager)
 Break a string into tokens with space as delimiter, and stored in a string vector.
 
static BaseRefVectorOf< XMLCh > * tokenizeString (const XMLCh *const tokenizeSrc, XMLCh delimiter, MemoryManager *const manager=XMLPlatformUtils::fgMemoryManager)
 Break a string into tokens with the given character as delimiter, and stored in a string vector.
 
Formatting functions
static XMLChmakeUName (const XMLCh *const pszURI, const XMLCh *const pszName)
 Creates a UName from a URI and base name.
 
static XMLSize_t replaceTokens (XMLCh *const errText, const XMLSize_t maxChars, const XMLCh *const text1, const XMLCh *const text2, const XMLCh *const text3, const XMLCh *const text4, MemoryManager *const manager=XMLPlatformUtils::fgMemoryManager)
 Internal function to perform token replacement for strings.
 
static void upperCase (XMLCh *const toUpperCase)
 Converts a string to uppercase.
 
static void upperCaseASCII (XMLCh *const toUpperCase)
 Converts a string to uppercase The routine only uppercases A to Z (other characters not changed).
 
static void lowerCase (XMLCh *const toLowerCase)
 Converts a string to lowercase.
 
static void lowerCaseASCII (XMLCh *const toLowerCase)
 Converts a string to lowercase The routine only lowercases a to z (other characters not changed).
 
static bool isWSReplaced (const XMLCh *const toCheck)
 Check if string is WhiteSpace:replace.
 
static bool isWSCollapsed (const XMLCh *const toCheck)
 Check if string is WhiteSpace:collapse.
 
static void replaceWS (XMLCh *toConvert, MemoryManager *const manager=XMLPlatformUtils::fgMemoryManager)
 Replace whitespace.
 
static void collapseWS (XMLCh *toConvert, MemoryManager *const manager=XMLPlatformUtils::fgMemoryManager)
 Collapse whitespace.
 
static void removeWS (XMLCh *toConvert, MemoryManager *const manager=XMLPlatformUtils::fgMemoryManager)
 Remove whitespace.
 
static void removeChar (const XMLCh *const srcString, const XMLCh &toRemove, XMLBuffer &dstBuffer)
 Remove character.
 
static void fixURI (const XMLCh *const str, XMLCh *const target)
 Fixes a platform dependent absolute path filename to standard URI form.
 
String Memory Management functions
static void release (char **buf, MemoryManager *const manager=XMLPlatformUtils::fgMemoryManager)
 Release the parameter string that was allocated by XMLString::transcode and XMLString::replicate.
 
static void release (XMLCh **buf, MemoryManager *const manager=XMLPlatformUtils::fgMemoryManager)
 Release the parameter string that was allocated by XMLString::transcode and XMLString::replicate.
 

Initialization

class XMLPlatformUtils
 

Detailed Description

Class for representing native character strings and handling common string operations.

This class is Unicode compliant. This class is designed primarily for internal use, but due to popular demand, it is being made publicly available. Users of this class must understand that this is not an officially supported class. All public methods of this class are static functions.

Member Function Documentation

◆ binToText() [1/8]

static void XMLString::binToText ( const int toFormat,
char *const toFill,
const XMLSize_t maxChars,
const unsigned int radix,
MemoryManager *const manager = XMLPlatformUtils::fgMemoryManager )
static

Converts binary data to a text string based a given radix.

Parameters
toFormatThe number to convert
toFillThe buffer that will hold the output on return. The size of this buffer should at least be 'maxChars + 1'.
maxCharsThe maximum number of output characters that can be accepted. If the result will not fit, it is an error.
radixThe radix of the input data, based on which the conversion
managerThe MemoryManager to use to allocate objects will be done

◆ binToText() [2/8]

static void XMLString::binToText ( const int toFormat,
XMLCh *const toFill,
const XMLSize_t maxChars,
const unsigned int radix,
MemoryManager *const manager = XMLPlatformUtils::fgMemoryManager )
static

Converts binary data to a text string based a given radix.

Parameters
toFormatThe number to convert
toFillThe buffer that will hold the output on return. The size of this buffer should at least be 'maxChars + 1'.
maxCharsThe maximum number of output characters that can be accepted. If the result will not fit, it is an error.
radixThe radix of the input data, based on which the conversion
managerThe MemoryManager to use to allocate objects will be done

◆ binToText() [3/8]

static void XMLString::binToText ( const long toFormat,
char *const toFill,
const XMLSize_t maxChars,
const unsigned int radix,
MemoryManager *const manager = XMLPlatformUtils::fgMemoryManager )
static

Converts binary data to a text string based a given radix.

Parameters
toFormatThe number to convert
toFillThe buffer that will hold the output on return. The size of this buffer should at least be 'maxChars + 1'.
maxCharsThe maximum number of output characters that can be accepted. If the result will not fit, it is an error.
radixThe radix of the input data, based on which the conversion
managerThe MemoryManager to use to allocate objects will be done

◆ binToText() [4/8]

static void XMLString::binToText ( const long toFormat,
XMLCh *const toFill,
const XMLSize_t maxChars,
const unsigned int radix,
MemoryManager *const manager = XMLPlatformUtils::fgMemoryManager )
static

Converts binary data to a text string based a given radix.

Parameters
toFormatThe number to convert
toFillThe buffer that will hold the output on return. The size of this buffer should at least be 'maxChars + 1'.
maxCharsThe maximum number of output characters that can be accepted. If the result will not fit, it is an error.
radixThe radix of the input data, based on which the conversion
managerThe MemoryManager to use to allocate objects will be done

◆ binToText() [5/8]

static void XMLString::binToText ( const unsigned int toFormat,
char *const toFill,
const XMLSize_t maxChars,
const unsigned int radix,
MemoryManager *const manager = XMLPlatformUtils::fgMemoryManager )
static

Converts binary data to a text string based a given radix.

Parameters
toFormatThe number to convert
toFillThe buffer that will hold the output on return. The size of this buffer should at least be 'maxChars + 1'.
maxCharsThe maximum number of output characters that can be accepted. If the result will not fit, it is an error.
radixThe radix of the input data, based on which the conversion
managerThe MemoryManager to use to allocate objects will be done

◆ binToText() [6/8]

static void XMLString::binToText ( const unsigned int toFormat,
XMLCh *const toFill,
const XMLSize_t maxChars,
const unsigned int radix,
MemoryManager *const manager = XMLPlatformUtils::fgMemoryManager )
static

Converts binary data to a text string based a given radix.

Parameters
toFormatThe number to convert
toFillThe buffer that will hold the output on return. The size of this buffer should at least be 'maxChars + 1'.
maxCharsThe maximum number of output characters that can be accepted. If the result will not fit, it is an error.
radixThe radix of the input data, based on which the conversion
managerThe MemoryManager to use to allocate objects will be done

◆ binToText() [7/8]

static void XMLString::binToText ( const unsigned long toFormat,
char *const toFill,
const XMLSize_t maxChars,
const unsigned int radix,
MemoryManager *const manager = XMLPlatformUtils::fgMemoryManager )
static

Converts binary data to a text string based a given radix.

Parameters
toFormatThe number to convert
toFillThe buffer that will hold the output on return. The size of this buffer should at least be 'maxChars + 1'.
maxCharsThe maximum number of output characters that can be accepted. If the result will not fit, it is an error.
radixThe radix of the input data, based on which the conversion
managerThe MemoryManager to use to allocate objects will be done

◆ binToText() [8/8]

static void XMLString::binToText ( const unsigned long toFormat,
XMLCh *const toFill,
const XMLSize_t maxChars,
const unsigned int radix,
MemoryManager *const manager = XMLPlatformUtils::fgMemoryManager )
static

Converts binary data to a text string based a given radix.

Parameters
toFormatThe number to convert
toFillThe buffer that will hold the output on return. The size of this buffer should at least be 'maxChars + 1'.
maxCharsThe maximum number of output characters that can be accepted. If the result will not fit, it is an error.
radixThe radix of the input data, based on which the conversion
managerThe MemoryManager to use to allocate objects will be done

◆ catString() [1/2]

static void XMLString::catString ( char *const target,
const char *const src )
static

Concatenates two strings.

catString appends src to target and terminates the resulting string with a null character. The initial character of src overwrites the terminating character of target .

No overflow checking is performed when strings are copied or appended. The behavior of catString is undefined if source and destination strings overlap.

Parameters
targetNull-terminated destination string
srcNull-terminated source string

◆ catString() [2/2]

static void XMLString::catString ( XMLCh *const target,
const XMLCh *const src )
static

Concatenates two strings.

catString appends src to target and terminates the resulting string with a null character. The initial character of src overwrites the terminating character of target. No overflow checking is performed when strings are copied or appended. The behavior of catString is undefined if source and destination strings overlap.

Parameters
targetNull-terminated destination string
srcNull-terminated source string

◆ collapseWS()

static void XMLString::collapseWS ( XMLCh * toConvert,
MemoryManager *const manager = XMLPlatformUtils::fgMemoryManager )
static

Collapse whitespace.

Parameters
toConvertThe string which needs to be whitespace collapsed. On return , this buffer also holds the converted string
managerThe MemoryManager to use to allocate objects

◆ compareIString() [1/2]

static int XMLString::compareIString ( const char *const str1,
const char *const str2 )
static

Lexicographically compares lowercase versions of str1 and str2 and returns a value indicating their relationship.

Parameters
str1Null-terminated string to compare
str2Null-terminated string to compare
Returns
The return value indicates the relation of str1 to str2 as follows Less than 0 means str1 is less than str2 Equal to 0 means str1 is identical to str2 Greater than 0 means str1 is more than str2

◆ compareIString() [2/2]

static int XMLString::compareIString ( const XMLCh *const str1,
const XMLCh *const str2 )
static

Lexicographically compares lowercase versions of str1 and str2 and returns a value indicating their relationship.

Parameters
str1Null-terminated string to compare
str2Null-terminated string to compare
Returns
The return value indicates the relation of str1 to str2 as follows Less than 0 means str1 is less than str2 Equal to 0 means str1 is identical to str2 Greater than 0 means str1 is more than str2

◆ compareIStringASCII()

static int XMLString::compareIStringASCII ( const XMLCh *const str1,
const XMLCh *const str2 )
static

Lexicographically compares lowercase versions of str1 and str2 and returns a value indicating their relationship.

The routine only lowercases A to Z.

Parameters
str1Null-terminated ASCII string to compare
str2Null-terminated ASCII string to compare
Returns
The return value indicates the relation of str1 to str2 as follows Less than 0 means str1 is less than str2 Equal to 0 means str1 is identical to str2 Greater than 0 means str1 is more than str2

◆ compareNIString() [1/2]

static int XMLString::compareNIString ( const char *const str1,
const char *const str2,
const XMLSize_t count )
static

Lexicographically compares, at most, the first count characters in str1 and str2 without regard to case and returns a value indicating the relationship between the substrings.

Parameters
str1Null-terminated string to compare
str2Null-terminated string to compare
countThe number of characters to compare
Returns
The return value indicates the relation of str1 to str2 as follows Less than 0 means str1 is less than str2 Equal to 0 means str1 is identical to str2 Greater than 0 means str1 is more than str2

Referenced by startsWithI().

◆ compareNIString() [2/2]

static int XMLString::compareNIString ( const XMLCh *const str1,
const XMLCh *const str2,
const XMLSize_t count )
static

Lexicographically compares, at most, the first count characters in str1 and str2 without regard to case and returns a value indicating the relationship between the substrings.

Parameters
str1Null-terminated string to compare
str2Null-terminated string to compare
countThe number of characters to compare
Returns
The return value indicates the relation of str1 to str2 as follows Less than 0 means str1 is less than str2 Equal to 0 means str1 is identical to str2 Greater than 0 means str1 is more than str2

◆ compareNString() [1/2]

static int XMLString::compareNString ( const char *const str1,
const char *const str2,
const XMLSize_t count )
static

Lexicographically compares, at most, the first count characters in str1 and str2 and returns a value indicating the relationship between the substrings.

Parameters
str1Null-terminated string to compare
str2Null-terminated string to compare
countThe number of characters to compare
Returns
The return value indicates the relation of str1 to str2 as follows Less than 0 means str1 is less than str2 Equal to 0 means str1 is identical to str2 Greater than 0 means str1 is more than str2

Referenced by startsWith().

◆ compareNString() [2/2]

static int XMLString::compareNString ( const XMLCh *const str1,
const XMLCh *const str2,
const XMLSize_t count )
static

Lexicographically compares, at most, the first count characters in str1 and str2 and returns a value indicating the relationship between the substrings.

Parameters
str1Null-terminated string to compare
str2Null-terminated string to compare
countThe number of characters to compare
Returns
The return value indicates the relation of str1 to str2 as follows Less than 0 means str1 is less than str2 Equal to 0 means str1 is identical to str2 Greater than 0 means str1 is more than str2

◆ compareString() [1/2]

static int XMLString::compareString ( const char *const str1,
const char *const str2 )
static

Lexicographically compares str1 and str2 and returns a value indicating their relationship.

Parameters
str1Null-terminated string to compare
str2Null-terminated string to compare
Returns
The return value indicates the relation of str1 to str2 as follows Less than 0 means str1 is less than str2 Equal to 0 means str1 is identical to str2 Greater than 0 means str1 is more than str2

◆ compareString() [2/2]

static int XMLString::compareString ( const XMLCh *const str1,
const XMLCh *const str2 )
static

Lexicographically compares str1 and str2 and returns a value indicating their relationship.

Parameters
str1Null-terminated string to compare
str2Null-terminated string to compare
Returns
The return value indicates the relation of str1 to str2 as follows Less than 0 means str1 is less than str2 Equal to 0 means str1 is identical to str2 Greater than 0 means str1 is more than str2

◆ copyNString()

static bool XMLString::copyNString ( XMLCh *const target,
const XMLCh *const src,
const XMLSize_t maxChars )
static

Copies src, upto a fixed number of characters, to the location specified by target.

No overflow checking is performed when strings are copied or appended. The behavior of copyNString is undefined if the source and destination strings overlap.

Parameters
targetDestination string. The size of the buffer should atleast be 'maxChars + 1'.
srcNull-terminated source string
maxCharsThe maximum number of characters to copy

◆ copyString() [1/2]

static void XMLString::copyString ( char *const target,
const char *const src )
static

Copies src, including the terminating null character, to the location specified by target.

No overflow checking is performed when strings are copied or appended. The behavior of strcpy is undefined if the source and destination strings overlap.

Parameters
targetDestination string
srcNull-terminated source string

◆ copyString() [2/2]

static void XMLString::copyString ( XMLCh *const target,
const XMLCh *const src )
static

Copies src, including the terminating null character, to the location specified by target.

No overflow checking is performed when strings are copied or appended. The behavior of copyString is undefined if the source and destination strings overlap.

Parameters
targetDestination string
srcNull-terminated source string

◆ cut()

static void XMLString::cut ( XMLCh *const toCutFrom,
const XMLSize_t count )
static

Cut leading chars from a string.

Parameters
toCutFromThe string to cut chars from
countThe count of leading chars to cut

◆ endsWith()

bool XMLString::endsWith ( const XMLCh *const toTest,
const XMLCh *const suffix )
static

Tells if the sub-string appears within a string at the end.

Parameters
toTestThe string to test
suffixThe sub-string that needs to be checked
Returns
Returns true if the sub-string was found at the end of toTest, else false

References regionMatches(), and stringLen().

◆ equals() [1/2]

bool XMLString::equals ( const char * str1,
const char * str2 )
static

◆ equals() [2/2]

bool XMLString::equals ( const XMLCh * str1,
const XMLCh * str2 )
static

compares str1 and str2

Parameters
str1Null-terminated string to compare
str2Null-terminated string to compare
Returns
true if two strings are equal, false if not If one string is null, while the other is zero-length string, it is considered as equal.

◆ equalsN() [1/2]

bool XMLString::equalsN ( const char * str1,
const char * str2,
XMLSize_t n )
static

compares str1 and str2

Parameters
str1string to compare
str2string to compare
nnumber of characters to compare
Returns
true if two strings are equal, false if not If one string is null, while the other is zero-length string, it is considered as equal.

◆ equalsN() [2/2]

bool XMLString::equalsN ( const XMLCh * str1,
const XMLCh * str2,
XMLSize_t n )
static

compares str1 and str2

Parameters
str1string to compare
str2string to compare
nnumber of characters to compare
Returns
true if two strings are equal, false if not If one string is null, while the other is zero-length string, it is considered as equal.

◆ findAny() [1/2]

static const XMLCh * XMLString::findAny ( const XMLCh *const toSearch,
const XMLCh *const searchList )
static

Tells if a string has any occurrence of any character of another string within itself.

Parameters
toSearchThe string to be searched
searchListThe string from which characters to be searched for are drawn
Returns
Returns the pointer to the location where the first occurrence of any character from searchList is found, else returns 0

◆ findAny() [2/2]

static XMLCh * XMLString::findAny ( XMLCh *const toSearch,
const XMLCh *const searchList )
static

Tells if a string has any occurrence of any character of another string within itself.

Parameters
toSearchThe string to be searched
searchListThe string from which characters to be searched for are drawn
Returns
Returns the pointer to the location where the first occurrence of any character from searchList is found, else returns 0

◆ fixURI()

static void XMLString::fixURI ( const XMLCh *const str,
XMLCh *const target )
static

Fixes a platform dependent absolute path filename to standard URI form.

  1. Windows: fix 'x:' to 'file:///x:' and convert any backslash to forward slash
  2. UNIX: fix '/blah/blahblah' to 'file:///blah/blahblah'
    Parameters
    strThe string that has the absolute path filename
    targetThe target string pre-allocated to store the fixed uri

◆ hash() [1/2]

static XMLSize_t XMLString::hash ( const char *const toHash,
const XMLSize_t hashModulus )
static

Hashes a string given a modulus.

Parameters
toHashThe string to hash
hashModulusThe divisor to be used for hashing
Returns
Returns the hash value

◆ hash() [2/2]

XMLSize_t XMLString::hash ( const XMLCh *const toHash,
const XMLSize_t hashModulus )
static

Hashes a string given a modulus.

Parameters
toHashThe string to hash
hashModulusThe divisor to be used for hashing
Returns
Returns the hash value

◆ hashN()

XMLSize_t XMLString::hashN ( const XMLCh *const toHash,
const XMLSize_t numChars,
const XMLSize_t hashModulus )
static

Hashes a string given a modulus taking a maximum number of characters as the limit.

Parameters
toHashThe string to hash
numCharsThe maximum number of characters to consider for hashing
hashModulusThe divisor to be used for hashing
Returns
Returns the hash value

◆ indexOf() [1/4]

static int XMLString::indexOf ( const char *const toSearch,
const char ch )
static

Provides the index of the first occurrence of a character within a string.

Parameters
toSearchThe string to search
chThe character to search within the string
Returns
If found, returns the index of the character within the string, else returns -1.

◆ indexOf() [2/4]

static int XMLString::indexOf ( const char *const toSearch,
const char chToFind,
const XMLSize_t fromIndex,
MemoryManager *const manager = XMLPlatformUtils::fgMemoryManager )
static

Provides the index of the first occurrence of a character within a string starting from a given index.

Parameters
toSearchThe string to search
chToFindThe character to search within the string
fromIndexThe index to start searching from
managerThe MemoryManager to use to allocate objects
Returns
If found, returns the index of the character within the string, else returns -1.

◆ indexOf() [3/4]

static int XMLString::indexOf ( const XMLCh *const toSearch,
const XMLCh ch )
static

Provides the index of the first occurrence of a character within a string.

Parameters
toSearchThe string to search
chThe character to search within the string
Returns
If found, returns the index of the character within the string, else returns -1.

◆ indexOf() [4/4]

static int XMLString::indexOf ( const XMLCh *const toSearch,
const XMLCh chToFind,
const XMLSize_t fromIndex,
MemoryManager *const manager = XMLPlatformUtils::fgMemoryManager )
static

Provides the index of the first occurrence of a character within a string starting from a given index.

Parameters
toSearchThe string to search
chToFindThe character to search within the string
fromIndexThe index to start searching from
managerThe MemoryManager to use to allocate objects
Returns
If found, returns the index of the character within the string, else returns -1.

◆ isAlpha()

static bool XMLString::isAlpha ( XMLCh const theChar)
static

Checks whether a character is within [a-zA-Z].

Parameters
theCharthe character to check
Returns
Returns true if within the range, otherwise false

◆ isAlphaNum()

static bool XMLString::isAlphaNum ( XMLCh const theChar)
static

Checks whether a character is within [0-9a-zA-Z].

Parameters
theCharthe character to check
Returns
Returns true if within the range, otherwise false

◆ isDigit()

static bool XMLString::isDigit ( XMLCh const theChar)
static

Checks whether a character is within [0-9].

Parameters
theCharthe character to check
Returns
Returns true if within the range, otherwise false

◆ isHex()

static bool XMLString::isHex ( XMLCh const theChar)
static

Checks whether a character is within [0-9a-fA-F].

Parameters
theCharthe character to check
Returns
Returns true if within the range, otherwise false

◆ isInList()

static bool XMLString::isInList ( const XMLCh *const toFind,
const XMLCh *const enumList )
static

Find is the string appears in the enum list.

Parameters
toFindthe string to be found
enumListthe list return true if found

◆ isValidEncName()

static bool XMLString::isValidEncName ( const XMLCh *const name)
static

Checks whether an name is a valid EncName.

Parameters
nameThe string to check its EncName validity
Returns
Returns true if name is EncName valid, otherwise false

◆ isValidNOTATION()

static bool XMLString::isValidNOTATION ( const XMLCh *const name,
MemoryManager *const manager = XMLPlatformUtils::fgMemoryManager )
static

Checks whether an name is a valid NOTATION according to XML 1.0.

Parameters
nameThe string to check its NOTATION validity
managerThe memory manager
Returns
Returns true if name is NOTATION valid, otherwise false

◆ isWSCollapsed()

static bool XMLString::isWSCollapsed ( const XMLCh *const toCheck)
static

Check if string is WhiteSpace:collapse.

Parameters
toCheckThe string which needs to be checked.

◆ isWSReplaced()

static bool XMLString::isWSReplaced ( const XMLCh *const toCheck)
static

Check if string is WhiteSpace:replace.

Parameters
toCheckThe string which needs to be checked.

◆ lastIndexOf() [1/5]

static int XMLString::lastIndexOf ( const char *const toSearch,
const char ch )
static

Provides the index of the last occurrence of a character within a string.

Parameters
toSearchThe string to search
chThe character to search within the string
Returns
If found, returns the index of the character within the string, else returns -1.

Referenced by lastIndexOf().

◆ lastIndexOf() [2/5]

static int XMLString::lastIndexOf ( const char *const toSearch,
const char chToFind,
const XMLSize_t fromIndex,
MemoryManager *const manager = XMLPlatformUtils::fgMemoryManager )
static

Provides the index of the last occurrence of a character within a string starting backward from a given index.

Parameters
toSearchThe string to search
chToFindThe character to search within the string
fromIndexThe index to start backward search from
managerThe MemoryManager to use to allocate objects
Returns
If found, returns the index of the character within the string, else returns -1.

◆ lastIndexOf() [3/5]

int XMLString::lastIndexOf ( const XMLCh *const toSearch,
const XMLCh ch )
static

Provides the index of the last occurrence of a character within a string.

Parameters
toSearchThe string to search
chThe character to search within the string
Returns
If found, returns the index of the character within the string, else returns -1.

References lastIndexOf(), and stringLen().

◆ lastIndexOf() [4/5]

static int XMLString::lastIndexOf ( const XMLCh *const toSearch,
const XMLCh ch,
const XMLSize_t fromIndex,
MemoryManager *const manager = XMLPlatformUtils::fgMemoryManager )
static

Provides the index of the last occurrence of a character within a string starting backward from a given index.

Parameters
toSearchThe string to search
chThe character to search within the string
fromIndexThe index to start backward search from
managerThe MemoryManager to use to allocate objects
Returns
If found, returns the index of the character within the string, else returns -1.

◆ lastIndexOf() [5/5]

static int XMLString::lastIndexOf ( const XMLCh ch,
const XMLCh *const toSearch,
const XMLSize_t toSearchLen )
static

Provides the index of the last occurrence of a character within a string.

Parameters
chThe character to search within the string
toSearchThe string to search
toSearchLenThe length of the string to search
Returns
If found, returns the index of the character within the string, else returns -1.

◆ lowerCase()

static void XMLString::lowerCase ( XMLCh *const toLowerCase)
static

Converts a string to lowercase.

Parameters
toLowerCaseThe string which needs to be converted to lowercase. On return, this buffer also holds the converted lowercase string

◆ lowerCaseASCII()

static void XMLString::lowerCaseASCII ( XMLCh *const toLowerCase)
static

Converts a string to lowercase The routine only lowercases a to z (other characters not changed).

Parameters
toLowerCaseThe string which needs to be converted to lowercase. On return, this buffer also holds the converted lowercase string

◆ makeUName()

static XMLCh * XMLString::makeUName ( const XMLCh *const pszURI,
const XMLCh *const pszName )
static

Creates a UName from a URI and base name.

It is in the form {url}name, and is commonly used internally to represent fully qualified names when namespaces are enabled.

Parameters
pszURIThe URI part of the name
pszNameThe base part of the name
Returns
Returns the complete formatted UName

◆ moveChars()

void XMLString::moveChars ( XMLCh *const targetStr,
const XMLCh *const srcStr,
const XMLSize_t count )
static

Moves X number of chars.

Parameters
targetStrThe string to copy the chars to
srcStrThe string to copy the chars from
countThe number of chars to move

◆ parseInt()

static int XMLString::parseInt ( const XMLCh *const toConvert,
MemoryManager *const manager = XMLPlatformUtils::fgMemoryManager )
static

Converts a string of decimal chars to a binary value.

Note that leading and trailing whitespace is legal and will be ignored,

Only one and either of (+,-) after the leading whitespace, before any other characters are allowed.

but the remainder must be all decimal digits.

Parameters
toConvertThe string of digits to convert
managerThe MemoryManager to use to allocate objects

◆ patternMatch()

static int XMLString::patternMatch ( const XMLCh *const toSearch,
const XMLCh *const pattern )
static

Tells if a string has pattern within itself.

Parameters
toSearchThe string to be searched
patternThe pattern to be located within the string
Returns
Returns index to the location where the pattern was found, else returns -1

◆ regionIMatches()

static bool XMLString::regionIMatches ( const XMLCh *const str1,
const int offset1,
const XMLCh *const str2,
const int offset2,
const XMLSize_t charCount )
static

Lexicographically compares str1 and str2 regions without regard to case and returns true if they are equal, otherwise false.

A substring of str1 is compared to a substring of str2. The result is true if these substrings represent identical character sequences. The substring of str1 to be compared begins at offset1 and has length charCount. The substring of str2 to be compared begins at offset2 and has length charCount. The result is false if and only if at least one of the following is true: offset1 is negative. offset2 is negative. offset1+charCount is greater than the length of str1. offset2+charCount is greater than the length of str2. There is some nonnegative integer k less than charCount such that: str1.charAt(offset1+k) != str2.charAt(offset2+k)

Parameters
str1Null-terminated string to compare
offset1Starting offset of str1
str2Null-terminated string to compare
offset2Starting offset of str2
charCountThe number of characters to compare
Returns
true if the specified subregion of str1 exactly matches the specified subregion of str2>; false otherwise.

◆ regionMatches()

static bool XMLString::regionMatches ( const XMLCh *const str1,
const int offset1,
const XMLCh *const str2,
const int offset2,
const XMLSize_t charCount )
static

Lexicographically compares str1 and str2 regions and returns true if they are equal, otherwise false.

A substring of str1 is compared to a substring of str2. The result is true if these substrings represent identical character sequences. The substring of str1 to be compared begins at offset1 and has length charCount. The substring of str2 to be compared begins at offset2 and has length charCount. The result is false if and only if at least one of the following is true: offset1 is negative. offset2 is negative. offset1+charCount is greater than the length of str1. offset2+charCount is greater than the length of str2. There is some nonnegative integer k less than charCount such that: str1.charAt(offset1+k) != str2.charAt(offset2+k)

Parameters
str1Null-terminated string to compare
offset1Starting offset of str1
str2Null-terminated string to compare
offset2Starting offset of str2
charCountThe number of characters to compare
Returns
true if the specified subregion of str1 exactly matches the specified subregion of str2>; false otherwise.

Referenced by endsWith().

◆ release() [1/2]

static void XMLString::release ( char ** buf,
MemoryManager *const manager = XMLPlatformUtils::fgMemoryManager )
static

Release the parameter string that was allocated by XMLString::transcode and XMLString::replicate.

The implementation will call MemoryManager::deallocate and then turn the string to a null pointer.

Parameters
bufThe string to be deleted and become a null pointer.
managerThe MemoryManager used to allocate the string

◆ release() [2/2]

static void XMLString::release ( XMLCh ** buf,
MemoryManager *const manager = XMLPlatformUtils::fgMemoryManager )
static

Release the parameter string that was allocated by XMLString::transcode and XMLString::replicate.

The implementation will call MemoryManager::deallocate and then turn the string to a null pointer.

Parameters
bufThe string to be deleted and become a null pointer.
managerThe MemoryManager used to allocate the string

◆ removeChar()

static void XMLString::removeChar ( const XMLCh *const srcString,
const XMLCh & toRemove,
XMLBuffer & dstBuffer )
static

Remove character.

Parameters
srcStringThe string
toRemoveThe character needs to be removed from the string
dstBufferThe buffer containing the result

◆ removeWS()

static void XMLString::removeWS ( XMLCh * toConvert,
MemoryManager *const manager = XMLPlatformUtils::fgMemoryManager )
static

Remove whitespace.

Parameters
toConvertThe string which needs to be whitespace removed. On return , this buffer also holds the converted string
managerThe MemoryManager to use to allocate objects

◆ replaceTokens()

static XMLSize_t XMLString::replaceTokens ( XMLCh *const errText,
const XMLSize_t maxChars,
const XMLCh *const text1,
const XMLCh *const text2,
const XMLCh *const text3,
const XMLCh *const text4,
MemoryManager *const manager = XMLPlatformUtils::fgMemoryManager )
static

Internal function to perform token replacement for strings.

Parameters
errTextThe text (NULL terminated) where the replacement is to be done. The size of this buffer should be 'maxChars + 1' to account for the final NULL.
maxCharsThe size of the output buffer, i.e. the maximum number of characters that it will hold. If the result is larger, it will be truncated.
text1Replacement text-one
text2Replacement text-two
text3Replacement text-three
text4Replacement text-four
managerThe MemoryManager to use to allocate objects
Returns
Returns the count of characters that are outputted

◆ replaceWS()

static void XMLString::replaceWS ( XMLCh * toConvert,
MemoryManager *const manager = XMLPlatformUtils::fgMemoryManager )
static

Replace whitespace.

Parameters
toConvertThe string which needs to be whitespace replaced. On return , this buffer also holds the converted string
managerThe MemoryManager to use to allocate objects

◆ replicate() [1/2]

static char * XMLString::replicate ( const char *const toRep,
MemoryManager *const manager = XMLPlatformUtils::fgMemoryManager )
static

Replicates a string NOTE: The returned buffer is allocated with the MemoryManager.

It is the responsibility of the caller to delete it when not longer needed. You can call XMLString::release to release this returned buffer.

Parameters
toRepThe string to replicate
managerThe MemoryManager to use to allocate the string
Returns
Returns a pointer to the replicated string
See also
XMLString::release(char**, MemoryManager*)

Referenced by SAXException::operator=(), XMLEntityDecl::setBaseURI(), XMLNotationDecl::setBaseURI(), XMLAttDef::setEnumeration(), XMLEntityDecl::setNotationName(), XMLEntityDecl::setPublicId(), XMLNotationDecl::setPublicId(), XMLEntityDecl::setSystemId(), XMLNotationDecl::setSystemId(), XMLAttDef::setValue(), XMLEntityDecl::setValue(), and AbstractDOMParser::useImplementation().

◆ replicate() [2/2]

XMLCh * XMLString::replicate ( const XMLCh *const toRep,
MemoryManager *const manager = XMLPlatformUtils::fgMemoryManager )
static

Replicates a string NOTE: The returned buffer is allocated with the MemoryManager.

It is the responsibility of the caller to delete it when not longer needed. You can call XMLString::release to release this returned buffer.

Parameters
toRepThe string to replicate
managerThe MemoryManager to use to allocate the string
Returns
Returns a pointer to the replicated string
See also
XMLString::release(XMLCh**, MemoryManager*)

References MemoryManager::allocate(), and stringLen().

◆ sizeToText() [1/2]

static void XMLString::sizeToText ( const XMLSize_t toFormat,
char *const toFill,
const XMLSize_t maxChars,
const unsigned int radix,
MemoryManager *const manager = XMLPlatformUtils::fgMemoryManager )
static

Converts size to a text string based a given radix.

Parameters
toFormatThe size to convert
toFillThe buffer that will hold the output on return. The size of this buffer should at least be 'maxChars + 1'.
maxCharsThe maximum number of output characters that can be accepted. If the result will not fit, it is an error.
radixThe radix of the input data, based on which the conversion
managerThe MemoryManager to use to allocate objects will be done

◆ sizeToText() [2/2]

static void XMLString::sizeToText ( const XMLSize_t toFormat,
XMLCh *const toFill,
const XMLSize_t maxChars,
const unsigned int radix,
MemoryManager *const manager = XMLPlatformUtils::fgMemoryManager )
static

Converts size to a text string based a given radix.

Parameters
toFormatThe size to convert
toFillThe buffer that will hold the output on return. The size of this buffer should at least be 'maxChars + 1'.
maxCharsThe maximum number of output characters that can be accepted. If the result will not fit, it is an error.
radixThe radix of the input data, based on which the conversion
managerThe MemoryManager to use to allocate objects will be done

◆ startsWith() [1/2]

static bool XMLString::startsWith ( const char *const toTest,
const char *const prefix )
static

Tells if the sub-string appears within a string at the beginning.

Parameters
toTestThe string to test
prefixThe sub-string that needs to be checked
Returns
Returns true if the sub-string was found at the beginning of toTest, else false

◆ startsWith() [2/2]

bool XMLString::startsWith ( const XMLCh *const toTest,
const XMLCh *const prefix )
static

Tells if the sub-string appears within a string at the beginning.

Parameters
toTestThe string to test
prefixThe sub-string that needs to be checked
Returns
Returns true if the sub-string was found at the beginning of toTest, else false

References compareNString(), and stringLen().

◆ startsWithI() [1/2]

static bool XMLString::startsWithI ( const char *const toTest,
const char *const prefix )
static

Tells if the sub-string appears within a string at the beginning without regard to case.

Parameters
toTestThe string to test
prefixThe sub-string that needs to be checked
Returns
Returns true if the sub-string was found at the beginning of toTest, else false

◆ startsWithI() [2/2]

bool XMLString::startsWithI ( const XMLCh *const toTest,
const XMLCh *const prefix )
static

Tells if the sub-string appears within a string at the beginning without regard to case.

Parameters
toTestThe string to test
prefixThe sub-string that needs to be checked
Returns
Returns true if the sub-string was found at the beginning of toTest, else false

References compareNIString(), and stringLen().

◆ stringLen() [1/2]

static XMLSize_t XMLString::stringLen ( const char *const src)
static

Get the length of the string.

Parameters
srcThe string whose length is to be determined
Returns
Returns the length of the string

Referenced by endsWith(), XMLBigInteger::getTotalDigit(), lastIndexOf(), replicate(), XMLDateTime::setBuffer(), QName::setLocalPart(), QName::setPrefix(), XMLEntityDecl::setValue(), startsWith(), and startsWithI().

◆ stringLen() [2/2]

XMLSize_t XMLString::stringLen ( const XMLCh *const src)
static

Get the length of the string.

Parameters
srcThe string whose length is to be determined
Returns
Returns the length of the string

◆ subString() [1/3]

static void XMLString::subString ( char *const targetStr,
const char *const srcStr,
const XMLSize_t startIndex,
const XMLSize_t endIndex,
MemoryManager *const manager = XMLPlatformUtils::fgMemoryManager )
static

Create a substring of a given string.

The substring begins at the specified beginIndex and extends to the character at index endIndex - 1.

Parameters
targetStrThe string to copy the chars to
srcStrThe string to copy the chars from
startIndexbeginning index, inclusive.
endIndexthe ending index, exclusive.
managerThe MemoryManager to use to allocate objects

◆ subString() [2/3]

static void XMLString::subString ( XMLCh *const targetStr,
const XMLCh *const srcStr,
const XMLSize_t startIndex,
const XMLSize_t endIndex,
const XMLSize_t srcStrLength,
MemoryManager *const manager = XMLPlatformUtils::fgMemoryManager )
static

Create a substring of a given string.

The substring begins at the specified beginIndex and extends to the character at index endIndex - 1.

Parameters
targetStrThe string to copy the chars to
srcStrThe string to copy the chars from
startIndexbeginning index, inclusive.
endIndexthe ending index, exclusive.
srcStrLengththe length of srcStr
managerThe MemoryManager to use to allocate objects

◆ subString() [3/3]

static void XMLString::subString ( XMLCh *const targetStr,
const XMLCh *const srcStr,
const XMLSize_t startIndex,
const XMLSize_t endIndex,
MemoryManager *const manager = XMLPlatformUtils::fgMemoryManager )
static

Create a substring of a given string.

The substring begins at the specified beginIndex and extends to the character at index endIndex - 1.

Parameters
targetStrThe string to copy the chars to
srcStrThe string to copy the chars from
startIndexbeginning index, inclusive.
endIndexthe ending index, exclusive.
managerThe MemoryManager to use to allocate objects

◆ textToBin()

static bool XMLString::textToBin ( const XMLCh *const toConvert,
unsigned int & toFill,
MemoryManager *const manager = XMLPlatformUtils::fgMemoryManager )
static

Converts a string of decimal chars to a binary value.

Note that leading and trailing whitespace is legal and will be ignored but the remainder must be all decimal digits.

Parameters
toConvertThe string of digits to convert
toFillThe unsigned int value to fill with the converted value.
managerThe MemoryManager to use to allocate objects

◆ tokenizeString() [1/2]

static BaseRefVectorOf< XMLCh > * XMLString::tokenizeString ( const XMLCh *const tokenizeSrc,
MemoryManager *const manager = XMLPlatformUtils::fgMemoryManager )
static

Break a string into tokens with space as delimiter, and stored in a string vector.

The caller owns the string vector that is returned, and is responsible for deleting it.

Parameters
tokenizeSrcString to be tokenized
managerThe MemoryManager to use to allocate objects
Returns
a vector of all the tokenized string

◆ tokenizeString() [2/2]

static BaseRefVectorOf< XMLCh > * XMLString::tokenizeString ( const XMLCh *const tokenizeSrc,
XMLCh delimiter,
MemoryManager *const manager = XMLPlatformUtils::fgMemoryManager )
static

Break a string into tokens with the given character as delimiter, and stored in a string vector.

The caller owns the string vector that is returned, and is responsible for deleting it.

Parameters
tokenizeSrcString to be tokenized
delimiterDelimiter character
managerThe MemoryManager to use to allocate objects
Returns
a vector of all the tokenized string

◆ transcode() [1/4]

static XMLCh * XMLString::transcode ( const char *const toTranscode,
MemoryManager *const manager = XMLPlatformUtils::fgMemoryManager )
static

Transcodes a string to native code-page.

NOTE: The returned buffer is dynamically allocated and is the responsibility of the caller to delete it when not longer needed. You can call XMLString::release to release this returned buffer.

Parameters
toTranscodeThe string to be transcoded
managerThe MemoryManager to use to allocate objects
Returns
Returns the transcoded string
See also
XMLString::release(char**, MemoryManager*)

◆ transcode() [2/4]

static bool XMLString::transcode ( const char *const toTranscode,
XMLCh *const toFill,
const XMLSize_t maxChars,
MemoryManager *const manager = XMLPlatformUtils::fgMemoryManager )
static

Transcodes a string to native code-page (DEPRECATED)

Parameters
toTranscodeThe string tobe transcoded
toFillThe buffer that is filled with the transcoded value. The size of this buffer should atleast be 'maxChars + 1'.
maxCharsThe maximum number of characters that the output buffer can hold (not including the null, which is why toFill should be at least maxChars+1.).
managerThe MemoryManager to use to allocate objects
Returns
Returns true if successful, false if there was an error

◆ transcode() [3/4]

static bool XMLString::transcode ( const XMLCh *const toTranscode,
char *const toFill,
const XMLSize_t maxChars,
MemoryManager *const manager = XMLPlatformUtils::fgMemoryManager )
static

Transcodes a string to native code-page (DEPRECATED)

Be aware that when transcoding to an external encoding, that each Unicode char can create multiple output bytes. So you cannot assume a one to one correspondence of input chars to output bytes.

Parameters
toTranscodeThe string tobe transcoded
toFillThe buffer that is filled with the transcoded value. The size of this buffer should atleast be 'maxChars + 1'.
maxCharsThe maximum number of bytes that the output buffer can hold (not including the null, which is why toFill should be at least maxChars+1.).
managerThe MemoryManager to use to allocate objects
Returns
Returns true if successful, false if there was an error

◆ transcode() [4/4]

static char * XMLString::transcode ( const XMLCh *const toTranscode,
MemoryManager *const manager = XMLPlatformUtils::fgMemoryManager )
static

Transcodes a string to native code-page.

NOTE: The returned buffer is dynamically allocated and is the responsibility of the caller to delete it when not longer needed. You can call XMLString::release to release this returned buffer.

Parameters
toTranscodeThe string to be transcoded
managerThe MemoryManager to use to allocate objects
Returns
Returns the transcoded string
See also
XMLString::release(XMLCh**, MemoryManager*)

◆ trim() [1/2]

static void XMLString::trim ( char *const toTrim)
static

Trims off extra space characters from the start and end of the string, moving the non-space string content back to the start.

Parameters
toTrimThe string to be trimmed. On return this contains the trimmed string

◆ trim() [2/2]

static void XMLString::trim ( XMLCh *const toTrim)
static

Trims off extra space characters from the start and end of the string, moving the non-space string content back to the start.

Parameters
toTrimThe string to be trimmed. On return this contains the trimmed string

◆ upperCase()

static void XMLString::upperCase ( XMLCh *const toUpperCase)
static

Converts a string to uppercase.

Parameters
toUpperCaseThe string which needs to be converted to uppercase. On return, this buffer also holds the converted uppercase string

◆ upperCaseASCII()

static void XMLString::upperCaseASCII ( XMLCh *const toUpperCase)
static

Converts a string to uppercase The routine only uppercases A to Z (other characters not changed).

Parameters
toUpperCaseThe string which needs to be converted to uppercase. On return, this buffer also holds the converted uppercase string

Friends And Related Symbol Documentation

◆ XMLPlatformUtils

friend class XMLPlatformUtils
friend

The documentation for this class was generated from the following file: