@@ -82,13 +82,13 @@ namespace detail {
8282// /
8383// / \returns true if lhs is equal to rhs; false otherwise
8484template <class T , class U >
85- detail::enable_not_eq_comp_t <T, U> eq (const T& lhs, const U& rhs) noexcept {
85+ constexpr detail::enable_not_eq_comp_t <T, U> eq (const T& lhs, const U& rhs) noexcept {
8686 return boost::pfr::eq_fields (lhs, rhs);
8787}
8888
8989// / \overload eq
9090template <class T , class U >
91- detail::enable_eq_comp_t <T, U> eq (const T& lhs, const U& rhs) {
91+ constexpr detail::enable_eq_comp_t <T, U> eq (const T& lhs, const U& rhs) {
9292 return lhs == rhs;
9393}
9494
@@ -97,13 +97,13 @@ detail::enable_eq_comp_t<T, U> eq(const T& lhs, const U& rhs) {
9797// /
9898// / \returns true if lhs is not equal to rhs; false otherwise
9999template <class T , class U >
100- detail::enable_not_ne_comp_t <T, U> ne (const T& lhs, const U& rhs) noexcept {
100+ constexpr detail::enable_not_ne_comp_t <T, U> ne (const T& lhs, const U& rhs) noexcept {
101101 return boost::pfr::ne_fields (lhs, rhs);
102102}
103103
104104// / \overload ne
105105template <class T , class U >
106- detail::enable_ne_comp_t <T, U> ne (const T& lhs, const U& rhs) {
106+ constexpr detail::enable_ne_comp_t <T, U> ne (const T& lhs, const U& rhs) {
107107 return lhs != rhs;
108108}
109109
@@ -112,13 +112,13 @@ detail::enable_ne_comp_t<T, U> ne(const T& lhs, const U& rhs) {
112112// /
113113// / \returns true if lhs is less than rhs; false otherwise
114114template <class T , class U >
115- detail::enable_not_lt_comp_t <T, U> lt (const T& lhs, const U& rhs) noexcept {
115+ constexpr detail::enable_not_lt_comp_t <T, U> lt (const T& lhs, const U& rhs) noexcept {
116116 return boost::pfr::lt_fields (lhs, rhs);
117117}
118118
119119// / \overload lt
120120template <class T , class U >
121- detail::enable_lt_comp_t <T, U> lt (const T& lhs, const U& rhs) {
121+ constexpr detail::enable_lt_comp_t <T, U> lt (const T& lhs, const U& rhs) {
122122 return lhs < rhs;
123123}
124124
@@ -127,13 +127,13 @@ detail::enable_lt_comp_t<T, U> lt(const T& lhs, const U& rhs) {
127127// /
128128// / \returns true if lhs is greater than rhs; false otherwise
129129template <class T , class U >
130- detail::enable_not_gt_comp_t <T, U> gt (const T& lhs, const U& rhs) noexcept {
130+ constexpr detail::enable_not_gt_comp_t <T, U> gt (const T& lhs, const U& rhs) noexcept {
131131 return boost::pfr::gt_fields (lhs, rhs);
132132}
133133
134134// / \overload gt
135135template <class T , class U >
136- detail::enable_gt_comp_t <T, U> gt (const T& lhs, const U& rhs) {
136+ constexpr detail::enable_gt_comp_t <T, U> gt (const T& lhs, const U& rhs) {
137137 return lhs > rhs;
138138}
139139
@@ -142,13 +142,13 @@ detail::enable_gt_comp_t<T, U> gt(const T& lhs, const U& rhs) {
142142// /
143143// / \returns true if lhs is less or equal to rhs; false otherwise
144144template <class T , class U >
145- detail::enable_not_le_comp_t <T, U> le (const T& lhs, const U& rhs) noexcept {
145+ constexpr detail::enable_not_le_comp_t <T, U> le (const T& lhs, const U& rhs) noexcept {
146146 return boost::pfr::le_fields (lhs, rhs);
147147}
148148
149149// / \overload le
150150template <class T , class U >
151- detail::enable_le_comp_t <T, U> le (const T& lhs, const U& rhs) {
151+ constexpr detail::enable_le_comp_t <T, U> le (const T& lhs, const U& rhs) {
152152 return lhs <= rhs;
153153}
154154
@@ -157,13 +157,13 @@ detail::enable_le_comp_t<T, U> le(const T& lhs, const U& rhs) {
157157// /
158158// / \returns true if lhs is greater or equal to rhs; false otherwise
159159template <class T , class U >
160- detail::enable_not_ge_comp_t <T, U> ge (const T& lhs, const U& rhs) noexcept {
160+ constexpr detail::enable_not_ge_comp_t <T, U> ge (const T& lhs, const U& rhs) noexcept {
161161 return boost::pfr::ge_fields (lhs, rhs);
162162}
163163
164164// / \overload ge
165165template <class T , class U >
166- detail::enable_ge_comp_t <T, U> ge (const T& lhs, const U& rhs) {
166+ constexpr detail::enable_ge_comp_t <T, U> ge (const T& lhs, const U& rhs) {
167167 return lhs >= rhs;
168168}
169169
@@ -172,13 +172,13 @@ detail::enable_ge_comp_t<T, U> ge(const T& lhs, const U& rhs) {
172172// /
173173// / \returns std::size_t with hash of the value
174174template <class T >
175- detail::enable_not_hashable_t <T> hash_value (const T& value) noexcept {
175+ constexpr detail::enable_not_hashable_t <T> hash_value (const T& value) noexcept {
176176 return boost::pfr::hash_fields (value);
177177}
178178
179179// / \overload hash_value
180180template <class T >
181- detail::enable_hashable_t <T> hash_value (const T& value) {
181+ constexpr detail::enable_hashable_t <T> hash_value (const T& value) {
182182 return std::hash<T>{}(value);
183183}
184184
0 commit comments