31#ifndef ETL_FUNCTION_TRAITS_INCLUDED
32#define ETL_FUNCTION_TRAITS_INCLUDED
45 template <
typename T,
typename Enable =
void>
58 using object_type =
void;
64 static constexpr bool is_const =
false;
65 static constexpr bool is_volatile =
false;
67 static constexpr size_t arity =
sizeof...(TArgs);
69 ETL_DEPRECATED_REASON(
"Use etl::function_traits::arity instead")
85#if ETL_HAS_NOEXCEPT_FUNCTION_TYPE
111 using object_type = TObject;
112 static constexpr bool is_function =
false;
113 static constexpr bool is_member_function =
true;
122 static constexpr bool is_const =
true;
131 static constexpr bool is_volatile =
true;
140 static constexpr bool is_const =
true;
141 static constexpr bool is_volatile =
true;
144#if ETL_HAS_NOEXCEPT_FUNCTION_TYPE
151 static constexpr bool is_noexcept =
true;
160 static constexpr bool is_noexcept =
true;
169 static constexpr bool is_noexcept =
true;
178 static constexpr bool is_noexcept =
true;
185 template <
typename T>
187 !etl::is_class<etl::decay_t<T>>::value>>
200 template <
typename U>
201 using call_operator_ptr_t =
decltype(&U::operator());
207 template <
typename T>
209 etl::has_unique_call_operator<T>::value>>
210 :
function_traits<private_function_traits::call_operator_ptr_t<etl::decay_t<T>> >
212 static constexpr bool is_functor =
true;
260#if ETL_HAS_NOEXCEPT_FUNCTION_TYPE
280 template <
typename T>
bitset_ext
Definition absolute.h:39
ETL_NODISCARD ETL_CONSTEXPR14 T round_half_even_unscaled(T value) ETL_NOEXCEPT
Definition scaled_rounding.h:315