-
Notifications
You must be signed in to change notification settings - Fork 498
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
Undocument use
paths.
#665
Conversation
qualifiers] `crate`, `self`, `super`, or `::`. `crate` refers to the current | ||
crate. `self` refers to the current module. `super` refers to the parent | ||
module. `::` can be used to explicitly refer to a crate, requiring an extern | ||
crate name to follow. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The snippet above you're removing seems roughly accurate? Rather than removing it, can we just add your note?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think it is misleading, because it seems to imply there is something special about use
paths or that the first segment is restricted somehow. This hasn't been true since uniform paths (which feels like an eternity ago, but was only in January!).
The use
path is really any "vaild" path for some definition of "valid".
The "paths" chapter describes what all these qualifiers mean, so I don't think they need to be repeated.
From my incomplete notes (which are likely outdated), paths can also start with:
- Item? in the current scope. (Item may be the wrong word.)
- A macro in the macro_use prelude.
- An item in the prelude.
- Built-in type.
- Built-in attribute (but can't be used for some reason).
- Built-in tool module (but can't be used for some reason).
Plus a bunch of restrictions on what can't be used (associated items, built-in macros, type parameters, local variables, Self
types, impl
items, etc).
Update books ## reference 13 commits in 89dd146..3ce94ca 2020-03-31 09:42:10 -0700 to 2020-04-11 17:00:27 +0200 - UB definition: mention size_of_val for determining a reference's span (rust-lang/reference#793) - Emphasize that `#[inline]` in all shapes is a hint. (rust-lang/reference#791) - Added missing comma to Unions reference (rust-lang/reference#790) - Attributes are now allowed on `if` and `if let` (rust-lang/reference#783) - `enum`s can now be `#[repr(transparent)]` (rust-lang/reference#741) - Undocument `use` paths. (rust-lang/reference#665) - Clarify pub(restricted) a bit (rust-lang/reference#481) - Add information about || and && to grammar describing `while let`. (rust-lang/reference#772) - Document the `automatically_derived` attribute. (rust-lang/reference#555) - Fix unstable check. (rust-lang/reference#743) - Use common script for link checking. (rust-lang/reference#765) - Add a basic style guide. (rust-lang/reference#787) - Size fo empty structs in C is zero byte. (rust-lang/reference#782) ## book 14 commits in c8841f2841a2d26124319ddadd1b6a245f9a1856..f5db319e0b19c22964398d56bc63103d669e1bba 2020-03-22 09:07:01 -0500 to 2020-04-13 08:06:03 -0500 - Update ch01-01-installation.md to require TLS 1.2 (rust-lang/book#2301) - traits as parameters: Use references instead of moving the values (rust-lang/book#2239) - Fix a broken link - Update go docs link (rust-lang/book#2285) - Add the farsi translation repo link (rust-lang/book#2283) - Add the missing word to the sentence (ch06-2) (rust-lang/book#2278) - Fixes hardcoded output (rust-lang/book#2276) - Use rust-lang/rust linkchecker on CI. (rust-lang/book#2272) - Add union to the list of keywords (rust-lang/book#2271) - Clarify the wording (rust-lang/book#2256) - Improve sentence flow (rust-lang/book#2255) - Add missing apostrophe (rust-lang/book#2247) - Update cargo profiles link. (rust-lang/book#2245) - Add note about chapter 18 in chapter 6 (rust-lang/book#2238) ## rust-by-example 1 commits in a6638463efc7631bc0e8dc67ccd256d4e1b61f1a..c106d1683c3a2b0960f0f0fb01728cbb19807332 2020-04-06 09:39:03 -0500 to 2020-04-09 09:14:39 -0300 - Improve the conversion example (rust-lang/rust-by-example#1329) ## edition-guide 1 commits in 37f9e6848411188a1062ead1bd8ebe4b8aa16899..8204c1d123472cd17f0c1c5c77300ae802eb0271 2020-02-10 14:36:14 +0100 to 2020-04-09 18:55:50 -0700 - Fix forge link. (rust-lang/edition-guide#200) ## embedded-book 1 commits in d22a9c487c78095afc4584f1d9b4ec43529d713c..668fb07b6160b9c468f598e839c1e044db65de30 2020-03-04 09:46:30 +0000 to 2020-04-13 12:38:16 +0000 - Add triagebot configuration (rust-embedded/book#232)
Update books ## reference 13 commits in 89dd146..3ce94ca 2020-03-31 09:42:10 -0700 to 2020-04-11 17:00:27 +0200 - UB definition: mention size_of_val for determining a reference's span (rust-lang/reference#793) - Emphasize that `#[inline]` in all shapes is a hint. (rust-lang/reference#791) - Added missing comma to Unions reference (rust-lang/reference#790) - Attributes are now allowed on `if` and `if let` (rust-lang/reference#783) - `enum`s can now be `#[repr(transparent)]` (rust-lang/reference#741) - Undocument `use` paths. (rust-lang/reference#665) - Clarify pub(restricted) a bit (rust-lang/reference#481) - Add information about || and && to grammar describing `while let`. (rust-lang/reference#772) - Document the `automatically_derived` attribute. (rust-lang/reference#555) - Fix unstable check. (rust-lang/reference#743) - Use common script for link checking. (rust-lang/reference#765) - Add a basic style guide. (rust-lang/reference#787) - Size fo empty structs in C is zero byte. (rust-lang/reference#782) ## book 14 commits in c8841f2841a2d26124319ddadd1b6a245f9a1856..f5db319e0b19c22964398d56bc63103d669e1bba 2020-03-22 09:07:01 -0500 to 2020-04-13 08:06:03 -0500 - Update ch01-01-installation.md to require TLS 1.2 (rust-lang/book#2301) - traits as parameters: Use references instead of moving the values (rust-lang/book#2239) - Fix a broken link - Update go docs link (rust-lang/book#2285) - Add the farsi translation repo link (rust-lang/book#2283) - Add the missing word to the sentence (ch06-2) (rust-lang/book#2278) - Fixes hardcoded output (rust-lang/book#2276) - Use rust-lang/rust linkchecker on CI. (rust-lang/book#2272) - Add union to the list of keywords (rust-lang/book#2271) - Clarify the wording (rust-lang/book#2256) - Improve sentence flow (rust-lang/book#2255) - Add missing apostrophe (rust-lang/book#2247) - Update cargo profiles link. (rust-lang/book#2245) - Add note about chapter 18 in chapter 6 (rust-lang/book#2238) ## rust-by-example 1 commits in a6638463efc7631bc0e8dc67ccd256d4e1b61f1a..c106d1683c3a2b0960f0f0fb01728cbb19807332 2020-04-06 09:39:03 -0500 to 2020-04-09 09:14:39 -0300 - Improve the conversion example (rust-lang/rust-by-example#1329) ## edition-guide 1 commits in 37f9e6848411188a1062ead1bd8ebe4b8aa16899..8204c1d123472cd17f0c1c5c77300ae802eb0271 2020-02-10 14:36:14 +0100 to 2020-04-09 18:55:50 -0700 - Fix forge link. (rust-lang/edition-guide#200) ## embedded-book 1 commits in d22a9c487c78095afc4584f1d9b4ec43529d713c..668fb07b6160b9c468f598e839c1e044db65de30 2020-03-04 09:46:30 +0000 to 2020-04-13 12:38:16 +0000 - Add triagebot configuration (rust-embedded/book#232)
The current documentation is woefully out of date and incomplete. I've been trying off and on to study the resolver to begin #568, which will be required to finish this, but I probably won't be able to finish for a long while.