1// -*- C++ -*-
2//===----------------------------- regex ----------------------------------===//
3//
4//                     The LLVM Compiler Infrastructure
5//
6// This file is dual licensed under the MIT and the University of Illinois Open
7// Source Licenses. See LICENSE.TXT for details.
8//
9//===----------------------------------------------------------------------===//
10
11#ifndef _LIBCPP_EXPERIMENTAL_REGEX
12#define _LIBCPP_EXPERIMENTAL_REGEX
13/*
14    experimental/regex synopsis
15
16// C++1z
17namespace std {
18namespace experimental {
19inline namespace fundamentals_v1 {
20namespace pmr {
21
22  template <class BidirectionalIterator>
23  using match_results =
24    std::match_results<BidirectionalIterator,
25                       polymorphic_allocator<sub_match<BidirectionalIterator>>>;
26
27  typedef match_results<const char*> cmatch;
28  typedef match_results<const wchar_t*> wcmatch;
29  typedef match_results<string::const_iterator> smatch;
30  typedef match_results<wstring::const_iterator> wsmatch;
31
32} // namespace pmr
33} // namespace fundamentals_v1
34} // namespace experimental
35} // namespace std
36
37 */
38
39#include <experimental/__config>
40#include <regex>
41#include <experimental/string>
42#include <experimental/memory_resource>
43
44#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
45#pragma GCC system_header
46#endif
47
48_LIBCPP_BEGIN_NAMESPACE_LFTS_PMR
49
50template <class _BiDirIter>
51using match_results =
52    _VSTD::match_results<_BiDirIter,
53        polymorphic_allocator<_VSTD::sub_match<_BiDirIter>>>;
54
55typedef match_results<const char*> cmatch;
56typedef match_results<const wchar_t*> wcmatch;
57typedef match_results<_VSTD_LFTS_PMR::string::const_iterator> smatch;
58typedef match_results<_VSTD_LFTS_PMR::wstring::const_iterator> wsmatch;
59
60_LIBCPP_END_NAMESPACE_LFTS_PMR
61
62#endif /* _LIBCPP_EXPERIMENTAL_REGEX */
63