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

Use named arguments for {,u}int_impls macro #108279

Merged
merged 2 commits into from
Feb 21, 2023
Merged

Conversation

Noratrieb
Copy link
Member

This makes it way easier to understand.

r? @scottmcm

This makes it easier to understand.
This makes it easier to understand.
@rustbot rustbot added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. T-libs Relevant to the library team, which will review and decide on the PR/issue. labels Feb 20, 2023
@rustbot
Copy link
Collaborator

rustbot commented Feb 20, 2023

Hey! It looks like you've submitted a new PR for the library teams!

If this PR contains changes to any rust-lang/rust public library APIs then please comment with @rustbot label +T-libs-api -T-libs to tag it appropriately. If this PR contains changes to any unstable APIs please edit the PR description to add a link to the relevant API Change Proposal or create one if you haven't already. If you're unsure where your change falls no worries, just leave it as is and the reviewer will take a look and make a decision to forward on if necessary.

Examples of T-libs-api changes:

  • Stabilizing library features
  • Introducing insta-stable changes such as new implementations of existing stable traits on existing stable types
  • Introducing new or changing existing unstable library APIs (excluding permanently unstable features / features without a tracking issue)
  • Changing public documentation in ways that create new stability guarantees
  • Changing observable runtime behavior of library APIs

@est31
Copy link
Member

est31 commented Feb 20, 2023

I wonder if it makes sense to distinguish here between "used in docs" vs "not used in docs", say via a doc_ prefix, but looking at the code, it seems that basically every parameter is only used in docs except for ActualT...

@scottmcm
Copy link
Member

it seems that basically every parameter is only used in docs

Hmm, I suppose there's something fundamental here: the only reason that these have to be macro parameters at all is to use them lexically in docs.

Whenever they're used by actual code, they could have just been private associated types/constants instead. (For example, it could use Self::UnsignedType/Self::SignedType instead of $UnsignedT/$SignedT, and just define those in the impl block, rather than passing them as parameters.)

@scottmcm
Copy link
Member

But regardless, this PR is still good-to-go on its own as a nice improvement

@bors r+ rollup

(It's making me think that maybe BITS_MINUS_ONE being an expr isn't useful, for example -- if it's not a literal then it could just use ($BITS-1) if it needed it. Similarly for BITS, which is always sizeof(Self)*8 if it being an expr is fine. But none of those things are this PR's problem.)

@bors
Copy link
Contributor

bors commented Feb 20, 2023

📌 Commit eb5d82b has been approved by scottmcm

It is now in the queue for this repository.

@bors bors added S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Feb 20, 2023
bors added a commit to rust-lang-ci/rust that referenced this pull request Feb 20, 2023
…iaskrgr

Rollup of 6 pull requests

Successful merges:

 - rust-lang#108241 (Fix handling of reexported macro in doc hidden items)
 - rust-lang#108254 (Refine error span for trait error into borrowed expression)
 - rust-lang#108255 (Remove old FIXMEs referring to rust-lang#19596)
 - rust-lang#108257 (Remove old FIXME that no longer applies)
 - rust-lang#108276 (small `opaque_type_origin` cleanup)
 - rust-lang#108279 (Use named arguments for `{,u}int_impls` macro)

Failed merges:

r? `@ghost`
`@rustbot` modify labels: rollup
@bors bors merged commit 4f532da into rust-lang:master Feb 21, 2023
@rustbot rustbot added this to the 1.69.0 milestone Feb 21, 2023
@Noratrieb Noratrieb deleted the int branch February 21, 2023 05:44
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. T-libs Relevant to the library team, which will review and decide on the PR/issue.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants