Owned UTF-8 text composed of StormByte::CString.
Definition string.hxx:92
Wide counterpart of String.
Definition wstring.hxx:91
Root namespace of the StormByte suite.
std::conditional_t< Type::Reference< T >, std::expected< std::reference_wrapper< std::remove_reference_t< T > >, std::shared_ptr< E > >, std::expected< T, std::shared_ptr< E > > > Expected
String module: owned UTF-8 and wide text on top of StormByte::CString / StormByte::WCString.
static std::vector< std::byte > Write(const String::String &data) noexcept
Encodes data.
static Expected< String::String, DeserializeError > Read(std::span< const std::byte > data) noexcept
Decodes a StormByte::String::String from the start of data.
static std::size_t Size(const String::String &data) noexcept
Serialized size of data.
static Expected< String::WString, DeserializeError > Read(std::span< const std::byte > data) noexcept
Decodes a StormByte::String::WString from the start of data.
static std::size_t Size(const String::WString &data) noexcept
Serialized size of data.
static std::vector< std::byte > Write(const String::WString &data) noexcept
Encodes data.
#define STORMBYTE_STRING_PUBLIC
Definition visibility.h:53