1*81ad6265SDimitry Andric // -*- C++ -*- 2*81ad6265SDimitry Andric //===---------------------------------------------------------------------===// 3*81ad6265SDimitry Andric // 4*81ad6265SDimitry Andric // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. 5*81ad6265SDimitry Andric // See https://llvm.org/LICENSE.txt for license information. 6*81ad6265SDimitry Andric // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception 7*81ad6265SDimitry Andric // 8*81ad6265SDimitry Andric //===---------------------------------------------------------------------===// 9*81ad6265SDimitry Andric 10*81ad6265SDimitry Andric #ifndef _LIBCPP_FWD_STRING_VIEW_H 11*81ad6265SDimitry Andric #define _LIBCPP_FWD_STRING_VIEW_H 12*81ad6265SDimitry Andric 13*81ad6265SDimitry Andric #include <__config> 14*81ad6265SDimitry Andric #include <iosfwd> // char_traits 15*81ad6265SDimitry Andric 16*81ad6265SDimitry Andric #if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) 17*81ad6265SDimitry Andric # pragma GCC system_header 18*81ad6265SDimitry Andric #endif 19*81ad6265SDimitry Andric 20*81ad6265SDimitry Andric _LIBCPP_BEGIN_NAMESPACE_STD 21*81ad6265SDimitry Andric 22*81ad6265SDimitry Andric template<class _CharT, class _Traits = char_traits<_CharT> > 23*81ad6265SDimitry Andric class _LIBCPP_TEMPLATE_VIS basic_string_view; 24*81ad6265SDimitry Andric 25*81ad6265SDimitry Andric typedef basic_string_view<char> string_view; 26*81ad6265SDimitry Andric #ifndef _LIBCPP_HAS_NO_CHAR8_T 27*81ad6265SDimitry Andric typedef basic_string_view<char8_t> u8string_view; 28*81ad6265SDimitry Andric #endif 29*81ad6265SDimitry Andric typedef basic_string_view<char16_t> u16string_view; 30*81ad6265SDimitry Andric typedef basic_string_view<char32_t> u32string_view; 31*81ad6265SDimitry Andric #ifndef _LIBCPP_HAS_NO_WIDE_CHARACTERS 32*81ad6265SDimitry Andric typedef basic_string_view<wchar_t> wstring_view; 33*81ad6265SDimitry Andric #endif 34*81ad6265SDimitry Andric 35*81ad6265SDimitry Andric _LIBCPP_END_NAMESPACE_STD 36*81ad6265SDimitry Andric 37*81ad6265SDimitry Andric #endif // _LIBCPP_FWD_STRING_VIEW_H 38