An read-only view over a string (to avoid including Strings library)
More...
#include <StringViewData.h>
|
union { | |
|
const char * text | |
|
}; | | |
|
size_t | textSizeInBytes: sizeof(size_t) * 8 - NumOptionBits |
|
size_t | encoding: 2 |
|
size_t | hasNullTerm: 1 |
|
|
static constexpr size_t | NumOptionBits = 3 |
|
static constexpr size_t | MaxLength = (~static_cast<size_t>(0)) >> NumOptionBits |
|
An read-only view over a string (to avoid including Strings library)
◆ StringViewData() [1/3]
SC::StringViewData::StringViewData |
( |
StringEncoding | encoding = StringEncoding::Ascii | ) |
|
|
inlineconstexpr |
◆ StringViewData() [2/3]
SC::StringViewData::StringViewData |
( |
Span< const char > | text, |
|
|
bool | nullTerm, |
|
|
StringEncoding | encoding ) |
|
inlineconstexpr |
Construct a StringView from a Span of bytes.
- Parameters
-
text | The span containing the text EXCLUDING eventual null terminator |
nullTerm | true if a null terminator code point is expected to be found after Span. On ASCII and UTF8 this is 1 byte, on UTF16 it must be 2 bytes. |
encoding | The encoding of the text contained in this StringView |
◆ StringViewData() [3/3]
SC::StringViewData::StringViewData |
( |
const char(&) | str[N] | ) |
|
|
inlineconstexpr |
Constructs a StringView with a null terminated string terminal.
◆ bytesWithoutTerminator()
const char * SC::StringViewData::bytesWithoutTerminator |
( |
| ) |
const |
|
inlinenodiscardconstexpr |
◆ fromNullTerminated()
static constexpr StringViewData SC::StringViewData::fromNullTerminated |
( |
const char * | text, |
|
|
StringEncoding | encoding ) |
|
inlinestaticconstexpr |
Constructs a StringView from a null terminated string.
◆ getEncoding()
StringEncoding SC::StringViewData::getEncoding |
( |
| ) |
const |
|
inlinenodiscardconstexpr |
◆ getNullTerminatedNative()
auto SC::StringViewData::getNullTerminatedNative |
( |
| ) |
const |
|
inlinenodiscard |
Directly access the memory of this null terminated-StringView.
- Returns
- Pointer to start of StringView memory. On Windows return type will be
const wchar_t*
. On other platforms return type will be const char*
.
◆ isEmpty()
bool SC::StringViewData::isEmpty |
( |
| ) |
const |
|
inlinenodiscardconstexpr |
◆ isNullTerminated()
bool SC::StringViewData::isNullTerminated |
( |
| ) |
const |
|
inlinenodiscardconstexpr |
Check if StringView is immediately followed by a null termination character.
◆ sizeInBytes()
size_t SC::StringViewData::sizeInBytes |
( |
| ) |
const |
|
inlinenodiscardconstexpr |
◆ toCharSpan()
Span< const char > SC::StringViewData::toCharSpan |
( |
| ) |
const |
|
inlinenodiscard |
The documentation for this struct was generated from the following file: