mirror of
https://github.com/intel/llvm.git
synced 2026-01-14 11:57:39 +08:00
This adds the cppm files of D144994. These files by themselves will do nothing. The goal is to reduce the size of D144994 and making it easier to review the real changes of the patch. Implements parts of - P2465R3 Standard Library Modules std and std.compat Reviewed By: ldionne, ChuanqiXu, aaronmondal, #libc Differential Revision: https://reviews.llvm.org/D151030
128 lines
3.2 KiB
C++
128 lines
3.2 KiB
C++
// -*- C++ -*-
|
|
//===----------------------------------------------------------------------===//
|
|
//
|
|
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
|
|
// See https://llvm.org/LICENSE.txt for license information.
|
|
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
|
|
//
|
|
//===----------------------------------------------------------------------===//
|
|
|
|
module;
|
|
#include <__config>
|
|
#ifndef _LIBCPP_HAS_NO_LOCALIZATION
|
|
# include <regex>
|
|
#endif
|
|
|
|
export module std:regex;
|
|
#ifndef _LIBCPP_HAS_NO_LOCALIZATION
|
|
export namespace std {
|
|
// [re.const], regex constants
|
|
namespace regex_constants {
|
|
using std::regex_constants::error_type;
|
|
using std::regex_constants::match_flag_type;
|
|
using std::regex_constants::syntax_option_type;
|
|
|
|
// regex_constants is a bitmask type.
|
|
// [bitmask.types] specified operators
|
|
using std::regex_constants::operator&;
|
|
using std::regex_constants::operator&=;
|
|
using std::regex_constants::operator^;
|
|
using std::regex_constants::operator^=;
|
|
using std::regex_constants::operator|;
|
|
using std::regex_constants::operator|=;
|
|
using std::regex_constants::operator~;
|
|
|
|
} // namespace regex_constants
|
|
|
|
// [re.badexp], class regex_error
|
|
using std::regex_error;
|
|
|
|
// [re.traits], class template regex_traits
|
|
using std::regex_traits;
|
|
|
|
// [re.regex], class template basic_regex
|
|
using std::basic_regex;
|
|
|
|
using std::regex;
|
|
# ifndef _LIBCPP_HAS_NO_WIDE_CHARACTERS
|
|
using std::wregex;
|
|
# endif
|
|
|
|
// [re.regex.swap], basic_regex swap
|
|
using std::swap;
|
|
|
|
// [re.submatch], class template sub_match
|
|
using std::sub_match;
|
|
|
|
using std::csub_match;
|
|
using std::ssub_match;
|
|
# ifndef _LIBCPP_HAS_NO_WIDE_CHARACTERS
|
|
using std::wcsub_match;
|
|
using std::wssub_match;
|
|
# endif
|
|
|
|
// [re.submatch.op], sub_match non-member operators
|
|
using std::operator==;
|
|
using std::operator<=>;
|
|
# if 1 // P1614
|
|
using std::operator!=;
|
|
# endif
|
|
|
|
using std::operator<<;
|
|
|
|
// [re.results], class template match_results
|
|
using std::match_results;
|
|
|
|
using std::cmatch;
|
|
using std::smatch;
|
|
# ifndef _LIBCPP_HAS_NO_WIDE_CHARACTERS
|
|
using std::wcmatch;
|
|
using std::wsmatch;
|
|
# endif
|
|
|
|
// match_results comparisons
|
|
|
|
// [re.results.swap], match_results swap
|
|
|
|
// [re.alg.match], function template regex_match
|
|
using std::regex_match;
|
|
|
|
// [re.alg.search], function template regex_search
|
|
using std::regex_search;
|
|
|
|
// [re.alg.replace], function template regex_replace
|
|
using std::regex_replace;
|
|
|
|
// [re.regiter], class template regex_iterator
|
|
using std::regex_iterator;
|
|
|
|
using std::cregex_iterator;
|
|
using std::sregex_iterator;
|
|
# ifndef _LIBCPP_HAS_NO_WIDE_CHARACTERS
|
|
using std::wcregex_iterator;
|
|
using std::wsregex_iterator;
|
|
# endif
|
|
|
|
// [re.tokiter], class template regex_token_iterator
|
|
using std::regex_token_iterator;
|
|
|
|
using std::cregex_token_iterator;
|
|
using std::sregex_token_iterator;
|
|
# ifndef _LIBCPP_HAS_NO_WIDE_CHARACTERS
|
|
using std::wcregex_token_iterator;
|
|
using std::wsregex_token_iterator;
|
|
# endif
|
|
|
|
namespace pmr {
|
|
using std::pmr::match_results;
|
|
|
|
using std::pmr::cmatch;
|
|
using std::pmr::smatch;
|
|
# ifndef _LIBCPP_HAS_NO_WIDE_CHARACTERS
|
|
using std::pmr::wcmatch;
|
|
using std::pmr::wsmatch;
|
|
# endif
|
|
} // namespace pmr
|
|
} // namespace std
|
|
#endif // _LIBCPP_HAS_NO_LOCALIZATION
|