1// -*- C++ -*- 2//===----------------------------------------------------------------------===// 3// 4// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. 5// See https://llvm.org/LICENSE.txt for license information. 6// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception 7// 8//===----------------------------------------------------------------------===// 9 10module; 11#include <string_view> 12 13export module std:string_view; 14export namespace std { 15 // [string.view.template], class template basic_string_view 16 using std::basic_string_view; 17 18 namespace ranges { 19 using std::ranges::enable_borrowed_range; 20 using std::ranges::enable_view; 21 } // namespace ranges 22 23 // [string.view.comparison], non-member comparison functions 24 using std::operator==; 25 using std::operator<=>; 26 27 // [string.view.io], inserters and extractors 28 using std::operator<<; 29 30 // basic_string_view typedef-names 31 using std::string_view; 32 using std::u16string_view; 33 using std::u32string_view; 34 using std::u8string_view; 35#ifndef _LIBCPP_HAS_NO_WIDE_CHARACTERS 36 using std::wstring_view; 37#endif 38 39 // [string.view.hash], hash support 40 using std::hash; 41 42 inline namespace literals { 43 inline namespace string_view_literals { 44 // [string.view.literals], suffix for basic_string_view literals 45 using std::literals::string_view_literals::operator"" sv; 46 } // namespace string_view_literals 47 } // namespace literals 48} // namespace std 49