118 lines · plain
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-exception7//8//===----------------------------------------------------------------------===//9 10export namespace std {11#if _LIBCPP_HAS_LOCALIZATION12 // [re.const], regex constants13 namespace regex_constants {14 using std::regex_constants::error_type;15 using std::regex_constants::match_flag_type;16 using std::regex_constants::syntax_option_type;17 18 // regex_constants is a bitmask type.19 // [bitmask.types] specified operators20 using std::regex_constants::operator&;21 using std::regex_constants::operator&=;22 using std::regex_constants::operator^;23 using std::regex_constants::operator^=;24 using std::regex_constants::operator|;25 using std::regex_constants::operator|=;26 using std::regex_constants::operator~;27 28 } // namespace regex_constants29 30 // [re.badexp], class regex_error31 using std::regex_error;32 33 // [re.traits], class template regex_traits34 using std::regex_traits;35 36 // [re.regex], class template basic_regex37 using std::basic_regex;38 39 using std::regex;40# if _LIBCPP_HAS_WIDE_CHARACTERS41 using std::wregex;42# endif43 44 // [re.regex.swap], basic_regex swap45 using std::swap;46 47 // [re.submatch], class template sub_match48 using std::sub_match;49 50 using std::csub_match;51 using std::ssub_match;52# if _LIBCPP_HAS_WIDE_CHARACTERS53 using std::wcsub_match;54 using std::wssub_match;55# endif56 57 // [re.submatch.op], sub_match non-member operators58 using std::operator==;59 using std::operator<=>;60 61 using std::operator<<;62 63 // [re.results], class template match_results64 using std::match_results;65 66 using std::cmatch;67 using std::smatch;68# if _LIBCPP_HAS_WIDE_CHARACTERS69 using std::wcmatch;70 using std::wsmatch;71# endif72 73 // match_results comparisons74 75 // [re.results.swap], match_results swap76 77 // [re.alg.match], function template regex_match78 using std::regex_match;79 80 // [re.alg.search], function template regex_search81 using std::regex_search;82 83 // [re.alg.replace], function template regex_replace84 using std::regex_replace;85 86 // [re.regiter], class template regex_iterator87 using std::regex_iterator;88 89 using std::cregex_iterator;90 using std::sregex_iterator;91# if _LIBCPP_HAS_WIDE_CHARACTERS92 using std::wcregex_iterator;93 using std::wsregex_iterator;94# endif95 96 // [re.tokiter], class template regex_token_iterator97 using std::regex_token_iterator;98 99 using std::cregex_token_iterator;100 using std::sregex_token_iterator;101# if _LIBCPP_HAS_WIDE_CHARACTERS102 using std::wcregex_token_iterator;103 using std::wsregex_token_iterator;104# endif105 106 namespace pmr {107 using std::pmr::match_results;108 109 using std::pmr::cmatch;110 using std::pmr::smatch;111# if _LIBCPP_HAS_WIDE_CHARACTERS112 using std::pmr::wcmatch;113 using std::pmr::wsmatch;114# endif115 } // namespace pmr116#endif // _LIBCPP_HAS_LOCALIZATION117} // namespace std118