Skip to content

Commit 60aaca8

Browse files
Preview PR 1607: 7de1fde9bde559
1 parent 0262c7f commit 60aaca8

4 files changed

Lines changed: 114 additions & 188 deletions

File tree

gen/pull/1607/PREVIEW.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
# PR [\#1607](https://github.com/cpprefjp/site/pull/1607) プレビュー
2-
- ⌚ 更新時刻: 2026-04-30 15:13:40 JST
2+
- ⌚ 更新時刻: 2026-04-30 15:23:12 JST
33
- 🔍 [プレビュー (HTML)](https://cpprefjp.github.io/site/gen/pull/1607)
44
- 📈 [プレビュー生成記録](https://github.com/cpprefjp/site/actions?query=event%3Apull_request_target+branch%3Acpp26_reflection)
5-
- **⫯** ソースの変更: [`c8f0f3f..b094b24`](https://github.com/cpprefjp/site/compare/c8f0f3f63e70b87bf9b9d66a9344525331eafa1f..b094b241f2bc9ef429530187ebc061aa12a5bf0b)
5+
- **⫯** ソースの変更: [`c8f0f3f..7de1fde`](https://github.com/cpprefjp/site/compare/c8f0f3f63e70b87bf9b9d66a9344525331eafa1f..7de1fdedb3a2d1bad82d6db3a027c94e1b7efeac)
66

77
## 変更記事一覧 (259件)
88

gen/pull/1607/reference/meta/access_context/scope.html

Lines changed: 26 additions & 12 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;meta&#34;], &#34;namespace&#34;: [&#34;std::meta&#34;], &#34;class&#34;: [&#34;access_context&#34;], &#34;id-type&#34;: [&#34;function&#34;], &#34;cpp&#34;: [&#34;cpp26&#34;]}, &#34;sources&#34;: [{&#34;id&#34;: &#34;d04539f5ff1e16bbfb5fa6dd43232e6d5ee3ad00&#34;, &#34;source&#34;: &#34;#include &lt;meta&gt;\n#include &lt;print&gt;\n\nclass C {\n int secret;\npublic:\n int visible;\n\n static void inspect() {\n constexpr auto ctx = std::meta::access_context::current();\n // C\u5185\u90e8\u304b\u3089current()\u3092\u547c\u3093\u3060\u306e\u3067\u3001\u30b9\u30b3\u30fc\u30d7\u306fC\n std::println(\&#34;scope: {}\&#34;, std::meta::display_string_of(ctx.scope()));\n }\n};\n\nint main() {\n C::inspect();\n}\n&#34;}], &#34;page_id&#34;: [&#34;reference&#34;, &#34;meta&#34;, &#34;access_context&#34;, &#34;scope&#34;]}">
71+
<header data-kunai-mdinfo="{&#34;meta&#34;: {&#34;header&#34;: [&#34;meta&#34;], &#34;namespace&#34;: [&#34;std::meta&#34;], &#34;class&#34;: [&#34;access_context&#34;], &#34;id-type&#34;: [&#34;function&#34;], &#34;cpp&#34;: [&#34;cpp26&#34;]}, &#34;sources&#34;: [{&#34;id&#34;: &#34;39bf4833495399ac32f77933a69636af42b351fa&#34;, &#34;source&#34;: &#34;#include &lt;meta&gt;\n#include &lt;print&gt;\n\nclass C {\npublic:\n static void inspect() {\n // current()\u306finspect()\u95a2\u6570\u5185\u3067\u547c\u3070\u308c\u305f\u306e\u3067\u3001\u30b9\u30b3\u30fc\u30d7\u306finspect()\u95a2\u6570\n constexpr auto ctx = std::meta::access_context::current();\n std::println(\&#34;inspect()\u306e\u30b9\u30b3\u30fc\u30d7: {}\&#34;,\n std::meta::display_string_of(ctx.scope()));\n }\n};\n\nvoid free_function() {\n // current()\u306ffree_function()\u5185\u3067\u547c\u3070\u308c\u305f\u306e\u3067\u3001\u30b9\u30b3\u30fc\u30d7\u306ffree_function()\n constexpr auto ctx = std::meta::access_context::current();\n std::println(\&#34;free_function()\u306e\u30b9\u30b3\u30fc\u30d7: {}\&#34;,\n std::meta::display_string_of(ctx.scope()));\n}\n\nint main() {\n // current()\u306fmain()\u5185\u3067\u547c\u3070\u308c\u305f\u306e\u3067\u3001\u30b9\u30b3\u30fc\u30d7\u306fmain()\n constexpr auto ctx = std::meta::access_context::current();\n std::println(\&#34;main()\u306e\u30b9\u30b3\u30fc\u30d7: {}\&#34;,\n std::meta::display_string_of(ctx.scope()));\n\n C::inspect();\n free_function();\n}\n&#34;}], &#34;page_id&#34;: [&#34;reference&#34;, &#34;meta&#34;, &#34;access_context&#34;, &#34;scope&#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="2026-04-11T01:56:06">
204-
2026年04月11日 01時56分06秒
203+
<span itemprop="datePublished" content="2026-04-30T06:18:33">
204+
2026年04月30日 06時18分33秒
205205
</span>
206206
<br/>
207207
<span itemprop="author" itemscope itemtype="http://schema.org/Person">
@@ -232,29 +232,43 @@ <h2>概要</h2>
232232
<p>アクセスコンテキストのスコープのリフレクションを返す。</p>
233233
<h2><a class="cpprefjp-defined-word" data-desc="関数呼び出し式の評価結果となるオブジェクト・値">戻り値</a></h2>
234234
<p>このアクセスコンテキストが関連付けられているスコープのリフレクションを返す。</p>
235+
<p><code><a href="current.html">access_context::current()</a></code>で取得したコンテキストの場合、<code>current()</code>を呼び出した時点で囲んでいる関数や名前空間などのスコープが返される。</p>
235236
<h2></h2>
236-
<p><div class="yata" id="d04539f5ff1e16bbfb5fa6dd43232e6d5ee3ad00"><div class="codehilite"><pre><span></span><code><span class="cp">#include <a href="../../meta.html">&lt;meta&gt;</a></span>
237+
<p><div class="yata" id="39bf4833495399ac32f77933a69636af42b351fa"><div class="codehilite"><pre><span></span><code><span class="cp">#include <a href="../../meta.html">&lt;meta&gt;</a></span>
237238
<span class="cp">#include <a href="../../print.html">&lt;print&gt;</a></span>
238239

239240
<span class="k">class</span><span class="w"> </span><span class="nc">C</span><span class="w"> </span><span class="p">{</span>
240-
<span class="w"> </span><span class="kt">int</span><span class="w"> </span><span class="n">secret</span><span class="p">;</span>
241241
<span class="k">public</span><span class="o">:</span>
242-
<span class="w"> </span><span class="kt">int</span><span class="w"> </span><span class="n">visible</span><span class="p">;</span>
243-
244-
<span class="w"> </span><span class="k">static</span><span class="w"> </span><span class="kt">void</span><span class="w"> </span><span class="nf">inspect</span><span class="p">()</span><span class="w"> </span><span class="p">{</span>
242+
<span class="w"> </span><span class="k">static</span><span class="w"> </span><span class="kt">void</span><span class="w"> </span><span class="n">inspect</span><span class="p">()</span><span class="w"> </span><span class="p">{</span>
243+
<span class="w"> </span><span class="c1">// current()はinspect()関数内で呼ばれたので、スコープはinspect()関数</span>
245244
<span class="w"> </span><span class="k">constexpr</span><span class="w"> </span><span class="k">auto</span><span class="w"> </span><span class="n">ctx</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n"><a href="current.html">std::meta::access_context::current</a></span><span class="p">();</span>
246-
<span class="w"> </span><span class="c1">// C内部からcurrent()を呼んだので、スコープはC</span>
247-
<span class="w"> </span><span class="n"><a href="../../print/println.html">std::println</a></span><span class="p">(</span><span class="s">"scope: {}"</span><span class="p">,</span><span class="w"> </span><span class="n"><a href="../display_string_of.html">std::meta::display_string_of</a></span><span class="p">(</span><span class="n">ctx</span><span class="p">.</span><span class="n"><span style="color:#ff0000">scope()</span></span><span class="p">));</span>
245+
<span class="w"> </span><span class="n"><a href="../../print/println.html">std::println</a></span><span class="p">(</span><span class="s">"inspect()のスコープ: {}"</span><span class="p">,</span>
246+
<span class="w"> </span><span class="n"><a href="../display_string_of.html">std::meta::display_string_of</a></span><span class="p">(</span><span class="n">ctx</span><span class="p">.</span><span class="n"><span style="color:#ff0000">scope()</span></span><span class="p">));</span>
248247
<span class="w"> </span><span class="p">}</span>
249248
<span class="p">};</span>
250249

250+
<span class="kt">void</span><span class="w"> </span><span class="nf">free_function</span><span class="p">()</span><span class="w"> </span><span class="p">{</span>
251+
<span class="w"> </span><span class="c1">// current()はfree_function()内で呼ばれたので、スコープはfree_function()</span>
252+
<span class="w"> </span><span class="k">constexpr</span><span class="w"> </span><span class="k">auto</span><span class="w"> </span><span class="n">ctx</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n"><a href="current.html">std::meta::access_context::current</a></span><span class="p">();</span>
253+
<span class="w"> </span><span class="n"><a href="../../print/println.html">std::println</a></span><span class="p">(</span><span class="s">"free_function()のスコープ: {}"</span><span class="p">,</span>
254+
<span class="w"> </span><span class="n"><a href="../display_string_of.html">std::meta::display_string_of</a></span><span class="p">(</span><span class="n">ctx</span><span class="p">.</span><span class="n"><span style="color:#ff0000">scope()</span></span><span class="p">));</span>
255+
<span class="p">}</span>
256+
251257
<span class="kt">int</span><span class="w"> </span><span class="nf">main</span><span class="p">()</span><span class="w"> </span><span class="p">{</span>
258+
<span class="w"> </span><span class="c1">// current()はmain()内で呼ばれたので、スコープはmain()</span>
259+
<span class="w"> </span><span class="k">constexpr</span><span class="w"> </span><span class="k">auto</span><span class="w"> </span><span class="n">ctx</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n"><a href="current.html">std::meta::access_context::current</a></span><span class="p">();</span>
260+
<span class="w"> </span><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>
261+
<span class="w"> </span><span class="n"><a href="../display_string_of.html">std::meta::display_string_of</a></span><span class="p">(</span><span class="n">ctx</span><span class="p">.</span><span class="n"><span style="color:#ff0000">scope()</span></span><span class="p">));</span>
262+
252263
<span class="w"> </span><span class="n">C</span><span class="o">::</span><span class="n">inspect</span><span class="p">();</span>
264+
<span class="w"> </span><span class="n">free_function</span><span class="p">();</span>
253265
<span class="p">}</span>
254266
</code></pre></div>
255267
</div></p>
256268
<h4>出力例</h4>
257-
<p><pre><code>scope: C
269+
<p><pre><code>main()のスコープ: int main()
270+
inspect()のスコープ: static void C::inspect()
271+
free_function()のスコープ: void free_function()
258272
</code></pre></p>
259273
<h2>バージョン</h2>
260274
<h3>言語</h3>
@@ -264,7 +278,7 @@ <h3>言語</h3>
264278
<h3>処理系</h3>
265279
<ul>
266280
<li><a href="../../../implementation.html#clang">Clang</a>: ??</li>
267-
<li><a href="../../../implementation.html#gcc">GCC</a>: ??</li>
281+
<li><a href="../../../implementation.html#gcc">GCC</a>: 16 <span aria-label="検証済" role="img" title="検証済"></span></li>
268282
<li><a href="../../../implementation.html#visual_cpp">Visual C++</a>: ??</li>
269283
</ul>
270284
<h2>参照</h2>

0 commit comments

Comments
 (0)