Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(256)

Unified Diff: mojo/public/cpp/bindings/lib/string_traits_wtf.cc

Issue 1966933002: Mojo C++ bindings: switch the existing usage of StructTraits to use the new data view interface. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@26_reader
Patch Set: typeid() is not allowed :/ Created 4 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: mojo/public/cpp/bindings/lib/string_traits_wtf.cc
diff --git a/mojo/public/cpp/bindings/lib/string_traits_wtf.cc b/mojo/public/cpp/bindings/lib/string_traits_wtf.cc
index 401a7b7a6bd8e0d9862f346aac3d266305f136a7..19fa907448301f65ebddca5ef98f49449f0f6877 100644
--- a/mojo/public/cpp/bindings/lib/string_traits_wtf.cc
+++ b/mojo/public/cpp/bindings/lib/string_traits_wtf.cc
@@ -43,6 +43,15 @@ UTF8AdaptorInfo* ToAdaptor(const WTF::String& input, void* context) {
} // namespace
// static
+void StringTraits<WTF::String>::SetToNull(WTF::String* output) {
+ if (output->isNull())
+ return;
+
+ WTF::String result;
+ output->swap(result);
+}
+
+// static
void* StringTraits<WTF::String>::SetUpContext(const WTF::String& input) {
return new UTF8AdaptorInfo(input);
}
@@ -68,13 +77,8 @@ const char* StringTraits<WTF::String>::GetData(const WTF::String& input,
// static
bool StringTraits<WTF::String>::Read(StringDataView input,
WTF::String* output) {
- if (!input.is_null()) {
- WTF::String result = WTF::String::fromUTF8(input.storage(), input.size());
- output->swap(result);
- } else if (!output->isNull()) {
- WTF::String result;
- output->swap(result);
- }
+ WTF::String result = WTF::String::fromUTF8(input.storage(), input.size());
+ output->swap(result);
return true;
}

Powered by Google App Engine
This is Rietveld 408576698