diff options
| author | mikhnenko <[email protected]> | 2024-11-13 19:49:47 +0300 | 
|---|---|---|
| committer | mikhnenko <[email protected]> | 2024-11-13 20:05:17 +0300 | 
| commit | 3a1f180ce38fcdb92d6e67966a1c7e957ff9bcc9 (patch) | |
| tree | e784fb8ca03783bbc1c10d76dc899a7328063657 /contrib/libs/cxxsupp/libcxxcuda11/include/experimental/regex | |
| parent | 593d804b3cb5202c629726e873c66ce3eb20b1a7 (diff) | |
Freeze libcxx for cuda without c++20 support
commit_hash:c2eb32b5cb16638c17c6fc6900738f26ba6eca49
Diffstat (limited to 'contrib/libs/cxxsupp/libcxxcuda11/include/experimental/regex')
| -rw-r--r-- | contrib/libs/cxxsupp/libcxxcuda11/include/experimental/regex | 69 | 
1 files changed, 69 insertions, 0 deletions
diff --git a/contrib/libs/cxxsupp/libcxxcuda11/include/experimental/regex b/contrib/libs/cxxsupp/libcxxcuda11/include/experimental/regex new file mode 100644 index 00000000000..0c871f366dc --- /dev/null +++ b/contrib/libs/cxxsupp/libcxxcuda11/include/experimental/regex @@ -0,0 +1,69 @@ +// -*- 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 +// +//===----------------------------------------------------------------------===// + +#ifndef _LIBCPP_EXPERIMENTAL_REGEX +#define _LIBCPP_EXPERIMENTAL_REGEX + +/* +    experimental/regex synopsis + +// C++1z +namespace std { +namespace experimental { +inline namespace fundamentals_v1 { +namespace pmr { + +  template <class BidirectionalIterator> +  using match_results = +    std::match_results<BidirectionalIterator, +                       polymorphic_allocator<sub_match<BidirectionalIterator>>>; + +  typedef match_results<const char*> cmatch; +  typedef match_results<const wchar_t*> wcmatch; +  typedef match_results<string::const_iterator> smatch; +  typedef match_results<wstring::const_iterator> wsmatch; + +} // namespace pmr +} // namespace fundamentals_v1 +} // namespace experimental +} // namespace std + + */ + +#include <__assert> // all public C++ headers provide the assertion handler +#include <experimental/__config> +#include <experimental/memory_resource> +#include <experimental/string> +#include <regex> + +#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) +#  pragma GCC system_header +#endif + +_LIBCPP_BEGIN_NAMESPACE_LFTS_PMR + +#ifndef _LIBCPP_CXX03_LANG + +template <class _BiDirIter> +using match_results = +    _VSTD::match_results<_BiDirIter, +        polymorphic_allocator<_VSTD::sub_match<_BiDirIter>>>; + +_LIBCPP_DEPCREATED_MEMORY_RESOURCE("cmatch") typedef match_results<const char*> cmatch; +_LIBCPP_DEPCREATED_MEMORY_RESOURCE("smatch") typedef match_results<_VSTD_LFTS_PMR::string::const_iterator> smatch; +#ifndef _LIBCPP_HAS_NO_WIDE_CHARACTERS +_LIBCPP_DEPCREATED_MEMORY_RESOURCE("wcmatch") typedef match_results<const wchar_t*> wcmatch; +_LIBCPP_DEPCREATED_MEMORY_RESOURCE("wsmatch") typedef match_results<_VSTD_LFTS_PMR::wstring::const_iterator> wsmatch; +#endif + +#endif // _LIBCPP_CXX03_LANG + +_LIBCPP_END_NAMESPACE_LFTS_PMR + +#endif /* _LIBCPP_EXPERIMENTAL_REGEX */  | 
