|
| | String (StringEncoding encoding=StringEncoding::Utf8) |
| | Builds an empty String with a given Encoding.
|
| |
| | String (StringSpan sv) |
| | Builds String from a StringSpan.
|
| |
| | String (Buffer &&otherData, StringEncoding encoding) |
| | Builds a String from a buffer ensuring zero termination.
|
| |
| template<size_t N> |
| | String (const char(&text)[N]) |
| | Builds String with a null terminated char string literal.
|
| |
| bool | owns (StringSpan view) const |
| | Checks if the memory pointed by the StringSpan is owned by this String.
|
| |
| bool | assign (StringSpan sv) |
| | Assigns a StringSpan to this String, replacing existing contents.
|
| |
| StringEncoding | getEncoding () const |
| | Get StringSpan encoding.
|
| |
| size_t | sizeInBytesIncludingTerminator () const |
| | Get length of the string in bytes (including null terminator bytes)
|
| |
| const char * | bytesIncludingTerminator () const |
| | Access current string content as read-only null-terminated const char*
|
| |
| bool | isEmpty () const |
| | Check if String is empty.
|
| |
| StringSpan | view () const SC_LANGUAGE_LIFETIME_BOUND |
| | Obtain a null-terminated StringSpan from current String.
|
| |
| bool | operator== (const String &other) const |
| | Check if current String is same as other String.
|
| |
| bool | operator!= (const String &other) const |
| | Check if current String is different from other String.
|
| |
| bool | operator== (const StringSpan other) const |
| | Check if current String is same as other StringSpan.
|
| |
| bool | operator!= (const StringSpan other) const |
| | Check if current String is different from other StringSpan.
|
| |
| template<size_t N> |
| bool | operator== (const char(&other)[N]) const |
| | Check if current String is equal to the ascii string literal.
|
| |
| template<size_t N> |
| bool | operator!= (const char(&other)[N]) const |
| | Check if current String is different from the ascii string literal.
|
| |
| bool | operator< (const StringSpan other) const |
| | Check if current String is smaller to another StringView (using StringView::compare)
|
| |
| template<size_t N> |
| String & | operator= (const char(&text)[N]) |
| | Assigns an ascii string literal to current String.
|
| |
| String & | operator= (StringSpan view) |
| | Assigns (copy) contents of given StringSpan in current String.
|
| |
A non-modifiable owning string with associated encoding.
SC::String is (currently) implemented as a SC::Vector with the associated string encoding. A SC::StringSpan can be obtained from it calling SC::String::view method but it's up to the user making sure that the usage of such SC::StringSpan doesn't exceed lifetime of the SC::String it originated from (but thankfully Address Sanitizer will catch the issue if it goes un-noticed).