Add is_lvalue_reference
This commit is contained in:
1 parent
ce31ef017f
commit
65d8928ff4
1 file changed
+4
@@ -63,6 +63,10 @@ template <typename T> struct is_reference<T &> : true_type {};
|
|||||||
template <typename T> struct is_reference<T &&> : true_type {};
|
template <typename T> struct is_reference<T &&> : true_type {};
|
||||||
template <typename T> inline constexpr bool is_reference_v = is_reference<T>::value;
|
template <typename T> inline constexpr bool is_reference_v = is_reference<T>::value;
|
||||||
|
|
||||||
|
template <typename T> struct is_lvalue_reference : false_type {};
|
||||||
|
template <typename T> struct is_lvalue_reference<T &> : true_type {};
|
||||||
|
template <typename T> inline constexpr bool is_lvalue_reference_v = is_lvalue_reference<T>::value;
|
||||||
|
|
||||||
template <typename T> struct is_function : integral_constant<bool, !is_const_v<const T> && !is_reference_v<T>> {};
|
template <typename T> struct is_function : integral_constant<bool, !is_const_v<const T> && !is_reference_v<T>> {};
|
||||||
template <typename T> inline constexpr bool is_function_v = is_function<T>::value;
|
template <typename T> inline constexpr bool is_function_v = is_function<T>::value;
|
||||||
|
|
||||||
|
|||||||
Reference in new issue
Block a user