// return the maximum size of the string
size_type max_size() const { return wxSTRING_MAXLEN; }
// resize the string, filling the space with c if c != 0
// return the maximum size of the string
size_type max_size() const { return wxSTRING_MAXLEN; }
// resize the string, filling the space with c if c != 0
// delete the contents of the string
void clear() { erase(0, npos); }
// returns true if the string is empty
// delete the contents of the string
void clear() { erase(0, npos); }
// returns true if the string is empty
// inform string about planned change in size
void reserve(size_t sz) { Alloc(sz); }
size_type capacity() const { return GetStringData()->nAllocLength; }
// inform string about planned change in size
void reserve(size_t sz) { Alloc(sz); }
size_type capacity() const { return GetStringData()->nAllocLength; }
// NB: special care was taken in arranging the member functions in such order
// that all inline functions can be effectively inlined, verify that all
// NB: special care was taken in arranging the member functions in such order
// that all inline functions can be effectively inlined, verify that all
private:
// if we hadn't made these operators private, it would be possible to
// compile "wxString s; s = 17;" without any warnings as 17 is implicitly
private:
// if we hadn't made these operators private, it would be possible to
// compile "wxString s; s = 17;" without any warnings as 17 is implicitly
wxString(const wxChar *psz, wxMBConv& WXUNUSED(conv), size_t nLength = npos)
: wxStringBase(psz, nLength == npos ? wxStrlen(psz) : nLength) { }
wxString(const wxChar *psz, wxMBConv& WXUNUSED(conv), size_t nLength = npos)
: wxStringBase(psz, nLength == npos ? wxStrlen(psz) : nLength) { }
// implicit conversions from std::string to wxString as this allows to use
// the same strings in non-GUI and GUI code, however we don't want to
// unconditionally add this ctor as it would make wx lib dependent on
// implicit conversions from std::string to wxString as this allows to use
// the same strings in non-GUI and GUI code, however we don't want to
// unconditionally add this ctor as it would make wx lib dependent on
// string contains any characters?
bool IsEmpty() const { return empty(); }
// empty string is "false", so !str will return true
// string contains any characters?
bool IsEmpty() const { return empty(); }
// empty string is "false", so !str will return true
// (if compareWithCase then the case matters)
bool IsSameAs(const wxChar *psz, bool compareWithCase = true) const
{ return (compareWithCase ? Cmp(psz) : CmpNoCase(psz)) == 0; }
// (if compareWithCase then the case matters)
bool IsSameAs(const wxChar *psz, bool compareWithCase = true) const
{ return (compareWithCase ? Cmp(psz) : CmpNoCase(psz)) == 0; }
bool IsSameAs(wxChar c, bool compareWithCase = true) const
{
return (length() == 1) && (compareWithCase ? GetChar(0u) == c
bool IsSameAs(wxChar c, bool compareWithCase = true) const
{
return (length() == 1) && (compareWithCase ? GetChar(0u) == c