]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - contrib/libc++/include/experimental/ratio
Upgrade LDNS to 1.7.0.
[FreeBSD/FreeBSD.git] / contrib / libc++ / include / experimental / ratio
1 // -*- C++ -*-
2 //===------------------------------ ratio ---------------------------------===//
3 //
4 //                     The LLVM Compiler Infrastructure
5 //
6 // This file is distributed under the University of Illinois Open Source
7 // License. See LICENSE.TXT for details.
8 //
9 //===----------------------------------------------------------------------===//
10
11 #ifndef _LIBCPP_EXPERIMENTAL_RATIO
12 #define _LIBCPP_EXPERIMENTAL_RATIO
13
14 /**
15     experimental/ratio synopsis
16     C++1y
17 #include <ratio>
18
19 namespace std {
20 namespace experimental {
21 inline namespace fundamentals_v1 {
22
23   // See C++14 20.11.5, ratio comparison
24   template <class R1, class R2> constexpr bool ratio_equal_v
25     = ratio_equal<R1, R2>::value;
26   template <class R1, class R2> constexpr bool ratio_not_equal_v
27     = ratio_not_equal<R1, R2>::value;
28   template <class R1, class R2> constexpr bool ratio_less_v
29     = ratio_less<R1, R2>::value;
30   template <class R1, class R2> constexpr bool ratio_less_equal_v
31     = ratio_less_equal<R1, R2>::value;
32   template <class R1, class R2> constexpr bool ratio_greater_v
33     = ratio_greater<R1, R2>::value;
34   template <class R1, class R2> constexpr bool ratio_greater_equal_v
35     = ratio_greater_equal<R1, R2>::value;
36
37 } // namespace fundamentals_v1
38 } // namespace experimental
39 } // namespace std
40
41 */
42
43 #include <experimental/__config>
44
45 #if _LIBCPP_STD_VER > 11
46
47 #include <ratio>
48
49 _LIBCPP_BEGIN_NAMESPACE_LFTS
50
51 #ifndef _LIBCPP_HAS_NO_VARIABLE_TEMPLATES
52
53 template <class _R1, class _R2> _LIBCPP_CONSTEXPR bool ratio_equal_v
54     = ratio_equal<_R1, _R2>::value;
55
56 template <class _R1, class _R2> _LIBCPP_CONSTEXPR bool ratio_not_equal_v
57     = ratio_not_equal<_R1, _R2>::value;
58
59 template <class _R1, class _R2> _LIBCPP_CONSTEXPR bool ratio_less_v
60     = ratio_less<_R1, _R2>::value;
61
62 template <class _R1, class _R2> _LIBCPP_CONSTEXPR bool ratio_less_equal_v
63     = ratio_less_equal<_R1, _R2>::value;
64
65 template <class _R1, class _R2> _LIBCPP_CONSTEXPR bool ratio_greater_v
66     = ratio_greater<_R1, _R2>::value;
67
68 template <class _R1, class _R2> _LIBCPP_CONSTEXPR bool ratio_greater_equal_v
69     = ratio_greater_equal<_R1, _R2>::value;
70
71 #endif /* _LIBCPP_HAS_NO_VARIABLE_TEMPLATES */
72
73 _LIBCPP_END_NAMESPACE_LFTS
74
75 #endif /* _LIBCPP_STD_VER > 11 */
76
77 #endif // _LIBCPP_EXPERIMENTAL_RATIO