13 requires (
sizeof...(Nodes) == 0) &&
23 static_cast<const Derived*
>(
this),
30 template <
typename F,
typename FanoutPolicy>
31 requires (
sizeof...(Nodes) == 0) &&
39 std::decay_t<FanoutPolicy>,
42 static_cast<const Derived*
>(
this),
49 template <
typename F,
typename AdapterChain>
50 requires (
sizeof...(Nodes) == 0) &&
59 std::decay_t<AdapterChain>
61 static_cast<const Derived*
>(
this),
64 std::forward<AdapterChain>(adapter_specs)
68 template <
typename F,
typename FanoutPolicy,
typename AdapterChain>
69 requires (
sizeof...(Nodes) == 0) &&
78 std::decay_t<FanoutPolicy>,
79 std::decay_t<AdapterChain>
81 static_cast<const Derived*
>(
this),
84 std::forward<AdapterChain>(adapter_specs)
88 template <
typename F,
typename ReceiverSpec>
89 requires (
sizeof...(Nodes) == 0) &&
98 std::decay_t<ReceiverSpec>,
102 static_cast<const Derived*
>(
this),
104 std::forward<ReceiverSpec>(receiver_spec),
110 template <
typename F,
typename ReceiverSpec,
typename FanoutPolicy>
111 requires (
sizeof...(Nodes) == 0) &&
121 std::decay_t<ReceiverSpec>,
122 std::decay_t<FanoutPolicy>,
125 static_cast<const Derived*
>(
this),
127 std::forward<ReceiverSpec>(receiver_spec),
133 template <
typename F,
typename ReceiverSpec,
typename AdapterChain>
134 requires (
sizeof...(Nodes) == 0) &&
144 std::decay_t<ReceiverSpec>,
146 std::decay_t<AdapterChain>
148 static_cast<const Derived*
>(
this),
150 std::forward<ReceiverSpec>(receiver_spec),
152 std::forward<AdapterChain>(adapter_specs)
156 template <
typename F,
typename ReceiverSpec,
typename FanoutPolicy,
typename AdapterChain>
157 requires (
sizeof...(Nodes) == 0) &&
168 std::decay_t<ReceiverSpec>,
169 std::decay_t<FanoutPolicy>,
170 std::decay_t<AdapterChain>
172 static_cast<const Derived*
>(
this),
174 std::forward<ReceiverSpec>(receiver_spec),
176 std::forward<AdapterChain>(adapter_specs)
180 template <
typename F>
181 requires (
sizeof...(Nodes) == 0) &&
198 template <
typename F,
typename FanoutPolicy>
199 requires (
sizeof...(Nodes) == 0) &&
207 std::decay_t<FanoutPolicy>,
217 template <
typename F,
typename AdapterChain>
218 requires (
sizeof...(Nodes) == 0) &&
227 std::decay_t<AdapterChain>
232 std::forward<AdapterChain>(adapter_specs)
236 template <
typename F,
typename FanoutPolicy,
typename AdapterChain>
237 requires (
sizeof...(Nodes) == 0) &&
246 std::decay_t<FanoutPolicy>,
247 std::decay_t<AdapterChain>
252 std::forward<AdapterChain>(adapter_specs)
256 template <
typename F,
typename ReceiverSpec>
257 requires (
sizeof...(Nodes) == 0) &&
266 std::decay_t<ReceiverSpec>,
272 std::forward<ReceiverSpec>(receiver_spec),
278 template <
typename F,
typename ReceiverSpec,
typename FanoutPolicy>
279 requires (
sizeof...(Nodes) == 0) &&
289 std::decay_t<ReceiverSpec>,
290 std::decay_t<FanoutPolicy>,
295 std::forward<ReceiverSpec>(receiver_spec),
301 template <
typename F,
typename ReceiverSpec,
typename AdapterChain>
302 requires (
sizeof...(Nodes) == 0) &&
312 std::decay_t<ReceiverSpec>,
314 std::decay_t<AdapterChain>
318 std::forward<ReceiverSpec>(receiver_spec),
320 std::forward<AdapterChain>(adapter_specs)
324 template <
typename F,
typename ReceiverSpec,
typename FanoutPolicy,
typename AdapterChain>
325 requires (
sizeof...(Nodes) == 0) &&
336 std::decay_t<ReceiverSpec>,
337 std::decay_t<FanoutPolicy>,
338 std::decay_t<AdapterChain>
342 std::forward<ReceiverSpec>(receiver_spec),
344 std::forward<AdapterChain>(adapter_specs)
constexpr bool is_adapter_descriptor_v
constexpr auto root_forward_prev(F &&f, FanoutPolicy &&fanout_policy, AdapterChain &&adapter_specs) &&
constexpr auto root_forward_prev_member(F &&f, ReceiverSpec &&receiver_spec, AdapterChain &&adapter_specs) &&
constexpr auto root_forward_prev_member(F &&f, ReceiverSpec &&receiver_spec) &&
constexpr auto root_forward_prev(F &&f) const &
constexpr auto root_forward_prev(F &&f) &&
constexpr auto root_forward_prev_member(F &&f, ReceiverSpec &&receiver_spec, AdapterChain &&adapter_specs) const &
constexpr auto root_forward_prev_member(F &&f, ReceiverSpec &&receiver_spec, FanoutPolicy &&fanout_policy, AdapterChain &&adapter_specs) &&
constexpr auto root_forward_prev_member(F &&f, ReceiverSpec &&receiver_spec, FanoutPolicy &&fanout_policy, AdapterChain &&adapter_specs) const &
constexpr auto root_forward_prev_member(F &&f, ReceiverSpec &&receiver_spec, FanoutPolicy &&fanout_policy) const &
constexpr auto root_forward_prev(F &&f, FanoutPolicy &&fanout_policy) const &
constexpr auto root_forward_prev_member(F &&f, ReceiverSpec &&receiver_spec) const &
constexpr auto root_forward_prev_member(F &&f, ReceiverSpec &&receiver_spec, FanoutPolicy &&fanout_policy) &&
constexpr auto root_forward_prev(F &&f, AdapterChain &&adapter_specs) const &
constexpr auto root_forward_prev(F &&f, AdapterChain &&adapter_specs) &&
constexpr auto root_forward_prev(F &&f, FanoutPolicy &&fanout_policy, AdapterChain &&adapter_specs) const &
constexpr auto root_forward_prev(F &&f, FanoutPolicy &&fanout_policy) &&