From Jason Turner

[exec.domain.default]

Diff to HTML by rtfpessoa

Files changed (1) hide show
  1. tmp/tmp0qwrfx8_/{from.md → to.md} +76 -0
tmp/tmp0qwrfx8_/{from.md → to.md} RENAMED
@@ -0,0 +1,76 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ### `execution::default_domain` <a id="exec.domain.default">[[exec.domain.default]]</a>
2
+
3
+ ``` cpp
4
+ namespace std::execution {
5
+ struct default_domain {
6
+ template<sender Sndr, queryable... Env>
7
+ requires (sizeof...(Env) <= 1)
8
+ static constexpr sender decltype(auto) transform_sender(Sndr&& sndr, const Env&... env)
9
+ noexcept(see below);
10
+
11
+ template<sender Sndr, queryable Env>
12
+ static constexpr queryable decltype(auto) transform_env(Sndr&& sndr, Env&& env) noexcept;
13
+
14
+ template<class Tag, sender Sndr, class... Args>
15
+ static constexpr decltype(auto) apply_sender(Tag, Sndr&& sndr, Args&&... args)
16
+ noexcept(see below);
17
+ };
18
+ }
19
+ ```
20
+
21
+ ``` cpp
22
+ template<sender Sndr, queryable... Env>
23
+ requires (sizeof...(Env) <= 1)
24
+ constexpr sender decltype(auto) transform_sender(Sndr&& sndr, const Env&... env)
25
+ noexcept(see below);
26
+ ```
27
+
28
+ Let `e` be the expression
29
+
30
+ ``` cpp
31
+ tag_of_t<Sndr>().transform_sender(std::forward<Sndr>(sndr), env...)
32
+ ```
33
+
34
+ if that expression is well-formed; otherwise,
35
+ `std::forward<Sndr>(sndr)`.
36
+
37
+ *Returns:* `e`.
38
+
39
+ *Remarks:* The exception specification is equivalent to `noexcept(e)`.
40
+
41
+ ``` cpp
42
+ template<sender Sndr, queryable Env>
43
+ constexpr queryable decltype(auto) transform_env(Sndr&& sndr, Env&& env) noexcept;
44
+ ```
45
+
46
+ Let `e` be the expression
47
+
48
+ ``` cpp
49
+ tag_of_t<Sndr>().transform_env(std::forward<Sndr>(sndr), std::forward<Env>(env))
50
+ ```
51
+
52
+ if that expression is well-formed; otherwise,
53
+ *`FWD-ENV`*`(std::forward<Env>(env))`.
54
+
55
+ *Mandates:* `noexcept(e)` is `true`.
56
+
57
+ *Returns:* `e`.
58
+
59
+ ``` cpp
60
+ template<class Tag, sender Sndr, class... Args>
61
+ constexpr decltype(auto) apply_sender(Tag, Sndr&& sndr, Args&&... args)
62
+ noexcept(see below);
63
+ ```
64
+
65
+ Let `e` be the expression
66
+
67
+ ``` cpp
68
+ Tag().apply_sender(std::forward<Sndr>(sndr), std::forward<Args>(args)...)
69
+ ```
70
+
71
+ *Constraints:* `e` is a well-formed expression.
72
+
73
+ *Returns:* `e`.
74
+
75
+ *Remarks:* The exception specification is equivalent to `noexcept(e)`.
76
+