blob: 757f24e086149df020f882e9de5ca70285725464 [file] [log] [blame]
Dan Albert287553d2017-02-16 10:47:51 -08001// -*- 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
19namespace std {
20namespace experimental {
21inline 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
53template <class _R1, class _R2> _LIBCPP_CONSTEXPR bool ratio_equal_v
54 = ratio_equal<_R1, _R2>::value;
55
56template <class _R1, class _R2> _LIBCPP_CONSTEXPR bool ratio_not_equal_v
57 = ratio_not_equal<_R1, _R2>::value;
58
59template <class _R1, class _R2> _LIBCPP_CONSTEXPR bool ratio_less_v
60 = ratio_less<_R1, _R2>::value;
61
62template <class _R1, class _R2> _LIBCPP_CONSTEXPR bool ratio_less_equal_v
63 = ratio_less_equal<_R1, _R2>::value;
64
65template <class _R1, class _R2> _LIBCPP_CONSTEXPR bool ratio_greater_v
66 = ratio_greater<_R1, _R2>::value;
67
68template <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