Lines Matching refs:details
159 static_assert(N <= details::kFunctionMaximumN);
161 using OpaqueStorageTraits = details::function_opaque_storage<N>;
176 Function(NoOpTag) : function_(details::bind_opaque_no_op<Ret, Args...>()) {}
187 function_(details::bind_opaque_function_object<F, Ret, Args...>(f)) {}
192 details::bind_opaque_function_object<F, Ret, Args...>(f)};
233 details::bind_member_function<MemberFunction>(instance,
235 return Function{details::bind_member_function<MemberFunction>(
242 details::bind_free_function<FreeFunction>(static_cast<Ret (*)(Args...)>(nullptr))}) {
244 details::bind_free_function<FreeFunction>(static_cast<Ret (*)(Args...)>(nullptr))};
271 template <typename F, typename T = details::function_traits<F>>
282 -> decltype(Function{details::bind_member_function<MemberFunction>(
284 static_cast<details::remove_member_function_pointer_t<MemberFunction>*>(nullptr))}) {
285 return Function{details::bind_member_function<MemberFunction>(
286 instance, static_cast<details::remove_member_function_pointer_t<MemberFunction>*>(nullptr))};
292 details::bind_free_function<FreeFunction>(static_cast<decltype(FreeFunction)>(nullptr))}) {
294 details::bind_free_function<FreeFunction>(static_cast<decltype(FreeFunction)>(nullptr))};