15 #include <Ultralight/Defines.h> 22 template<
int>
struct selector;
23 template<>
struct selector<4> {
typedef char16_t Char16; };
24 template<>
struct selector<2> {
typedef wchar_t Char16; };
27 #ifdef DISABLE_NATIVE_WCHAR_T 29 typedef char16_t Char16;
32 typedef detail::selector<
sizeof(wchar_t)>::Char16 Char16;
47 String16(
const char* c_str,
size_t len);
50 String16(
const Char16* str,
size_t len);
54 String16(
const unsigned short* str,
size_t len);
71 Char16* data() {
return data_; }
74 const Char16* data()
const {
return data_; }
78 unsigned short* udata() {
return reinterpret_cast<unsigned short*>(data_); }
81 const unsigned short* udata()
const {
return reinterpret_cast<const unsigned short*>(data_); }
84 size_t length()
const {
return length_; }
87 size_t size()
const {
return length_; }
90 bool empty()
const {
return !data_ || length_ == 0; }
93 Char16& operator[](
size_t pos) {
return data_[pos]; }
96 const Char16& operator[](
size_t pos)
const {
return data_[pos]; }
115 virtual void push_back(
const String16& val) = 0;
121 virtual size_t size()
const = 0;
A non-nullable smart pointer.
This is a set of common JavaScriptCore Helper functions to simplify sample code.
The header for all ref-counting utilities.
Interface for all ref-counted objects that will be managed using the Ref<> and RefPtr<> smart pointer...
A UTF-16 string container.