You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: compiler/rustc_attr_parsing/src/lib.rs
+11-19Lines changed: 11 additions & 19 deletions
Original file line number
Diff line number
Diff line change
@@ -2,9 +2,9 @@
2
2
//!
3
3
//! ## Architecture
4
4
//! This crate is part of a series of crates and modules that handle attribute processing.
5
-
//! - [rustc_hir::attrs](https://doc.rust-lang.org/nightly/nightly-rustc/rustc_hir/index.html): Defines the data structures that store parsed attributes
6
-
//! - [rustc_attr_parsing](https://doc.rust-lang.org/nightly/nightly-rustc/rustc_attr_parsing/index.html): This crate, handles the parsing of attributes
7
-
//! - (planned) rustc_attr_validation: Will handle attribute validation, logic currently handled in `rustc_passes`
5
+
//! - [`rustc_hir::attrs`]: Defines the data structures that store parsed attributes
6
+
//! - `rustc_attr_parsing`: This crate, handles the parsing of attributes
7
+
//! - [`rustc_passes::check_attr`] handles attribute validation that cannot be done in this crate
8
8
//!
9
9
//! The separation between data structures and parsing follows the principle of separation of concerns.
10
10
//! Data structures (`rustc_hir::attrs`) define what attributes look like after parsing.
@@ -13,7 +13,7 @@
13
13
//! the parsing logic, making the codebase more modular and maintainable.
14
14
//!
15
15
//! ## Background
16
-
//! Previously, the compiler had a single attribute definition (`ast::Attribute`) with parsing and
16
+
//! Previously, the compiler had a single attribute definition ([`ast::Attribute`]) with parsing and
17
17
//! validation scattered throughout the codebase. This was reorganized for better maintainability
18
18
//! (see [#131229](https://github.com/rust-lang/rust/issues/131229)).
19
19
//!
@@ -61,7 +61,7 @@
61
61
//! `#[stable(...)]` and `#[unstable()]` cannot occur together, and both semantically define
62
62
//! a "stability" of an item. So, the stability attribute has an
63
63
//! [`AttributeParser`](attributes::AttributeParser) that recognizes both the `#[stable()]`
64
-
//! and `#[unstable()]` syntactic attributes, and at the end produce a single
64
+
//! and `#[unstable()]` syntactic attributes, and at the end produces a single
0 commit comments