Skip to content

Commit 4741c9d

Browse files
Preview PR 1607: 9d89e500c7655d
1 parent 2f16b77 commit 4741c9d

File tree

13 files changed

+3005
-70
lines changed

13 files changed

+3005
-70
lines changed

gen/pull/1607/PREVIEW.md

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
# PR [\#1607](https://github.com/cpprefjp/site/pull/1607) プレビュー
2-
- ⌚ 更新時刻: 2026-04-11 11:01:59 JST
2+
- ⌚ 更新時刻: 2026-04-13 13:14:06 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..d9136a1`](https://github.com/cpprefjp/site/compare/c8f0f3f63e70b87bf9b9d66a9344525331eafa1f..d9136a1575dffcd6658ca3c3dc7330bc3c09561b)
5+
- **⫯** ソースの変更: [`c8f0f3f..9d89e50`](https://github.com/cpprefjp/site/compare/c8f0f3f63e70b87bf9b9d66a9344525331eafa1f..9d89e5013cc180c5331c88b60c784f400171b334)
66

7-
## 変更記事一覧 (258件)
7+
## 変更記事一覧 (261件)
88

99
- 📝 [`implementation-status`](https://cpprefjp.github.io/site/gen/pull/1607/implementation-status.html)
1010
- 📝 [`lang/cpp11/attributes`](https://cpprefjp.github.io/site/gen/pull/1607/lang/cpp11/attributes.html)
@@ -186,6 +186,7 @@
186186
- 📝 [`reference/meta/is_special_member_function`](https://cpprefjp.github.io/site/gen/pull/1607/reference/meta/is_special_member_function.html) ✨
187187
- 📝 [`reference/meta/is_standard_layout_type`](https://cpprefjp.github.io/site/gen/pull/1607/reference/meta/is_standard_layout_type.html) ✨
188188
- 📝 [`reference/meta/is_static_member`](https://cpprefjp.github.io/site/gen/pull/1607/reference/meta/is_static_member.html) ✨
189+
- 📝 [`reference/meta/is_string_literal`](https://cpprefjp.github.io/site/gen/pull/1607/reference/meta/is_string_literal.html) ✨
189190
- 📝 [`reference/meta/is_structured_binding`](https://cpprefjp.github.io/site/gen/pull/1607/reference/meta/is_structured_binding.html) ✨
190191
- 📝 [`reference/meta/is_swappable_type`](https://cpprefjp.github.io/site/gen/pull/1607/reference/meta/is_swappable_type.html) ✨
191192
- 📝 [`reference/meta/is_swappable_with_type`](https://cpprefjp.github.io/site/gen/pull/1607/reference/meta/is_swappable_with_type.html) ✨
@@ -230,6 +231,8 @@
230231
- 📝 [`reference/meta/reference_constructs_from_temporary`](https://cpprefjp.github.io/site/gen/pull/1607/reference/meta/reference_constructs_from_temporary.html) ✨
231232
- 📝 [`reference/meta/reference_converts_from_temporary`](https://cpprefjp.github.io/site/gen/pull/1607/reference/meta/reference_converts_from_temporary.html) ✨
232233
- 📝 [`reference/meta/reflect_constant`](https://cpprefjp.github.io/site/gen/pull/1607/reference/meta/reflect_constant.html) ✨
234+
- 📝 [`reference/meta/reflect_constant_array`](https://cpprefjp.github.io/site/gen/pull/1607/reference/meta/reflect_constant_array.html) ✨
235+
- 📝 [`reference/meta/reflect_constant_string`](https://cpprefjp.github.io/site/gen/pull/1607/reference/meta/reflect_constant_string.html) ✨
233236
- 📝 [`reference/meta/reflect_function`](https://cpprefjp.github.io/site/gen/pull/1607/reference/meta/reflect_function.html) ✨
234237
- 📝 [`reference/meta/reflect_object`](https://cpprefjp.github.io/site/gen/pull/1607/reference/meta/reflect_object.html) ✨
235238
- 📝 [`reference/meta/reflection_range`](https://cpprefjp.github.io/site/gen/pull/1607/reference/meta/reflection_range.html) ✨

gen/pull/1607/lang/cpp26/reflection.html

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -188,8 +188,8 @@
188188

189189
<p class="text-right"><small>
190190
最終更新日時(UTC):
191-
<span itemprop="datePublished" content="2026-04-11T01:53:48">
192-
2026年04月11日 01時53分48秒
191+
<span itemprop="datePublished" content="2026-04-13T04:09:48">
192+
2026年04月13日 04時09分48秒
193193
</span>
194194
<br/>
195195
<span itemprop="author" itemscope itemtype="http://schema.org/Person">
@@ -478,14 +478,14 @@ <h3>構文</h3>
478478
</code></pre></div>
479479
</p>
480480
<h2><code>define_static_string</code> / <code>define_static_array</code> / <code>define_static_object</code></h2>
481-
<p>これらは、コンパイル時に計算した値を静的ストレージに配置し、実行時に使用可能にするための関数群である。<code><a href="../../reference/meta/define_static_string.html">std::meta::define_static_string()</a></code>は文字列を、<code><a href="../../reference/meta/define_static_array.html">std::meta::define_static_array()</a></code>は配列を、<code><a href="../../reference/meta/define_static_object.html">std::meta::define_static_object()</a></code>はオブジェクトをそれぞれ静的ストレージに配置する。</p>
481+
<p>これらは、コンパイル時に計算した値を静的ストレージに配置し、実行時に使用可能にするための関数群である。<code><a href="../../reference/meta/define_static_string.html">std::define_static_string()</a></code>は文字列を、<code><a href="../../reference/meta/define_static_array.html">std::define_static_array()</a></code>は配列を、<code><a href="../../reference/meta/define_static_object.html">std::define_static_object()</a></code>はオブジェクトをそれぞれ静的ストレージに配置する。これらは<code>&lt;meta&gt;</code>ヘッダで提供されるが、<code>std</code>名前空間に定義される(<code>std::meta</code>名前空間ではない)</p>
482482
<p><div class="codehilite"><pre><span></span><code><span class="c1">// コンパイル時に計算した文字列を実行時に使用する</span>
483483
<span class="k">template</span><span class="w"> </span><span class="o">&lt;</span><span class="k">typename</span><span class="w"> </span><span class="nc">E</span><span class="o">&gt;</span>
484484
<span class="w"> </span><span class="k">requires</span><span class="w"> </span><span class="n">std</span><span class="o">::</span><span class="n">is_enum_v</span><span class="o">&lt;</span><span class="n">E</span><span class="o">&gt;</span>
485485
<span class="k">constexpr</span><span class="w"> </span><span class="n"><a href="../../reference/string_view/basic_string_view.html">std::string_view</a></span><span class="w"> </span><span class="n">enum_to_string</span><span class="p">(</span><span class="n">E</span><span class="w"> </span><span class="n">value</span><span class="p">)</span><span class="w"> </span><span class="p">{</span>
486486
<span class="w"> </span><span class="k">template</span><span class="w"> </span><span class="k">for</span><span class="w"> </span><span class="p">(</span><span class="k">constexpr</span><span class="w"> </span><span class="k">auto</span><span class="w"> </span><span class="n">e</span><span class="w"> </span><span class="o">:</span><span class="w"> </span><span class="n"><a href="../../reference/meta/enumerators_of.html">std::meta::enumerators_of</a></span><span class="p">(</span><span class="o">^^</span><span class="n">E</span><span class="p">))</span><span class="w"> </span><span class="p">{</span>
487487
<span class="w"> </span><span class="k">if</span><span class="w"> </span><span class="p">(</span><span class="n">value</span><span class="w"> </span><span class="o">==</span><span class="w"> </span><span class="p">[</span><span class="o">:</span><span class="n">e</span><span class="o">:</span><span class="p">])</span><span class="w"> </span><span class="p">{</span>
488-
<span class="w"> </span><span class="k">return</span><span class="w"> </span><span class="n"><a href="../../reference/meta/define_static_string.html">std::meta::define_static_string</a></span><span class="p">(</span><span class="n"><a href="../../reference/meta/identifier_of.html">std::meta::identifier_of</a></span><span class="p">(</span><span class="n">e</span><span class="p">));</span>
488+
<span class="w"> </span><span class="k">return</span><span class="w"> </span><span class="n"><a href="../../reference/meta/define_static_string.html">std::define_static_string</a></span><span class="p">(</span><span class="n"><a href="../../reference/meta/identifier_of.html">std::meta::identifier_of</a></span><span class="p">(</span><span class="n">e</span><span class="p">));</span>
489489
<span class="w"> </span><span class="p">}</span>
490490
<span class="w"> </span><span class="p">}</span>
491491
<span class="w"> </span><span class="k">return</span><span class="w"> </span><span class="s">"&lt;unknown&gt;"</span><span class="p">;</span>

gen/pull/1607/reference/meta.html

Lines changed: 18 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -176,8 +176,8 @@
176176

177177
<p class="text-right"><small>
178178
最終更新日時(UTC):
179-
<span itemprop="datePublished" content="2026-04-09T06:13:07">
180-
2026年04月09日 06時13分07秒
179+
<span itemprop="datePublished" content="2026-04-13T04:09:48">
180+
2026年04月13日 04時09分48秒
181181
</span>
182182
<br/>
183183
<span itemprop="author" itemscope itemtype="http://schema.org/Person">
@@ -1008,6 +1008,7 @@ <h2>集成体の定義</h2>
10081008
</tbody>
10091009
</table>
10101010
<h2>静的ストレージへの配置</h2>
1011+
<p>以下の<code>define_static_*</code><code>is_string_literal</code><code>std</code>名前空間に定義される(<code>std::meta</code>名前空間ではない)。<code>reflect_constant_*</code><code>std::meta</code>名前空間に定義される。</p>
10111012
<table border="1" bordercolor="#888" style="border-collapse:collapse">
10121013
<thead>
10131014
<tr>
@@ -1032,6 +1033,21 @@ <h2>静的ストレージへの配置</h2>
10321033
<td>コンパイル時オブジェクトを静的ストレージに配置し<code>const T*</code>を返す</td>
10331034
<td>C++26</td>
10341035
</tr>
1036+
<tr>
1037+
<td><code><a href="meta/reflect_constant_string.html">reflect_constant_string</a></code></td>
1038+
<td>コンパイル時文字列のリフレクションを生成する</td>
1039+
<td>C++26</td>
1040+
</tr>
1041+
<tr>
1042+
<td><code><a href="meta/reflect_constant_array.html">reflect_constant_array</a></code></td>
1043+
<td>コンパイル時配列のリフレクションを生成する</td>
1044+
<td>C++26</td>
1045+
</tr>
1046+
<tr>
1047+
<td><code><a href="meta/is_string_literal.html">is_string_literal</a></code></td>
1048+
<td>ポインタが文字列リテラルを指しているかを判定する</td>
1049+
<td>C++26</td>
1050+
</tr>
10351051
</tbody>
10361052
</table>
10371053
<h2>アノテーション</h2>

gen/pull/1607/reference/meta/define_static_array.html

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

2121
<meta name="viewport" content="width=device-width,initial-scale=1">
2222
<meta name="keywords" content="
23-
C++,標準ライブラリ,リファレンス,ドキュメント,STL,std,meta,std::meta,function template,cpp26
23+
C++,標準ライブラリ,リファレンス,ドキュメント,STL,std,meta,std,function template,cpp26
2424
">
2525
<meta name="title" content="define_static_array - cpprefjp C++日本語リファレンス" />
2626
<meta itemprop="name" content="define_static_array - cpprefjp C++日本語リファレンス" />
@@ -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;id-type&#34;: [&#34;function template&#34;], &#34;cpp&#34;: [&#34;cpp26&#34;]}, &#34;sources&#34;: [{&#34;id&#34;: &#34;c643838a20472b049efdb5aeffc2eacca2ee16f3&#34;, &#34;source&#34;: &#34;#include &lt;meta&gt;\n#include &lt;print&gt;\n#include &lt;array&gt;\n\nint main() {\n constexpr auto arr = std::meta::define_static_array(std::array{1, 2, 3, 4, 5});\n for (auto v : arr) {\n std::println(\&#34;{}\&#34;, v);\n }\n}\n&#34;}], &#34;page_id&#34;: [&#34;reference&#34;, &#34;meta&#34;, &#34;define_static_array&#34;]}">
71+
<header data-kunai-mdinfo="{&#34;meta&#34;: {&#34;header&#34;: [&#34;meta&#34;], &#34;namespace&#34;: [&#34;std&#34;], &#34;id-type&#34;: [&#34;function template&#34;], &#34;cpp&#34;: [&#34;cpp26&#34;]}, &#34;sources&#34;: [{&#34;id&#34;: &#34;c5251da6c96f6bf7628f22c89df0b285f54744a4&#34;, &#34;source&#34;: &#34;#include &lt;meta&gt;\n#include &lt;print&gt;\n#include &lt;array&gt;\n\nint main() {\n constexpr auto arr = std::define_static_array(std::array{1, 2, 3, 4, 5});\n for (auto v : arr) {\n std::println(\&#34;{}\&#34;, v);\n }\n}\n&#34;}], &#34;page_id&#34;: [&#34;reference&#34;, &#34;meta&#34;, &#34;define_static_array&#34;]}">
7272
<nav class="navbar navbar-default" role="navigation">
7373
<div class="container-fluid">
7474
<div class="navbar-header">
@@ -188,8 +188,8 @@
188188

189189
<p class="text-right"><small>
190190
最終更新日時(UTC):
191-
<span itemprop="datePublished" content="2026-04-09T06:13:07">
192-
2026年04月09日 06時13分07秒
191+
<span itemprop="datePublished" content="2026-04-13T04:09:48">
192+
2026年04月13日 04時09分48秒
193193
</span>
194194
<br/>
195195
<span itemprop="author" itemscope itemtype="http://schema.org/Person">
@@ -212,8 +212,8 @@
212212
<div class="row">
213213
<div class="col-sm-12 content-body">
214214

215-
<div class="identifier-type">function template</div><div class="header">&lt;meta&gt;</div><h1 itemprop="name"><span class="namespace" title="namespace std::meta">std::meta::</span><span class="token">define_static_array</span><span class="cpp cpp26" title="C++26で追加">(C++26)</span></h1>
216-
<div itemprop="articleBody"><p><div class="codehilite"><pre><span></span><code><span class="k">namespace</span><span class="w"> </span><span class="nn">std</span><span class="o">::</span><span class="nn">meta</span><span class="w"> </span><span class="p">{</span>
215+
<div class="identifier-type">function template</div><div class="header">&lt;meta&gt;</div><h1 itemprop="name"><span class="namespace" title="namespace std">std::</span><span class="token">define_static_array</span><span class="cpp cpp26" title="C++26で追加">(C++26)</span></h1>
216+
<div itemprop="articleBody"><p><div class="codehilite"><pre><span></span><code><span class="k">namespace</span><span class="w"> </span><span class="nn">std</span><span class="w"> </span><span class="p">{</span>
217217
<span class="w"> </span><span class="k">template</span><span class="w"> </span><span class="o">&lt;</span><span class="n">ranges</span><span class="o">::</span><span class="n"><a href="../ranges/input_range.html">input_range</a></span><span class="w"> </span><span class="n">R</span><span class="o">&gt;</span>
218218
<span class="w"> </span><span class="k">consteval</span><span class="w"> </span><span class="n"><a href="../span/span.html">std::span</a></span><span class="o">&lt;</span><span class="k">const</span><span class="w"> </span><span class="n">ranges</span><span class="o">::</span><span class="n"><a href="../ranges/range_value_t.html">range_value_t</a></span><span class="o">&lt;</span><span class="n">R</span><span class="o">&gt;&gt;</span><span class="w"> </span><span class="n">define_static_array</span><span class="p">(</span><span class="n">R</span><span class="o">&amp;&amp;</span><span class="w"> </span><span class="n">r</span><span class="p">);</span>
219219
<span class="p">}</span>
@@ -224,12 +224,12 @@ <h2>概要</h2>
224224
<h2><a class="cpprefjp-defined-word" data-desc="関数呼び出し式の評価結果となるオブジェクト・値">戻り値</a></h2>
225225
<p><code>r</code>の要素をコピーした静的ストレージ上の配列を参照する<code>std::span&lt;const T&gt;</code>を返す。</p>
226226
<h2></h2>
227-
<p><div class="yata" id="c643838a20472b049efdb5aeffc2eacca2ee16f3"><div class="codehilite"><pre><span></span><code><span class="cp">#include <a href="../meta.html">&lt;meta&gt;</a></span>
227+
<p><div class="yata" id="c5251da6c96f6bf7628f22c89df0b285f54744a4"><div class="codehilite"><pre><span></span><code><span class="cp">#include <a href="../meta.html">&lt;meta&gt;</a></span>
228228
<span class="cp">#include <a href="../print.html">&lt;print&gt;</a></span>
229229
<span class="cp">#include <a href="../array.html">&lt;array&gt;</a></span>
230230

231231
<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>
232-
<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">arr</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">std</span><span class="o">::</span><span class="n">meta</span><span class="o">::</span><span class="n">define_static_array</span><span class="p">(</span><span class="n"><a href="../array/array.html">std::array</a></span><span class="p">{</span><span class="mi">1</span><span class="p">,</span><span class="w"> </span><span class="mi">2</span><span class="p">,</span><span class="w"> </span><span class="mi">3</span><span class="p">,</span><span class="w"> </span><span class="mi">4</span><span class="p">,</span><span class="w"> </span><span class="mi">5</span><span class="p">});</span>
232+
<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">arr</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">std</span><span class="o">::</span><span class="n">define_static_array</span><span class="p">(</span><span class="n"><a href="../array/array.html">std::array</a></span><span class="p">{</span><span class="mi">1</span><span class="p">,</span><span class="w"> </span><span class="mi">2</span><span class="p">,</span><span class="w"> </span><span class="mi">3</span><span class="p">,</span><span class="w"> </span><span class="mi">4</span><span class="p">,</span><span class="w"> </span><span class="mi">5</span><span class="p">});</span>
233233
<span class="w"> </span><span class="k">for</span><span class="w"> </span><span class="p">(</span><span class="k">auto</span><span class="w"> </span><span class="n">v</span><span class="w"> </span><span class="o">:</span><span class="w"> </span><span class="n">arr</span><span class="p">)</span><span class="w"> </span><span class="p">{</span>
234234
<span class="w"> </span><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="w"> </span><span class="n">v</span><span class="p">);</span>
235235
<span class="w"> </span><span class="p">}</span>

0 commit comments

Comments
 (0)