| // Copyright 2019 The Chromium Authors. All rights reserved. | 
 | // Use of this source code is governed by a BSD-style license that can be | 
 | // found in the LICENSE file. | 
 |  | 
 | #ifndef BASE_WIN_WIN_UTIL_H_ | 
 | #define BASE_WIN_WIN_UTIL_H_ | 
 |  | 
 | #include <string> | 
 | #include <string_view> | 
 |  | 
 | namespace base { | 
 |  | 
 | // Windows API calls take wchar_t but on that platform wchar_t should be the | 
 | // same as a char16_t. | 
 | inline const wchar_t* ToWCharT(const std::u16string* s) { | 
 |   static_assert(sizeof(std::u16string::value_type) == sizeof(wchar_t)); | 
 |   return reinterpret_cast<const wchar_t*>(s->c_str()); | 
 | } | 
 |  | 
 | inline const wchar_t* ToWCharT(const char16_t* s) { | 
 |   return reinterpret_cast<const wchar_t*>(s); | 
 | } | 
 |  | 
 | inline wchar_t* ToWCharT(char16_t* s) { | 
 |   return reinterpret_cast<wchar_t*>(s); | 
 | } | 
 |  | 
 | }  // namespace base | 
 |  | 
 | #endif  // BASE_WIN_WIN_UTIL_H_ |