summaryrefslogtreecommitdiff
path: root/chromium/v8/src/inspector/string-16.h
diff options
context:
space:
mode:
Diffstat (limited to 'chromium/v8/src/inspector/string-16.h')
-rw-r--r--chromium/v8/src/inspector/string-16.h15
1 files changed, 12 insertions, 3 deletions
diff --git a/chromium/v8/src/inspector/string-16.h b/chromium/v8/src/inspector/string-16.h
index 1b475a10a67..c1dd5cb9291 100644
--- a/chromium/v8/src/inspector/string-16.h
+++ b/chromium/v8/src/inspector/string-16.h
@@ -26,7 +26,7 @@ class String16 {
String16(const String16&) V8_NOEXCEPT = default;
String16(String16&&) V8_NOEXCEPT = default;
String16(const UChar* characters, size_t size);
- String16(const UChar* characters); // NOLINT(runtime/explicit)
+ V8_EXPORT String16(const UChar* characters); // NOLINT(runtime/explicit)
String16(const char* characters); // NOLINT(runtime/explicit)
String16(const char* characters, size_t size);
explicit String16(const std::basic_string<UChar>& impl);
@@ -66,8 +66,13 @@ class String16 {
}
// Convenience methods.
- std::string utf8() const;
- static String16 fromUTF8(const char* stringStart, size_t length);
+ V8_EXPORT std::string utf8() const;
+ V8_EXPORT static String16 fromUTF8(const char* stringStart, size_t length);
+
+ // Instantiates a String16 in native endianness from UTF16 LE.
+ // On Big endian architectures, byte order needs to be flipped.
+ V8_EXPORT static String16 fromUTF16LE(const UChar* stringStart,
+ size_t length);
std::size_t hash() const {
if (!hash_code) {
@@ -91,6 +96,10 @@ class String16 {
inline String16 operator+(const String16& other) const {
return String16(m_impl + other.m_impl);
}
+ inline String16& operator+=(const String16& other) {
+ m_impl += other.m_impl;
+ return *this;
+ }
// Defined later, since it uses the String16Builder.
template <typename... T>