12 template <
typename F,
typename ReceiverSpec>
13 requires (
sizeof...(Nodes) == 0) &&
22 std::decay_t<ReceiverSpec>,
26 static_cast<const Derived*
>(
this),
28 std::forward<ReceiverSpec>(receiver_spec),
34 template <
typename F,
typename ReceiverSpec,
typename FanoutPolicy>
35 requires (
sizeof...(Nodes) == 0) &&
45 std::decay_t<ReceiverSpec>,
46 std::decay_t<FanoutPolicy>,
49 static_cast<const Derived*
>(
this),
51 std::forward<ReceiverSpec>(receiver_spec),
57 template <
typename F,
typename ReceiverSpec,
typename AdapterChain>
58 requires (
sizeof...(Nodes) == 0) &&
68 std::decay_t<ReceiverSpec>,
70 std::decay_t<AdapterChain>
72 static_cast<const Derived*
>(
this),
74 std::forward<ReceiverSpec>(receiver_spec),
76 std::forward<AdapterChain>(adapter_specs)
80 template <
typename F,
typename ReceiverSpec,
typename FanoutPolicy,
typename AdapterChain>
81 requires (
sizeof...(Nodes) == 0) &&
92 std::decay_t<ReceiverSpec>,
93 std::decay_t<FanoutPolicy>,
94 std::decay_t<AdapterChain>
96 static_cast<const Derived*
>(
this),
98 std::forward<ReceiverSpec>(receiver_spec),
100 std::forward<AdapterChain>(adapter_specs)
104 template <
typename F,
typename ReceiverSpec>
105 requires (
sizeof...(Nodes) == 0) &&
114 std::decay_t<ReceiverSpec>,
118 static_cast<const Derived*
>(
this),
120 std::forward<ReceiverSpec>(receiver_spec),
126 template <
typename F,
typename ReceiverSpec,
typename FanoutPolicy>
127 requires (
sizeof...(Nodes) == 0) &&
137 std::decay_t<ReceiverSpec>,
138 std::decay_t<FanoutPolicy>,
141 static_cast<const Derived*
>(
this),
143 std::forward<ReceiverSpec>(receiver_spec),
149 template <
typename F,
typename ReceiverSpec,
typename AdapterChain>
150 requires (
sizeof...(Nodes) == 0) &&
160 std::decay_t<ReceiverSpec>,
162 std::decay_t<AdapterChain>
164 static_cast<const Derived*
>(
this),
166 std::forward<ReceiverSpec>(receiver_spec),
168 std::forward<AdapterChain>(adapter_specs)
172 template <
typename F,
typename ReceiverSpec,
typename FanoutPolicy,
typename AdapterChain>
173 requires (
sizeof...(Nodes) == 0) &&
184 std::decay_t<ReceiverSpec>,
185 std::decay_t<FanoutPolicy>,
186 std::decay_t<AdapterChain>
188 static_cast<const Derived*
>(
this),
190 std::forward<ReceiverSpec>(receiver_spec),
192 std::forward<AdapterChain>(adapter_specs)
196 template <
typename F,
typename ReceiverSpec>
197 requires (
sizeof...(Nodes) == 0) &&
206 std::decay_t<ReceiverSpec>,
212 std::forward<ReceiverSpec>(receiver_spec),
218 template <
typename F,
typename ReceiverSpec,
typename FanoutPolicy>
219 requires (
sizeof...(Nodes) == 0) &&
229 std::decay_t<ReceiverSpec>,
230 std::decay_t<FanoutPolicy>,
235 std::forward<ReceiverSpec>(receiver_spec),
241 template <
typename F,
typename ReceiverSpec,
typename AdapterChain>
242 requires (
sizeof...(Nodes) == 0) &&
252 std::decay_t<ReceiverSpec>,
254 std::decay_t<AdapterChain>
258 std::forward<ReceiverSpec>(receiver_spec),
260 std::forward<AdapterChain>(adapter_specs)
264 template <
typename F,
typename ReceiverSpec,
typename FanoutPolicy,
typename AdapterChain>
265 requires (
sizeof...(Nodes) == 0) &&
276 std::decay_t<ReceiverSpec>,
277 std::decay_t<FanoutPolicy>,
278 std::decay_t<AdapterChain>
282 std::forward<ReceiverSpec>(receiver_spec),
284 std::forward<AdapterChain>(adapter_specs)
288 template <
typename F,
typename ReceiverSpec>
289 requires (
sizeof...(Nodes) == 0) &&
298 std::decay_t<ReceiverSpec>,
304 std::forward<ReceiverSpec>(receiver_spec),
310 template <
typename F,
typename ReceiverSpec,
typename FanoutPolicy>
311 requires (
sizeof...(Nodes) == 0) &&
321 std::decay_t<ReceiverSpec>,
322 std::decay_t<FanoutPolicy>,
327 std::forward<ReceiverSpec>(receiver_spec),
333 template <
typename F,
typename ReceiverSpec,
typename AdapterChain>
334 requires (
sizeof...(Nodes) == 0) &&
344 std::decay_t<ReceiverSpec>,
346 std::decay_t<AdapterChain>
350 std::forward<ReceiverSpec>(receiver_spec),
352 std::forward<AdapterChain>(adapter_specs)
356 template <
typename F,
typename ReceiverSpec,
typename FanoutPolicy,
typename AdapterChain>
357 requires (
sizeof...(Nodes) == 0) &&
368 std::decay_t<ReceiverSpec>,
369 std::decay_t<FanoutPolicy>,
370 std::decay_t<AdapterChain>
374 std::forward<ReceiverSpec>(receiver_spec),
376 std::forward<AdapterChain>(adapter_specs)
constexpr bool is_adapter_descriptor_v
constexpr auto root_member(F &&f, ReceiverSpec &&receiver_spec, FanoutPolicy &&fanout_policy, AdapterChain &&adapter_specs) &&
constexpr auto root_into_member(F &&f, ReceiverSpec &&receiver_spec) &&
constexpr auto root_member(F &&f, ReceiverSpec &&receiver_spec) const &
constexpr auto root_member(F &&f, ReceiverSpec &&receiver_spec, FanoutPolicy &&fanout_policy) const &
constexpr auto root_into_member(F &&f, ReceiverSpec &&receiver_spec, FanoutPolicy &&fanout_policy) &&
constexpr auto root_into_member(F &&f, ReceiverSpec &&receiver_spec, FanoutPolicy &&fanout_policy, AdapterChain &&adapter_specs) &&
constexpr auto root_into_member(F &&f, ReceiverSpec &&receiver_spec) const &
constexpr auto root_member(F &&f, ReceiverSpec &&receiver_spec, FanoutPolicy &&fanout_policy, AdapterChain &&adapter_specs) const &
constexpr auto root_into_member(F &&f, ReceiverSpec &&receiver_spec, FanoutPolicy &&fanout_policy, AdapterChain &&adapter_specs) const &
constexpr auto root_member(F &&f, ReceiverSpec &&receiver_spec, AdapterChain &&adapter_specs) &&
constexpr auto root_into_member(F &&f, ReceiverSpec &&receiver_spec, AdapterChain &&adapter_specs) &&
constexpr auto root_into_member(F &&f, ReceiverSpec &&receiver_spec, FanoutPolicy &&fanout_policy) const &
constexpr auto root_member(F &&f, ReceiverSpec &&receiver_spec, AdapterChain &&adapter_specs) const &
constexpr auto root_member(F &&f, ReceiverSpec &&receiver_spec, FanoutPolicy &&fanout_policy) &&
constexpr auto root_into_member(F &&f, ReceiverSpec &&receiver_spec, AdapterChain &&adapter_specs) const &
constexpr auto root_member(F &&f, ReceiverSpec &&receiver_spec) &&