| Summary: | Use alias template to define `match_constness` in Wtf/wtp/TypeCasts.h | ||||||||
|---|---|---|---|---|---|---|---|---|---|
| Product: | WebKit | Reporter: | Tetsuharu Ohzeki [UTC+9] <tetsuharu.ohzeki> | ||||||
| Component: | Web Template Framework | Assignee: | Nobody <webkit-unassigned> | ||||||
| Status: | RESOLVED FIXED | ||||||||
| Severity: | Normal | CC: | benjamin, cdumez, cmarcelo, darin, ews-watchlist, webkit-bug-importer, ysuzuki | ||||||
| Priority: | P2 | Keywords: | InRadar | ||||||
| Version: | WebKit Nightly Build | ||||||||
| Hardware: | Unspecified | ||||||||
| OS: | Unspecified | ||||||||
| Bug Depends on: | |||||||||
| Bug Blocks: | 211714 | ||||||||
| Attachments: |
|
||||||||
|
Description
Tetsuharu Ohzeki [UTC+9]
2020-05-10 09:51:38 PDT
Created attachment 398977 [details]
Patch
Comment on attachment 398977 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=398977&action=review r=me with nit. > Source/WTF/wtf/TypeCasts.h:71 > +using match_constness = > + typename std::conditional<std::is_const<Reference>::value, typename std::add_const<T>::type, typename std::remove_const<T>::type>::type; `match_correctness` looks like not following to the WebKit's naming convention. Based on https://bugs.webkit.org/show_bug.cgi?id=140905#c4, I guess that this is intentionally using C++ STL's naming convention here. Then, can you change this to `match_constness_t`? When using alias template and generating type without using `::type`, C++ STL uses `_t` suffix. e.g. https://en.cppreference.com/w/cpp/types/make_signed Created attachment 398990 [details]
Patch
Comment on attachment 398990 [details]
Patch
Yusuke, could you review this patch again?
Committed r261465: <https://trac.webkit.org/changeset/261465> All reviewed patches have been landed. Closing bug and clearing flags on attachment 398990 [details]. Comment on attachment 398990 [details]
Patch
Surprised that the standard library doesn’t have something like this.
Comment on attachment 398990 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=398990&action=review > Source/WTF/wtf/TypeCasts.h:71 > + typename std::conditional<std::is_const<Reference>::value, typename std::add_const<T>::type, typename std::remove_const<T>::type>::type; As long as we are modernizing, should use conditional_t, is_const_v, add_const_t, and remove_const_t. |