Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[associative.reqmts]の内容を追記 #953

Merged
merged 1 commit into from
Mar 19, 2022

Conversation

wx257osn2
Copy link
Member

@wx257osn2 wx257osn2 commented Mar 14, 2022

非順序連想コンテナについては [unord.req.general]insert , emplace , erase のイテレータに関する要件が記載されているのに対して(順序)連想コンテナでは [associative.reqmts.general] の同関数群のイテレータに関する要件が記載されていなかったため,追記しました.

それはそれとして [container.requirements] の内容を各コンテナに全部記載して回るのかという話はあり,いい感じの指針があると良さそう…(というのは別途issueを建てたほうがいいんですかね?)

@onihusube
Copy link
Member

多分内容は大丈夫だと思います。

コンテナ要件だと #779 とかが関連すると思います。よく見ると名前付き要件のカテゴリページはできてないですね・・・
その辺も含めた議論は別にissueでやるのが良いかと思います。

@yohhoy
Copy link
Member

yohhoy commented Mar 18, 2022

強い指摘コメントではなく、単にニュアンス・意図の確認です。

なお、規格書に明確な記載は無いが、当該コンテナ内の要素を指すポインタも無効にはならない。

上記の注釈文は、C++規格で明言される「要素を指す参照やイテレータは無効にならない」ことから、同要素を指すポインタも当然無効にならないと自明に導出される、という流れでしょうか?

@wx257osn2
Copy link
Member Author

wx257osn2 commented Mar 18, 2022

@yohhoy

C++規格で明言される「要素を指す参照やイテレータは無効にならない」ことから、同要素を指すポインタも当然無効にならないと自明に導出される、という流れでしょうか?

これはunordered_map 等の記述を踏襲したものなので最初に記述した人がどういう意図であったかを私は知らないのですが(blameしたらhtmlからmdへ変換するコミットが出てきてしまったので誰が書いたものなのかわからず),私の解釈としてはその通り(厳密には参照が無効にならないことからの導出; イテレータのvalidityと要素本体(参照)のvalidityは必ずしも紐付いていないため)です.

@yohhoy
Copy link
Member

yohhoy commented Mar 18, 2022

これはunordered_map 等の記述を踏襲したもの
私の解釈としてはその通り(厳密には参照が無効にならないことからの導出; イテレータのvalidityと要素本体のvalidityは必ずしも紐付いていないため)です.

@wx257osn2 さん:既存記述と揃えた旨、および考え方については理解しました。

確認ありがとうございます。本件を修正すべきとは考えておらず、私からの追加コメントはありません。

@faithandbrave
Copy link
Member

ひとまずマージしちゃいましょう!ありがとうございます。

@faithandbrave faithandbrave merged commit bc79b1c into master Mar 19, 2022
@faithandbrave faithandbrave deleted the add-description-from-associative_reqmts branch March 19, 2022 02:32
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants