]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - contrib/libc++/include/experimental/system_error
MFV r337818:
[FreeBSD/FreeBSD.git] / contrib / libc++ / include / experimental / system_error
1 // -*- C++ -*-
2 //===-------------------------- system_error ------------------------------===//
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_SYSTEM_ERROR
12 #define _LIBCPP_EXPERIMENTAL_SYSTEM_ERROR
13
14 /**
15     experimental/system_error synopsis
16
17 // C++1y
18
19 #include <system_error>
20
21 namespace std {
22 namespace experimental {
23 inline namespace fundamentals_v1 {
24
25   // See C++14 19.5, System error support
26   template <class T> constexpr bool is_error_code_enum_v
27     = is_error_code_enum<T>::value;
28   template <class T> constexpr bool is_error_condition_enum_v
29     = is_error_condition_enum<T>::value;
30
31 } // namespace fundamentals_v1
32 } // namespace experimental
33 } // namespace std
34
35 */
36
37 #include <experimental/__config>
38
39 #if _LIBCPP_STD_VER > 11
40
41 #include <system_error>
42
43 #if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
44 #pragma GCC system_header
45 #endif
46
47 _LIBCPP_BEGIN_NAMESPACE_LFTS
48
49 #ifndef _LIBCPP_HAS_NO_VARIABLE_TEMPLATES
50
51 template <class _Tp> _LIBCPP_CONSTEXPR bool is_error_code_enum_v
52     = is_error_code_enum<_Tp>::value;
53
54 template <class _Tp> _LIBCPP_CONSTEXPR bool is_error_condition_enum_v
55     = is_error_condition_enum<_Tp>::value;
56
57 #endif /* _LIBCPP_HAS_NO_VARIABLE_TEMPLATES */
58
59 _LIBCPP_END_NAMESPACE_LFTS
60
61 #endif /* _LIBCPP_STD_VER > 11 */
62
63 #endif /* _LIBCPP_EXPERIMENTAL_SYSTEM_ERROR */