Skip to content

Commit a4cb3c8

Browse files
committed
Auto merge of rust-lang#134381 - jdonszelmann:move-attribute-types, r=oli-obk
Split up attribute parsing code and move data types to `rustc_attr_data_structures` This change renames `rustc_attr` to `rustc_attr_parsing`, and splits up the parsing code. At the same time, all the data types used move to `rustc_attr_data_structures`. This is in preparation of also having a third crate: `rustc_attr_validation` I initially envisioned this as two separate PRs, but I think doing it in one go reduces the number of ways others would have to rebase their changes on this. However, I can still split them. r? `@oli-obk` (we already discussed how this is a first step in a larger plan) For a more detailed plan on how attributes are going to change, see rust-lang#131229 Edit: this looks like a giant PR, but the changes are actually rather trivial. Each commit is reviewable on its own, and mostly moves code around. No new logic is added.
2 parents 1d35638 + efb98b6 commit a4cb3c8

File tree

108 files changed

+1821
-1629
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

108 files changed

+1821
-1629
lines changed

Diff for: Cargo.lock

+39-20
Original file line numberDiff line numberDiff line change
@@ -3354,7 +3354,7 @@ dependencies = [
33543354
"itertools",
33553355
"rustc_ast",
33563356
"rustc_ast_pretty",
3357-
"rustc_attr",
3357+
"rustc_attr_parsing",
33583358
"rustc_data_structures",
33593359
"rustc_errors",
33603360
"rustc_feature",
@@ -3380,7 +3380,7 @@ dependencies = [
33803380
]
33813381

33823382
[[package]]
3383-
name = "rustc_attr"
3383+
name = "rustc_attr_data_structures"
33843384
version = "0.0.0"
33853385
dependencies = [
33863386
"rustc_abi",
@@ -3397,6 +3397,25 @@ dependencies = [
33973397
"rustc_span",
33983398
]
33993399

3400+
[[package]]
3401+
name = "rustc_attr_parsing"
3402+
version = "0.0.0"
3403+
dependencies = [
3404+
"rustc_abi",
3405+
"rustc_ast",
3406+
"rustc_ast_pretty",
3407+
"rustc_attr_data_structures",
3408+
"rustc_data_structures",
3409+
"rustc_errors",
3410+
"rustc_feature",
3411+
"rustc_fluent_macro",
3412+
"rustc_lexer",
3413+
"rustc_macros",
3414+
"rustc_serialize",
3415+
"rustc_session",
3416+
"rustc_span",
3417+
]
3418+
34003419
[[package]]
34013420
name = "rustc_baked_icu_data"
34023421
version = "0.0.0"
@@ -3441,7 +3460,7 @@ version = "0.0.0"
34413460
dependencies = [
34423461
"rustc_ast",
34433462
"rustc_ast_pretty",
3444-
"rustc_attr",
3463+
"rustc_attr_parsing",
34453464
"rustc_data_structures",
34463465
"rustc_errors",
34473466
"rustc_expand",
@@ -3473,7 +3492,7 @@ dependencies = [
34733492
"rustc-demangle",
34743493
"rustc_abi",
34753494
"rustc_ast",
3476-
"rustc_attr",
3495+
"rustc_attr_parsing",
34773496
"rustc_codegen_ssa",
34783497
"rustc_data_structures",
34793498
"rustc_errors",
@@ -3515,7 +3534,7 @@ dependencies = [
35153534
"rustc_arena",
35163535
"rustc_ast",
35173536
"rustc_ast_pretty",
3518-
"rustc_attr",
3537+
"rustc_attr_parsing",
35193538
"rustc_data_structures",
35203539
"rustc_errors",
35213540
"rustc_fluent_macro",
@@ -3553,7 +3572,7 @@ dependencies = [
35533572
"rustc_abi",
35543573
"rustc_apfloat",
35553574
"rustc_ast",
3556-
"rustc_attr",
3575+
"rustc_attr_parsing",
35573576
"rustc_data_structures",
35583577
"rustc_errors",
35593578
"rustc_fluent_macro",
@@ -3620,7 +3639,7 @@ dependencies = [
36203639
"rustc_ast_lowering",
36213640
"rustc_ast_passes",
36223641
"rustc_ast_pretty",
3623-
"rustc_attr",
3642+
"rustc_attr_parsing",
36243643
"rustc_borrowck",
36253644
"rustc_builtin_macros",
36263645
"rustc_codegen_ssa",
@@ -3724,7 +3743,7 @@ dependencies = [
37243743
"rustc_ast",
37253744
"rustc_ast_passes",
37263745
"rustc_ast_pretty",
3727-
"rustc_attr",
3746+
"rustc_attr_parsing",
37283747
"rustc_data_structures",
37293748
"rustc_errors",
37303749
"rustc_feature",
@@ -3799,7 +3818,7 @@ dependencies = [
37993818
"rustc_abi",
38003819
"rustc_arena",
38013820
"rustc_ast",
3802-
"rustc_attr",
3821+
"rustc_attr_parsing",
38033822
"rustc_data_structures",
38043823
"rustc_errors",
38053824
"rustc_feature",
@@ -3838,7 +3857,7 @@ dependencies = [
38383857
"rustc_abi",
38393858
"rustc_ast",
38403859
"rustc_ast_ir",
3841-
"rustc_attr",
3860+
"rustc_attr_parsing",
38423861
"rustc_data_structures",
38433862
"rustc_errors",
38443863
"rustc_fluent_macro",
@@ -3927,7 +3946,7 @@ dependencies = [
39273946
"rustc_ast_lowering",
39283947
"rustc_ast_passes",
39293948
"rustc_ast_pretty",
3930-
"rustc_attr",
3949+
"rustc_attr_parsing",
39313950
"rustc_borrowck",
39323951
"rustc_builtin_macros",
39333952
"rustc_codegen_llvm",
@@ -3983,7 +4002,7 @@ dependencies = [
39834002
"rustc_abi",
39844003
"rustc_ast",
39854004
"rustc_ast_pretty",
3986-
"rustc_attr",
4005+
"rustc_attr_parsing",
39874006
"rustc_data_structures",
39884007
"rustc_errors",
39894008
"rustc_feature",
@@ -4057,7 +4076,7 @@ dependencies = [
40574076
"odht",
40584077
"rustc_abi",
40594078
"rustc_ast",
4060-
"rustc_attr",
4079+
"rustc_attr_parsing",
40614080
"rustc_data_structures",
40624081
"rustc_errors",
40634082
"rustc_expand",
@@ -4094,7 +4113,7 @@ dependencies = [
40944113
"rustc_arena",
40954114
"rustc_ast",
40964115
"rustc_ast_ir",
4097-
"rustc_attr",
4116+
"rustc_attr_parsing",
40984117
"rustc_data_structures",
40994118
"rustc_error_messages",
41004119
"rustc_errors",
@@ -4173,7 +4192,7 @@ dependencies = [
41734192
"rustc_abi",
41744193
"rustc_arena",
41754194
"rustc_ast",
4176-
"rustc_attr",
4195+
"rustc_attr_parsing",
41774196
"rustc_const_eval",
41784197
"rustc_data_structures",
41794198
"rustc_errors",
@@ -4199,7 +4218,7 @@ name = "rustc_monomorphize"
41994218
version = "0.0.0"
42004219
dependencies = [
42014220
"rustc_abi",
4202-
"rustc_attr",
4221+
"rustc_attr_parsing",
42034222
"rustc_data_structures",
42044223
"rustc_errors",
42054224
"rustc_fluent_macro",
@@ -4267,7 +4286,7 @@ dependencies = [
42674286
"rustc_abi",
42684287
"rustc_ast",
42694288
"rustc_ast_pretty",
4270-
"rustc_attr",
4289+
"rustc_attr_parsing",
42714290
"rustc_data_structures",
42724291
"rustc_errors",
42734292
"rustc_expand",
@@ -4313,7 +4332,7 @@ name = "rustc_privacy"
43134332
version = "0.0.0"
43144333
dependencies = [
43154334
"rustc_ast",
4316-
"rustc_attr",
4335+
"rustc_attr_parsing",
43174336
"rustc_data_structures",
43184337
"rustc_errors",
43194338
"rustc_fluent_macro",
@@ -4377,7 +4396,7 @@ dependencies = [
43774396
"rustc_arena",
43784397
"rustc_ast",
43794398
"rustc_ast_pretty",
4380-
"rustc_attr",
4399+
"rustc_attr_parsing",
43814400
"rustc_data_structures",
43824401
"rustc_errors",
43834402
"rustc_expand",
@@ -4534,7 +4553,7 @@ dependencies = [
45344553
"rustc_abi",
45354554
"rustc_ast",
45364555
"rustc_ast_ir",
4537-
"rustc_attr",
4556+
"rustc_attr_parsing",
45384557
"rustc_data_structures",
45394558
"rustc_errors",
45404559
"rustc_fluent_macro",

Diff for: compiler/rustc_ast_passes/Cargo.toml

+1-1
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ edition = "2021"
88
itertools = "0.12"
99
rustc_ast = { path = "../rustc_ast" }
1010
rustc_ast_pretty = { path = "../rustc_ast_pretty" }
11-
rustc_attr = { path = "../rustc_attr" }
11+
rustc_attr_parsing = { path = "../rustc_attr_parsing" }
1212
rustc_data_structures = { path = "../rustc_data_structures" }
1313
rustc_errors = { path = "../rustc_errors" }
1414
rustc_feature = { path = "../rustc_feature" }

Diff for: compiler/rustc_ast_passes/src/ast_validation.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -342,7 +342,7 @@ impl<'a> AstValidator<'a> {
342342
sym::forbid,
343343
sym::warn,
344344
];
345-
!arr.contains(&attr.name_or_empty()) && rustc_attr::is_builtin_attr(*attr)
345+
!arr.contains(&attr.name_or_empty()) && rustc_attr_parsing::is_builtin_attr(*attr)
346346
})
347347
.for_each(|attr| {
348348
if attr.is_doc_comment() {

0 commit comments

Comments
 (0)