os_string.ch
Declarations
Public Only
Publicnamespace std
namespace std
struct OsString
struct OsString
OsString: stores an OS-native string. Convert explicitly to/from UTF-8.
Publicfunction make
func make(str : native_string_t) : OsString
Publicfunction make2
Construct from UTF-8. On POSIX this copies the bytes; on Windows this converts to UTF-16.
Publicfunction empty
func empty(self : &OsString) : bool
Publicfunction native
func native(self : &OsString) : &native_string_t
Get access to the native underlying string/characters
Publicfunction c_str_native
func c_str_native(self : &OsString) : *native_char_t
Get a pointer to native data (null-terminated if you ensure it)
Publicfunction reserve
func reserve(self : &OsString, n : size_t) : void
Publicfunction append_utf8
func append_utf8(self : &OsString, data : *char, len : size_t) : void
TODO: support shrink_to_fit
Publicfunction append_utf8_str
Append a UTF-8 string
Publicfunction append_utf8_view
Publicfunction append_native
func append_native(self : &OsString, native : &native_string_t) : void
Append native data directly
Publicfunction utf8_to_u16
Helper: convert UTF-8 -> std::u16string using Win32 API
Publicfunction u16_to_utf8
Helper: convert std::u16string -> UTF-8 using Win32 API
function delete
func delete(self : *OsString) : void
OsString: stores an OS-native string. Convert explicitly to/from UTF-8.