|
200 | 200 |
|
201 | 201 | <p class="text-right"><small>
|
202 | 202 | 最終更新日時(UTC):
|
203 |
| - <span itemprop="datePublished" content="2025-05-29T10:52:55"> |
204 |
| - 2025年05月29日 10時52分55秒 |
| 203 | + <span itemprop="datePublished" content="2025-06-01T10:59:29"> |
| 204 | + 2025年06月01日 10時59分29秒 |
205 | 205 | </span>
|
206 | 206 | <br/>
|
207 | 207 | <span itemprop="author" itemscope itemtype="http://schema.org/Person">
|
@@ -305,20 +305,20 @@ <h3>Senderアルゴリズムタグ <code>let_value</code></h3>
|
305 | 305 | <p><div class="codehilite"><pre><span></span><code><span class="p">[]</span><span class="o"><</span><span class="k">class</span> <span class="nc">Tag</span><span class="p">,</span> <span class="n">class</span><span class="p">...</span> <span class="n">Args</span><span class="o">></span>
|
306 | 306 | <span class="p">(</span><span class="k">auto</span><span class="p">,</span> <span class="k">auto</span><span class="o">&</span> <span class="n">state</span><span class="p">,</span> <span class="k">auto</span><span class="o">&</span> <span class="n">rcvr</span><span class="p">,</span> <span class="n">Tag</span><span class="p">,</span> <span class="n">Args</span><span class="o">&&</span><span class="p">...</span> <span class="n">args</span><span class="p">)</span> <span class="k">noexcept</span> <span class="o">-></span> <span class="kt">void</span> <span class="p">{</span>
|
307 | 307 | <span class="k">if</span> <span class="k">constexpr</span> <span class="p">(</span><span class="n"><a href="../../concepts/same_as.html">same_as</a></span><span class="o"><</span><span class="n">Tag</span><span class="p">,</span> <span class="n"><a href="../../functional/decayed-typeof.html">decayed-typeof</a></span><span class="o"><</span><span class="n"><a href="set_value.html">set_value</a></span><span class="o">>></span><span class="p">)</span> <span class="p">{</span>
|
308 |
| - <span class="n"><span href="https://cpprefjp.github.io/reference/execution/execution/TRY-EVAL.md.nolink">TRY-EVAL</span></span><span class="p">(</span><span class="n">rcvr</span><span class="p">,</span> <span class="n">let</span><span class="o">-</span><span class="n">bind</span><span class="p">(</span><span class="n">state</span><span class="p">,</span> <span class="n">rcvr</span><span class="p">,</span> <span class="n"><a href="../../utility/forward.html">std::forward</a></span><span class="o"><</span><span class="n">Args</span><span class="o">></span><span class="p">(</span><span class="n">args</span><span class="p">)...));</span> |
| 308 | + <span class="n"><a href="set_value.html">TRY-EVAL</a></span><span class="p">(</span><span class="n">rcvr</span><span class="p">,</span> <span class="n">let</span><span class="o">-</span><span class="n">bind</span><span class="p">(</span><span class="n">state</span><span class="p">,</span> <span class="n">rcvr</span><span class="p">,</span> <span class="n"><a href="../../utility/forward.html">std::forward</a></span><span class="o"><</span><span class="n">Args</span><span class="o">></span><span class="p">(</span><span class="n">args</span><span class="p">)...));</span> |
309 | 309 | <span class="p">}</span> <span class="k">else</span> <span class="p">{</span>
|
310 | 310 | <span class="n">Tag</span><span class="p">()(</span><span class="n"><a href="../../utility/move.html">std::move</a></span><span class="p">(</span><span class="n">rcvr</span><span class="p">),</span> <span class="n"><a href="../../utility/forward.html">std::forward</a></span><span class="o"><</span><span class="n">Args</span><span class="o">></span><span class="p">(</span><span class="n">args</span><span class="p">)...);</span>
|
311 | 311 | <span class="p">}</span>
|
312 | 312 | <span class="p">}</span>
|
313 | 313 | </code></pre></div>
|
314 | 314 | </p>
|
315 | 315 | <p>説明用の式<code>sndr</code>と<code>env</code>に対して、型<code>Sndr</code>を<code>decltype((sndr))</code>とする。<code><a href="sender-for.html">sender-for</a><Sndr, <a href="../../functional/decayed-typeof.html">decayed-typeof</a><let_value>> == false</code>のとき、式<code>let_value.transform_env(sndr, env)</code>は<a class="cpprefjp-defined-word" data-desc="プログラムが適格でないこと。コンパイルエラーなどになる" href="../../../implementation-compliance.html#dfn-ill-formed">不適格</a>となる。</p>
|
316 |
| -<p>そうでなければ、式<code>let_value.transform_env(sndr, env)</code>は<code><span href="https://cpprefjp.github.io/reference/execution/execution/JOIN-ENV.md.nolink">JOIN-ENV</span>(let-env(sndr), <a href="../forwarding_query.html">FWD-ENV</a>(env))</code>と等価。</p> |
| 316 | +<p>そうでなければ、式<code>let_value.transform_env(sndr, env)</code>は<code><a href="../queryable.html">JOIN-ENV</a>(let-env(sndr), <a href="../forwarding_query.html">FWD-ENV</a>(env))</code>と等価。</p> |
317 | 317 | <h2>説明専用エンティティ</h2>
|
318 | 318 | <p>説明用の式<code>sndr</code>を用いて、<code>let-env(sndr)</code>を下記リストのうち最初に<a class="cpprefjp-defined-word" data-desc="プログラムが文法規則・診断対象の意味規則・単一定義規則を満たすこと" href="../../../implementation-compliance.html#dfn-well-formed">適格</a>となる式と定義する。</p>
|
319 | 319 | <ul>
|
320 |
| -<li><code><span href="https://cpprefjp.github.io/reference/execution/execution/SCHED-ENV.md.nolink">SCHED-ENV</span>(<a href="get_completion_scheduler.html">get_completion_scheduler</a><<a href="../../functional/decayed-typeof.html">decayed-typeof</a><<a href="set_value.html">set_value</a>>>(<a href="get_env.html">get_env</a>(sndr)))</code></li> |
321 |
| -<li><code><span href="https://cpprefjp.github.io/reference/execution/execution/MAKE-ENV.md.nolink">MAKE-ENV</span>(<a href="get_domain.html">get_domain</a>, <a href="get_domain.html">get_domain</a>(<a href="get_env.html">get_env</a>(sndr)))</code></li> |
| 320 | +<li><code><a href="schedule.html">SCHED-ENV</a>(<a href="get_completion_scheduler.html">get_completion_scheduler</a><<a href="../../functional/decayed-typeof.html">decayed-typeof</a><<a href="set_value.html">set_value</a>>>(<a href="get_env.html">get_env</a>(sndr)))</code></li> |
| 321 | +<li><code><a href="../queryable.html">MAKE-ENV</a>(<a href="get_domain.html">get_domain</a>, <a href="get_domain.html">get_domain</a>(<a href="get_env.html">get_env</a>(sndr)))</code></li> |
322 | 322 | <li><code>(void(sndr), <a href="env.html">env<>{}</a>)</code></li>
|
323 | 323 | </ul>
|
324 | 324 | <p>説明専用の<code>let-bind</code>テンプレート関数を下記の通り定義する。</p>
|
|
0 commit comments