Lines Matching refs:_Callable
130 template<typename _Callable, typename... _Args,
131 typename = _Require<__not_same<_Callable>>>
133 thread(_Callable&& __f, _Args&&... __args)
135 static_assert( __is_invocable<typename decay<_Callable>::type,
147 using _Invoker_type = _Invoker<__decayed_tuple<_Callable, _Args...>>;
150 std::forward<_Callable>(__f), std::forward<_Args>(__args)...),
204 template<typename _Callable>
207 _Callable _M_func;
221 template<typename _Callable, typename... _Args>
225 using _Impl = _State_impl<_Callable>;
281 template<typename _Callable, typename... _Args>
282 static _Invoker<__decayed_tuple<_Callable, _Args...>>
283 __make_invoker(_Callable&& __callable, _Args&&... __args)
285 return { __decayed_tuple<_Callable, _Args...>{
286 std::forward<_Callable>(__callable), std::forward<_Args>(__args)...
445 template<typename _Callable, typename... _Args,
446 typename = enable_if_t<!is_same_v<remove_cvref_t<_Callable>,
449 jthread(_Callable&& __f, _Args&&... __args)
450 : _M_thread{_S_create(_M_stop_source, std::forward<_Callable>(__f),
542 template<typename _Callable, typename... _Args>
544 _S_create(stop_source& __ssrc, _Callable&& __f, _Args&&... __args)
546 if constexpr(is_invocable_v<decay_t<_Callable>, stop_token,
548 return thread{std::forward<_Callable>(__f), __ssrc.get_token(),
552 static_assert(is_invocable_v<decay_t<_Callable>,
556 return thread{std::forward<_Callable>(__f),