[utility.arg.requirements] reformat in a style like [container.reqmts]#9142
[utility.arg.requirements] reformat in a style like [container.reqmts]#9142notdanhan wants to merge 4 commits into
Conversation
| \result | ||
| \tcode{decltype(a == b)} models \exposconceptx{boolean-testa\-ble}{boolean-testable} |
There was a problem hiding this comment.
Do we need to say decltype(expr) in Result? I think Result is already specifying the result type and value category of the expression in decltype-style.
There was a problem hiding this comment.
I'm actually not sure, should I just keep the exposition concept here?
|
This is awesome, thank you very much, @notdanhan! |
| presented in tabular form, possibly with additional prose semantic requirements. | ||
| For example, \oldconcept{Destructible}~(\tref{cpp17.destructible}) is such a named | ||
| requirement. Names in \tcode{constant width} type refer to library concepts | ||
| For example, \oldconcept{Destructible} is such a named requirement. |
There was a problem hiding this comment.
Why did we lose the cross-reference here?
| Tables~\ref{tab:cpp17.equalitycomparable}--\ref{tab:cpp17.destructible}. | ||
| In these tables, | ||
| refer to various named requirements whose details are set out below. | ||
| For each requirement, note the following: |
There was a problem hiding this comment.
Analogous to [container.intro.reqmts], how about:
"For each requirement in \ref{utility.arg.requirements}:"
| the \tcode{<} operator does not establish | ||
| a strict weak ordering~(\tref{cpp17.lessthancomparable}, \ref{expr.rel}). | ||
| a strict weak ordering | ||
| (\ref{cpp17.lessthancomparable}, \ref{expr.rel}). |
There was a problem hiding this comment.
This can use multi-argument \iref I think.
| If the pointers point to different complete objects (or subobjects thereof), | ||
| the \tcode{<} operator does not establish a strict weak ordering | ||
| (\tref{cpp17.lessthancomparable}, \ref{expr.rel}). | ||
| (\ref{cpp17.lessthancomparable}, \ref{expr.rel}). |
There was a problem hiding this comment.
Likewise here, a single \iref should be able to handle this.
| If the pointers point to different complete objects (or subobjects thereof), | ||
| the \tcode{<} operator does not establish | ||
| a strict weak ordering~(\tref{cpp17.lessthancomparable}, \ref{expr.rel}). | ||
| a strict weak ordering~(\iref{cpp17.lessthancomparable}, \ref{expr.rel}). |
| \oldconcept{CopyAssignable}\iref{cpp17.copyassignable}, | ||
| and | ||
| \oldconcept{Equality\-Comp\-arable} (\tref{cpp17.equalitycomparable}) requirements. | ||
| \oldconcept{Equality\-Comp\-arable}\iref{cpp17.equalitycomparable} requirements. |
There was a problem hiding this comment.
Drive-by: while you're here, could you have a look if we can get rid of those hyphenation hints now?
| the types \tcode{TC::rep}, \tcode{TC::duration}, and \tcode{TC::time_point} | ||
| meet the \oldconcept{EqualityComparable} (\tref{cpp17.equalitycomparable}) and | ||
| \oldconcept{LessThanComparable} (\tref{cpp17.lessthancomparable}) | ||
| meet the\\ \oldconcept{EqualityComparable}\iref{cpp17.equalitycomparable} and |
There was a problem hiding this comment.
instead of hard line breaks, try adding hyphenation hints first.
| call argument type, the \oldconcept{Default\-Constructible} requirements (\tref{cpp17.defaultconstructible}), | ||
| the \oldconcept{CopyAssignable} requirements (\tref{cpp17.copyassignable}), | ||
| with \tcode{Key} as the function call argument type, | ||
| the \oldconcept{Default\-Constructible} requirements\iref{cpp17.defaultconstructible}, \\ |
There was a problem hiding this comment.
similarly here, see if you can work with hyphenation hints instead
|
@notdanhan do also feel free to sqash, rebase and force-submit at some point. Having the full edit history isn't so important at this point. |
It looks like this now
Additional work was needed to change some
\tref{}to\iref{}across the document, along with two reflows of paragraphs to stop hbox badnessI did some mild rewording in source/lib-intro.tex to make it make sense in the new format. I hope to have not introduced any wording defects! :)