Skip to content

R7 and 8 of the paper and fixes to optional after wording and LEWG reviews. #70

Merged
steve-downey merged 127 commits intobemanproject:mainfrom
steve-downey:normalize
Nov 4, 2024
Merged

R7 and 8 of the paper and fixes to optional after wording and LEWG reviews. #70
steve-downey merged 127 commits intobemanproject:mainfrom
steve-downey:normalize

Conversation

@steve-downey
Copy link
Member

Wording review for paper, and fixes to make sure the constraints/mandates enforce the non-dangling design and other improvements in the API as suggested in reviews.

steve-downey and others added 30 commits August 4, 2024 11:25
Header is in sync with synopsis.
Make class declaration the synopsis version.
Move the assignment operators out of class synopsis declaration.
Define swap out of body
Definitions of begin and end moved out of line.
Move definitions out of the class declaration.
and_then etc out of line
Move reset out of the body.
Move the free functions out of the namespace. Make sure no declarations are
unintended from a slightly different definition.
optional_map_impl and monostate are dead.
Standardese lives in std and avoids naming the namespace, except for move and
forward.
No extra definitions snuck in, all back now inside the namespace so are not
noise.
Make change tracking back to std a little easier.
Apply all the changes to optional to the wording section of P2988.
Replace by expos or implementation defined.
The type of the u parameter must be convertible to a T, and T must be copy
constructible.
A few additional std:: names. Also remove the anon namespace. Doesn't protect
much as the std:: names are still available if someone uses namespace optional26.
Fix missing tex escapes in code blocks
Removed a stray detail:: that refereces a polyfill std:: trait.
Git marks all as renames, so history is connected.
Beman.Optional26 becomes beman.optional26, and Optional26 becomes optional26.
Don't leak std:: names into the optional26 namespace.
GCC is flase positive wanring on this in Anan mode.
Fix conflicts between main and the r8 branch
Remove the capability to make the misleading call of make_optional with an
explicit reference template parameter. This is the same technique, for the same
reasons, as is used for variant visit.
Remove make_optional<T&> from wording.
@steve-downey steve-downey self-assigned this Oct 26, 2024
@steve-downey steve-downey merged commit 167b51c into bemanproject:main Nov 4, 2024
Copy link
Member

@neatudarius neatudarius left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM 👍

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.

3 participants