Iros
Loading...
Searching...
No Matches
sender.h
Go to the documentation of this file.
1
#pragma once
2
3
#include "
di/execution/concepts/queryable.h
"
4
#include "
di/execution/interface/enable_sender.h
"
5
#include "
di/execution/interface/get_env.h
"
6
#include "
di/meta/core.h
"
7
#include "
di/meta/operations.h
"
8
9
namespace
di::concepts
{
10
template
<
typename
Send>
11
concept
Sender
=
execution::enable_sender<meta::RemoveCVRef<Send>
> &&
requires
(
meta::RemoveCVRef<Send>
const
& sender) {
12
{
execution::get_env
(sender) } ->
Queryable
;
13
} &&
MoveConstructible<meta::RemoveCVRef<Send>
> &&
ConstructibleFrom<meta::RemoveCVRef<Send>
, Send>;
14
}
15
16
namespace
di
{
17
using
concepts::Sender
;
18
}
di::concepts::ConstructibleFrom
Definition
operations.h:11
di::concepts::MoveConstructible
Definition
operations.h:43
di::concepts::Queryable
Definition
queryable.h:7
di::concepts::Sender
Definition
sender.h:11
core.h
enable_sender.h
get_env.h
operations.h
di::concepts
Definition
any_storable.h:9
di::execution::get_env
constexpr auto get_env
Definition
get_env.h:27
di::execution::enable_sender
constexpr bool enable_sender
Definition
enable_sender.h:9
di::meta::RemoveCVRef
RemoveCV< RemoveReference< T > > RemoveCVRef
Definition
core.h:74
di
Definition
zstring_parser.h:9
queryable.h
libs
di
include
di
execution
concepts
sender.h
Generated by
1.13.0