Skip to content

Commit a0babb3

Browse files
author
cpprefjp-autoupdate
committed
update automatically
1 parent 3455928 commit a0babb3

File tree

7 files changed

+220
-70
lines changed

7 files changed

+220
-70
lines changed

reference/execution/execution/let_value.html

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,7 @@
6868

6969
</head>
7070
<body>
71-
<header data-kunai-mdinfo="{&#34;meta&#34;: {&#34;header&#34;: [&#34;execution&#34;], &#34;id-type&#34;: [&#34;cpo&#34;], &#34;namespace&#34;: [&#34;std::execution&#34;], &#34;cpp&#34;: [&#34;cpp26&#34;]}, &#34;sources&#34;: [{&#34;id&#34;: &#34;544edb4ddd6383c3c3f03fc8920fa22823833df8&#34;, &#34;source&#34;: &#34;#include &lt;print&gt;\n#include &lt;execution&gt;\nnamespace ex = std::execution;\n\nint main()\n{\n { // \u95a2\u6570\u547c\u3073\u51fa\u3057\n ex::sender snd0 = ex::just(21);\n ex::sender snd1 = ex::let_value(\n snd0,\n [](int n) -&gt; ex::sender auto {\n return ex::just(n * 2);\n });\n auto [val] = std::this_thread::sync_wait(snd1).value();\n std::println(\&#34;{}\&#34;, val);\n }\n\n { // \u30d1\u30a4\u30d7\u30e9\u30a4\u30f3\u8a18\u6cd5\n ex::sender sndr = ex::just(21)\n | ex::let_value(\n [](int n) -&gt; ex::sender auto {\n return ex::just(n * 2);\n });\n auto [val] = std::this_thread::sync_wait(sndr).value();\n std::println(\&#34;{}\&#34;, val);\n }\n}\n&#34;}], &#34;page_id&#34;: [&#34;reference&#34;, &#34;execution&#34;, &#34;execution&#34;, &#34;let_value&#34;]}">
71+
<header data-kunai-mdinfo="{&#34;meta&#34;: {&#34;header&#34;: [&#34;execution&#34;], &#34;id-type&#34;: [&#34;cpo&#34;], &#34;namespace&#34;: [&#34;std::execution&#34;], &#34;cpp&#34;: [&#34;cpp26&#34;]}, &#34;sources&#34;: [{&#34;id&#34;: &#34;fa1889e1e1ef1cc903c89dd5c7612cfcba10022d&#34;, &#34;source&#34;: &#34;#include &lt;print&gt;\n#include &lt;execution&gt;\nnamespace ex = std::execution;\n\nint main()\n{\n { // \u95a2\u6570\u547c\u3073\u51fa\u3057\n ex::sender auto snd0 = ex::just(21);\n ex::sender auto snd1 = ex::let_value(\n snd0,\n [](int n) -&gt; ex::sender auto {\n return ex::just(n * 2);\n });\n auto [val] = std::this_thread::sync_wait(snd1).value();\n std::println(\&#34;{}\&#34;, val);\n }\n\n { // \u30d1\u30a4\u30d7\u30e9\u30a4\u30f3\u8a18\u6cd5\n ex::sender auto sndr = ex::just(21)\n | ex::let_value(\n [](int n) -&gt; ex::sender auto {\n return ex::just(n * 2);\n });\n auto [val] = std::this_thread::sync_wait(sndr).value();\n std::println(\&#34;{}\&#34;, val);\n }\n}\n&#34;}], &#34;page_id&#34;: [&#34;reference&#34;, &#34;execution&#34;, &#34;execution&#34;, &#34;let_value&#34;]}">
7272
<nav class="navbar navbar-default" role="navigation">
7373
<div class="container-fluid">
7474
<div class="navbar-header">
@@ -200,8 +200,8 @@
200200

201201
<p class="text-right"><small>
202202
最終更新日時(UTC):
203-
<span itemprop="datePublished" content="2025-05-29T06:55:34">
204-
2025年05月29日 06時55分34秒
203+
<span itemprop="datePublished" content="2025-05-29T07:49:32">
204+
2025年05月29日 07時49分32秒
205205
</span>
206206
<br/>
207207
<span itemprop="author" itemscope itemtype="http://schema.org/Person">
@@ -390,15 +390,15 @@ <h2>カスタマイゼーションポイント</h2>
390390
</ul>
391391
<h2></h2>
392392
<h3>例1: 基本の使い方</h3>
393-
<p><div class="yata" id="544edb4ddd6383c3c3f03fc8920fa22823833df8"><div class="codehilite"><pre><span></span><code><span class="cp">#include</span> <span class="cpf"><a href="../../print.html">&lt;print&gt;</a></span><span class="cp"></span>
393+
<p><div class="yata" id="fa1889e1e1ef1cc903c89dd5c7612cfcba10022d"><div class="codehilite"><pre><span></span><code><span class="cp">#include</span> <span class="cpf"><a href="../../print.html">&lt;print&gt;</a></span><span class="cp"></span>
394394
<span class="cp">#include</span> <span class="cpf"><a href="../../execution.html">&lt;execution&gt;</a></span><span class="cp"></span>
395395
<span class="k">namespace</span> <span class="n">ex</span> <span class="o">=</span> <span class="n">std</span><span class="o">::</span><span class="n">execution</span><span class="p">;</span>
396396

397397
<span class="kt">int</span> <span class="nf">main</span><span class="p">()</span>
398398
<span class="p">{</span>
399399
<span class="p">{</span> <span class="c1">// 関数呼び出し</span>
400-
<span class="n"><a href="sender.html">ex::sender</a></span> <span class="n">snd0</span> <span class="o">=</span> <span class="n"><a href="just.html">ex::just</a></span><span class="p">(</span><span class="mi">21</span><span class="p">);</span>
401-
<span class="n"><a href="sender.html">ex::sender</a></span> <span class="n">snd1</span> <span class="o">=</span> <span class="n"><span style="color:#ff0000">ex::let_value</span></span><span class="p">(</span>
400+
<span class="n"><a href="sender.html">ex::sender</a></span> <span class="k">auto</span> <span class="n">snd0</span> <span class="o">=</span> <span class="n"><a href="just.html">ex::just</a></span><span class="p">(</span><span class="mi">21</span><span class="p">);</span>
401+
<span class="n"><a href="sender.html">ex::sender</a></span> <span class="k">auto</span> <span class="n">snd1</span> <span class="o">=</span> <span class="n"><span style="color:#ff0000">ex::let_value</span></span><span class="p">(</span>
402402
<span class="n">snd0</span><span class="p">,</span>
403403
<span class="p">[](</span><span class="kt">int</span> <span class="n">n</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="n"><a href="sender.html">ex::sender</a></span> <span class="k">auto</span> <span class="p">{</span>
404404
<span class="k">return</span> <span class="n"><a href="just.html">ex::just</a></span><span class="p">(</span><span class="n">n</span> <span class="o">*</span> <span class="mi">2</span><span class="p">);</span>
@@ -408,7 +408,7 @@ <h3>例1: 基本の使い方</h3>
408408
<span class="p">}</span>
409409

410410
<span class="p">{</span> <span class="c1">// パイプライン記法</span>
411-
<span class="n"><a href="sender.html">ex::sender</a></span> <span class="n">sndr</span> <span class="o">=</span> <span class="n"><a href="just.html">ex::just</a></span><span class="p">(</span><span class="mi">21</span><span class="p">)</span>
411+
<span class="n"><a href="sender.html">ex::sender</a></span> <span class="k">auto</span> <span class="n">sndr</span> <span class="o">=</span> <span class="n"><a href="just.html">ex::just</a></span><span class="p">(</span><span class="mi">21</span><span class="p">)</span>
412412
<span class="o">|</span> <span class="n"><span style="color:#ff0000">ex::let_value</span></span><span class="p">(</span>
413413
<span class="p">[](</span><span class="kt">int</span> <span class="n">n</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="n"><a href="sender.html">ex::sender</a></span> <span class="k">auto</span> <span class="p">{</span>
414414
<span class="k">return</span> <span class="n"><a href="just.html">ex::just</a></span><span class="p">(</span><span class="n">n</span> <span class="o">*</span> <span class="mi">2</span><span class="p">);</span>
@@ -487,7 +487,7 @@ <h3>例2: 複数の値完了シグネチャ</h3>
487487
<span class="p">[](</span><span class="kt">int</span> <span class="n">n</span><span class="p">)</span> <span class="p">{</span>
488488
<span class="n"><a href="../../print/println.html">std::println</a></span><span class="p">(</span><span class="s">"(int) {}"</span><span class="p">,</span> <span class="n">n</span><span class="p">);</span>
489489
<span class="c1">// intを受信 -&gt; 空値を送信</span>
490-
<span class="k">return</span> <span class="n">ex</span><span class="o">::</span><span class="n">just</span><span class="p">();</span>
490+
<span class="k">return</span> <span class="n"><a href="just.html">ex::just</a></span><span class="p">();</span>
491491
<span class="p">},</span>
492492
<span class="p">[](</span><span class="n"><a href="../../string/basic_string.html">std::string</a></span> <span class="n">s</span><span class="p">)</span> <span class="p">{</span>
493493
<span class="n"><a href="../../print/println.html">std::println</a></span><span class="p">(</span><span class="s">"(str) {}"</span><span class="p">,</span> <span class="n">s</span><span class="p">);</span>

reference/execution/execution/read_env.html

Lines changed: 13 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,7 @@
6868

6969
</head>
7070
<body>
71-
<header data-kunai-mdinfo="{&#34;meta&#34;: {&#34;header&#34;: [&#34;execution&#34;], &#34;id-type&#34;: [&#34;cpo&#34;], &#34;namespace&#34;: [&#34;std::execution&#34;], &#34;cpp&#34;: [&#34;cpp26&#34;]}, &#34;sources&#34;: [{&#34;id&#34;: &#34;94836551122c37ffccbc1269696182dc5fe79b32&#34;, &#34;source&#34;: &#34;#include &lt;print&gt;\n#include &lt;execution&gt;\nnamespace ex = std::execution;\n\nint main()\n{\n ex::sender auto sndr = ex::read_env(ex::get_scheduler)\n | ex::let_value([](auto sch) -&gt; ex::sender auto {\n // sch := sync_wait\u5185\u90e8\u306eScheduler\n return ex::starts_on(sch, std::just(42));\n });\n auto [val] = std::this_thread::sync_wait(sndr).value();\n std::println(\&#34;{}\&#34;, val);\n}\n&#34;}], &#34;page_id&#34;: [&#34;reference&#34;, &#34;execution&#34;, &#34;execution&#34;, &#34;read_env&#34;]}">
71+
<header data-kunai-mdinfo="{&#34;meta&#34;: {&#34;header&#34;: [&#34;execution&#34;], &#34;id-type&#34;: [&#34;cpo&#34;], &#34;namespace&#34;: [&#34;std::execution&#34;], &#34;cpp&#34;: [&#34;cpp26&#34;]}, &#34;sources&#34;: [{&#34;id&#34;: &#34;8a120ec878511ebfe2ba73af48ebd86f1584de2b&#34;, &#34;source&#34;: &#34;#include &lt;print&gt;\n#include &lt;execution&gt;\nnamespace ex = std::execution;\n\nint main()\n{\n ex::sender auto sndr = ex::read_env(ex::get_scheduler)\n | ex::let_value([](auto sch) -&gt; ex::sender auto {\n // sch := sync_wait\u5185\u90e8\u306eScheduler\n return ex::starts_on(sch, ex::just(42));\n });\n auto [val] = std::this_thread::sync_wait(sndr).value();\n std::println(\&#34;{}\&#34;, val);\n}\n&#34;}], &#34;page_id&#34;: [&#34;reference&#34;, &#34;execution&#34;, &#34;execution&#34;, &#34;read_env&#34;]}">
7272
<nav class="navbar navbar-default" role="navigation">
7373
<div class="container-fluid">
7474
<div class="navbar-header">
@@ -200,8 +200,8 @@
200200

201201
<p class="text-right"><small>
202202
最終更新日時(UTC):
203-
<span itemprop="datePublished" content="2025-05-10T14:27:12">
204-
2025年05月10日 14時27分12秒
203+
<span itemprop="datePublished" content="2025-05-29T07:49:32">
204+
2025年05月29日 07時49分32秒
205205
</span>
206206
<br/>
207207
<span itemprop="author" itemscope itemtype="http://schema.org/Person">
@@ -252,7 +252,7 @@ <h3>Senderアルゴリズムタグ</h3>
252252
<h2>備考</h2>
253253
<p><code>read_env</code><a href="tag_of_t.html">Senderアルゴリズムタグ型</a><a class="cpprefjp-defined-word" data-desc="未規定の動作。事前の断りなく処理系によって異なる動作をする" href="../../../implementation-compliance.html#dfn-unspecified-behavior">未規定</a>とされる。</p>
254254
<h2></h2>
255-
<p><div class="yata" id="94836551122c37ffccbc1269696182dc5fe79b32"><div class="codehilite"><pre><span></span><code><span class="cp">#include</span> <span class="cpf"><a href="../../print.html">&lt;print&gt;</a></span><span class="cp"></span>
255+
<p><div class="yata" id="8a120ec878511ebfe2ba73af48ebd86f1584de2b"><div class="codehilite"><pre><span></span><code><span class="cp">#include</span> <span class="cpf"><a href="../../print.html">&lt;print&gt;</a></span><span class="cp"></span>
256256
<span class="cp">#include</span> <span class="cpf"><a href="../../execution.html">&lt;execution&gt;</a></span><span class="cp"></span>
257257
<span class="k">namespace</span> <span class="n">ex</span> <span class="o">=</span> <span class="n">std</span><span class="o">::</span><span class="n">execution</span><span class="p">;</span>
258258

@@ -261,13 +261,20 @@ <h2>例</h2>
261261
<span class="n"><a href="sender.html">ex::sender</a></span> <span class="k">auto</span> <span class="n">sndr</span> <span class="o">=</span> <span class="n"><span style="color:#ff0000">ex::read_env</span></span><span class="p">(</span><span class="n"><a href="get_scheduler.html">ex::get_scheduler</a></span><span class="p">)</span>
262262
<span class="o">|</span> <span class="n">ex</span><span class="o">::</span><span class="n">let_value</span><span class="p">([](</span><span class="k">auto</span> <span class="n">sch</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="n"><a href="sender.html">ex::sender</a></span> <span class="k">auto</span> <span class="p">{</span>
263263
<span class="c1">// sch := sync_wait内部のScheduler</span>
264-
<span class="k">return</span> <span class="n"><a href="starts_on.html">ex::starts_on</a></span><span class="p">(</span><span class="n">sch</span><span class="p">,</span> <span class="n">std</span><span class="o">::</span><span class="n">just</span><span class="p">(</span><span class="mi">42</span><span class="p">));</span>
264+
<span class="k">return</span> <span class="n">ex</span><span class="o">::</span><span class="n">starts_on</span><span class="p">(</span><span class="n">sch</span><span class="p">,</span> <span class="n">ex</span><span class="o">::</span><span class="n">just</span><span class="p">(</span><span class="mi">42</span><span class="p">));</span>
265265
<span class="p">});</span>
266-
<span class="k">auto</span> <span class="p">[</span><span class="n">val</span><span class="p">]</span> <span class="o">=</span> <span class="n"><a href="../this_thread/sync_wait.html">std::this_thread::sync_wait</a></span><span class="p">(</span><span class="n">sndr</span><span class="p">).</span><span class="n"><a href="../../optional/optional/value.html">value()</a></span><span class="p">;</span>
266+
<span class="k">auto</span> <span class="p">[</span><span class="n">val</span><span class="p">]</span> <span class="o">=</span> <span class="n">std</span><span class="o">::</span><span class="n">this_thread</span><span class="o">::</span><span class="n">sync_wait</span><span class="p">(</span><span class="n">sndr</span><span class="p">).</span><span class="n">value</span><span class="p">();</span>
267267
<span class="n"><a href="../../print/println.html">std::println</a></span><span class="p">(</span><span class="s">"{}"</span><span class="p">,</span> <span class="n">val</span><span class="p">);</span>
268268
<span class="p">}</span>
269269
</code></pre></div>
270270
</div></p>
271+
<ul>
272+
<li>ex::let_value[lin let_value.md]</li>
273+
<li>ex::starts_on[link starts_on.md]</li>
274+
<li>ex::just[lin just.md]</li>
275+
<li>std::this_thread::sync_wait[link ../this_thread/sync_wait.md]</li>
276+
<li>value()[link /reference/optional/optional/value.md]</li>
277+
</ul>
271278
<h3>出力</h3>
272279
<p><pre><code>42
273280
</code></pre></p>

reference/execution/execution/schedule.html

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -200,8 +200,8 @@
200200

201201
<p class="text-right"><small>
202202
最終更新日時(UTC):
203-
<span itemprop="datePublished" content="2025-05-10T10:06:59">
204-
2025年05月10日 10時06分59秒
203+
<span itemprop="datePublished" content="2025-05-29T07:49:32">
204+
2025年05月29日 07時49分32秒
205205
</span>
206206
<br/>
207207
<span itemprop="author" itemscope itemtype="http://schema.org/Person">
@@ -266,7 +266,7 @@ <h2>例</h2>
266266

267267
<span class="n"><a href="../../print/println.html">std::println</a></span><span class="p">(</span><span class="s">"main#{}"</span><span class="p">,</span> <span class="n"><a href="../../thread/this_thread/get_id.html">std::this_thread::get_id()</a></span><span class="p">);</span>
268268

269-
<span class="k">auto</span> <span class="p">[</span><span class="n">val</span><span class="p">]</span> <span class="o">=</span> <span class="n">std</span><span class="o">::</span><span class="n">this_thread</span><span class="o">::</span><span class="n">sync_wait</span><span class="p">(</span><span class="n"><a href="../../utility/move.html">std::move</a></span><span class="p">(</span><span class="n">sndr</span><span class="p">)).</span><span class="n">value</span><span class="p">();</span>
269+
<span class="k">auto</span> <span class="p">[</span><span class="n">val</span><span class="p">]</span> <span class="o">=</span> <span class="n"><a href="../this_thread/sync_wait.html">std::this_thread::sync_wait</a></span><span class="p">(</span><span class="n"><a href="../../utility/move.html">std::move</a></span><span class="p">(</span><span class="n">sndr</span><span class="p">)).</span><span class="n"><a href="../../optional/optional/value.html">value()</a></span><span class="p">;</span>
270270
<span class="n"><a href="../../print/println.html">std::println</a></span><span class="p">(</span><span class="s">"val={}"</span><span class="p">,</span> <span class="n">val</span><span class="p">);</span>
271271

272272
<span class="n">loop</span><span class="p">.</span><span class="n"><a href="run_loop/finish.html">finish()</a></span><span class="p">;</span>

0 commit comments

Comments
 (0)