YOrch
1.0.0
Loading...
Searching...
No Matches
policies.hpp
Go to the documentation of this file.
1
#pragma once
2
3
#include <type_traits>
4
5
namespace
yorch
{
6
17
struct
fanout_auto_policy
{};
18
32
struct
fanout_shared_readonly_policy
{};
33
46
struct
fanout_consume_with_copies_policy
{};
47
48
}
// namespace yorch
49
50
namespace
yorch::detail
{
51
52
template
<
typename
FanoutPolicy>
53
concept
fanout_policy
=
54
std::is_same_v<std::remove_cvref_t<FanoutPolicy>,
yorch::fanout_auto_policy
> ||
55
std::is_same_v<std::remove_cvref_t<FanoutPolicy>,
yorch::fanout_shared_readonly_policy
> ||
56
std::is_same_v<std::remove_cvref_t<FanoutPolicy>,
yorch::fanout_consume_with_copies_policy
>;
57
58
}
// namespace yorch::detail
yorch::detail::fanout_policy
Definition
policies.hpp:53
yorch::detail
Definition
adapters.hpp:48
yorch
Definition
adapters.hpp:9
yorch::fanout_auto_policy
Default fanout policy.
Definition
policies.hpp:17
yorch::fanout_consume_with_copies_policy
Mixed fanout policy that allows one consumer plus any number of copies.
Definition
policies.hpp:46
yorch::fanout_shared_readonly_policy
Explicit readonly fanout policy.
Definition
policies.hpp:32
include
yorch
task_tree
policies.hpp
Generated by
1.9.8