Iros
Loading...
Searching...
No Matches
stoppable_token_for.h
Go to the documentation of this file.
1
#pragma once
2
3
#include "
di/function/invoke.h
"
4
#include "
di/meta/operations.h
"
5
#include "
di/sync/concepts/stoppable_token.h
"
6
7
namespace
di::concepts
{
8
template
<
typename
T,
typename
Callback,
typename
Init = Callback>
9
concept
StoppableTokenFor
=
10
StoppableToken<T>
&&
Invocable<Callback>
&&
requires
{
typename
T::template CallbackType<Callback>; } &&
11
ConstructibleFrom<Callback, Init>
&&
ConstructibleFrom<typename T::template CallbackType<Callback>
, T, Init> &&
12
ConstructibleFrom<typename T::template CallbackType<Callback>
, T&, Init> &&
13
ConstructibleFrom<typename T::template CallbackType<Callback>
, T
const
, Init> &&
14
ConstructibleFrom<typename T::template CallbackType<Callback>
, T
const
&, Init>;
15
}
di::concepts::ConstructibleFrom
Definition
operations.h:11
di::concepts::Invocable
Definition
invoke.h:58
di::concepts::StoppableTokenFor
Definition
stoppable_token_for.h:9
di::concepts::StoppableToken
Definition
stoppable_token.h:13
operations.h
invoke.h
di::concepts
Definition
any_storable.h:9
stoppable_token.h
libs
di
include
di
sync
concepts
stoppable_token_for.h
Generated by
1.13.0