Skip to content

Commit 70dfbf3

Browse files
committed
C++26対応としてinplace_vectorを追加 #1313
1 parent 49966ca commit 70dfbf3

51 files changed

Lines changed: 3435 additions & 5 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

GLOBAL_QUALIFY_LIST.txt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -170,6 +170,8 @@
170170
* std::initializer_list[link /reference/initializer_list/initializer_list.md]
171171
* il.begin()[link /reference/initializer_list/initializer_list/begin.md]
172172
* il.end()[link /reference/initializer_list/initializer_list/end.md]
173+
* <inplace_vector>[link /reference/inplace_vector.md]
174+
* std::inplace_vector[link /reference/inplace_vector/inplace_vector.md]
173175
* <iomanip>[link /reference/iomanip.md]
174176
* <ios>[link /reference/ios.md]
175177
* std::boolalpha[link /reference/ios/boolalpha.md]

lang/cpp26.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -132,7 +132,7 @@ C++26とは、2026年中に改訂される予定の、C++バージョンの通
132132
- データ並列ライブラリとして、[`<simd>`](/reference/simd.md.nolink)を追加
133133
- デバッグサポートのライブラリとして[`<debugging>`](/reference/debugging.md)を追加
134134
- 線形代数ライブラリとして[`<linalg>`](/reference/linalg.md)を追加
135-
- コンパイル時に容量を固定する可変長配列クラスのライブラリとして[`<inplace_vector>`](/reference/inplace_vector.md.nolink)を追加
135+
- コンパイル時に容量を固定する可変長配列クラスのライブラリとして[`<inplace_vector>`](/reference/inplace_vector.md)を追加
136136
- C23の互換ライブラリとして、ビット操作ライブラリ[`<stdbit.h>`](/reference/stdbit.h.md.nolink)と、検査付き整数演算ライブラリ[`<stdckdint.h>`](/reference/stdckdint.h.md.nolink)を追加。`<cstd…>`形式のライブラリは追加されない
137137

138138

lang/cpp26/feature_test_macros.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,7 @@
6060
|`__cpp_lib_constexpr_flat_map`|`202502L`|[`std::flat_map`](/reference/flat_map/flat_map.md) / [`std::flat_multimap`](/reference/flat_map/flat_multimap.md)`constexpr`対応|[`<flat_map>`](/reference/flat_map.md)|
6161
|`__cpp_lib_constexpr_flat_set`|`202502L`|[`std::flat_set`](/reference/flat_set/flat_set.md) / [`std::flat_multiset`](/reference/flat_set/flat_multiset.md)`constexpr`対応|[`<flat_set>`](/reference/flat_set.md)|
6262
|`__cpp_lib_constexpr_forward_list`|`202502L`|[`std::forward_list`](/reference/forward_list/forward_list.md)`constexpr`対応|[`<forward_list>`](/reference/forward_list.md)|
63-
|`__cpp_lib_constexpr_inplace_vector`|`202502L`|[`std::inplace_vector`](/reference/inplace_vector/inplace_vector.md.nolink)`constexpr`対応|[`<inplace_vector>`](/reference/inplace_vector.md.nolink)|
63+
|`__cpp_lib_constexpr_inplace_vector`|`202502L`|[`std::inplace_vector`](/reference/inplace_vector/inplace_vector.md)`constexpr`対応|[`<inplace_vector>`](/reference/inplace_vector.md)|
6464
|`__cpp_lib_constexpr_list`|`202502L`|[`std::list`](/reference/list/list.md)`constexpr`対応|[`<list>`](/reference/list.md)|
6565
|`__cpp_lib_constexpr_map`|`202502L`|[`std::map`](/reference/map/map.md) / [`std::multimap`](/reference/map/multimap.md)`constexpr`対応|[`<map>`](/reference/map.md)|
6666
|`__cpp_lib_constexpr_memory`|`202506L`|[`std::shared_ptr`](/reference/memory/shared_ptr.md)クラスとその関連機能を`constexpr`対応|[`<memory>`](/reference/memory.md)|
@@ -110,7 +110,7 @@
110110
|`__cpp_lib_hazard_pointer`|`202306L`|ハザードポインタのライブラリ[`<hazard_pointer>`](/reference/hazard_pointer.md.nolink)を追加|[`<hazard_pointer>`](/reference/hazard_pointer.md.nolink)|
111111
|`__cpp_lib_hive`|`202502L`|シーケンスコンテナのライブラリ[`<hive>`](/reference/hive.md.nolink)を追加|[`<hive>`](/reference/hive.md.nolink)|
112112
|`__cpp_lib_indirect`|`202502L`|[`<memory>`](/reference/memory.md)[`std::indirect`](/reference/memory/indirect.md.nolink)[`std::polymorphic`](/reference/memory/polymorphic.md.nolink)を追加|[`<memory>`](/reference/memory.md)|
113-
|`__cpp_lib_inplace_vector`|`202406L`|容量固定の可変長配列のライブラリ[`<inplace_vector>`](/reference/inplace_vector.md.nolink)を追加|[`<inplace_vector>`](/reference/inplace_vector.md.nolink)|
113+
|`__cpp_lib_inplace_vector`|`202406L`|容量固定の可変長配列のライブラリ[`<inplace_vector>`](/reference/inplace_vector.md)を追加|[`<inplace_vector>`](/reference/inplace_vector.md)|
114114
|`__cpp_lib_is_sufficiently_aligned`|`202411L`|[`<mdspan>`](/reference/mdspan.md)に、要素アクセスにアライメント保証を与える[`std::aligned_accessor`](/reference/mdspan/aligned_accessor.md)を追加|[`<memory>`](/reference/memory.md)|
115115
|`__cpp_lib_is_virtual_base_of`|`202406L`|[`<type_traits>`](/reference/type_traits.md)[`std::is_virtual_base_of`](/reference/type_traits/is_virtual_base_of.md)を追加|[`<type_traits>`](/reference/type_traits.md)|
116116
|`__cpp_lib_is_within_lifetime`|`202306L`|[`<type_traits>`](/reference/type_traits.md)[`std::is_within_lifetime()`](/reference/type_traits/is_within_lifetime.md)を追加|[`<type_traits>`](/reference/type_traits.md)|
@@ -174,7 +174,7 @@
174174
|`__cpp_lib_hardened_deque`|`202502L`||[`<deque>`](/reference/deque.md)|
175175
|`__cpp_lib_hardened_expected`|`202502L`||[`<expected>`](/reference/expected.md)|
176176
|`__cpp_lib_hardened_forward_list`|`202502L`||[`<forward_list>`](/reference/forward_list.md)|
177-
|`__cpp_lib_hardened_inplace_vector`|`202502L`||[`<inplace_vector>`](/reference/inplace_vector.md.nolink)|
177+
|`__cpp_lib_hardened_inplace_vector`|`202502L`||[`<inplace_vector>`](/reference/inplace_vector.md)|
178178
|`__cpp_lib_hardened_list`|`202502L`||[`<list>`](/reference/list.md)|
179179
|`__cpp_lib_hardened_mdspan`|`202502L`||[`<mdspan>`](/reference/mdspan.md)|
180180
|`__cpp_lib_hardened_optional`|`202502L`||[`<optional>`](/reference/optional.md)|

reference.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -107,7 +107,7 @@
107107
| [`<queue>`](/reference/queue.md) | FIFOキュー | |
108108
| [`<stack>`](/reference/stack.md) | LIFOスタック | |
109109
| [`<vector>`](/reference/vector.md) | 可変長配列 | |
110-
| [`<inplace_vector>`](/reference/inplace_vector.md.nolink) | 容量固定の可変長配列 | C++26 |
110+
| [`<inplace_vector>`](/reference/inplace_vector.md) | 容量固定の可変長配列 | C++26 |
111111
| [`<map>`](/reference/map.md) | 順序付き連想配列 | |
112112
| [`<set>`](/reference/set.md) | 順序付き集合 | |
113113
| [`<flat_map>`](/reference/flat_map.md) | ソート済みキーによる順序付き連想配列 | C++23 |

reference/inplace_vector.md

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
# inplace_vector
2+
* inplace_vector[meta header]
3+
* cpp26[meta cpp]
4+
5+
`<inplace_vector>`ヘッダでは、コンパイル時に容量を決定する可変長配列の実装である`inplace_vector`コンテナを提供する。
6+
7+
このヘッダでは、以下の標準ヘッダをインクルードする:
8+
9+
- [`<initializer_list>`](initializer_list.md)
10+
- [`<compare>`](compare.md)
11+
12+
13+
| 名前 | 説明 | 対応バージョン |
14+
|-----------------------------|----------------------------|-------|
15+
| [`inplace_vector`](inplace_vector/inplace_vector.md) | 容量固定の可変長配列(class template) | C++26 |
16+
17+
18+
## バージョン
19+
### 言語
20+
- C++26
21+
22+
## 参照
23+
- [P0843R14 `inplace_vector`](https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2024/p0843r14.html)

0 commit comments

Comments
 (0)