// Copyright (c) 2014 GitHub, Inc. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. #ifndef ATOM_COMMON_NATIVE_MATE_CONVERTERS_STRING16_CONVERTER_H_ #define ATOM_COMMON_NATIVE_MATE_CONVERTERS_STRING16_CONVERTER_H_ #include "base/strings/string16.h" #include "native_mate/converter.h" namespace mate { template<> struct Converter { static v8::Handle ToV8(v8::Isolate* isolate, const string16& val) { return v8::String::New(reinterpret_cast(val.data()), val.size()); } static bool FromV8(v8::Isolate* isolate, v8::Handle val, string16* out) { v8::String::Value s(val); *out = string16(reinterpret_cast(*s), s.length()); return true; } }; } // namespace mate #endif // ATOM_COMMON_NATIVE_MATE_CONVERTERS_STRING16_CONVERTER_H_