Skip to content

Commit f6d667f

Browse files
committed
Introduce a prelude for very common imports across dozens of files
1 parent 326231c commit f6d667f

25 files changed

+99
-169
lines changed

compiler/rustc_attr_parsing/src/attributes/allow_unstable.rs

Lines changed: 1 addition & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,6 @@
11
use std::iter;
22

3-
use rustc_feature::{AttributeTemplate, template};
4-
use rustc_hir::attrs::AttributeKind;
5-
use rustc_hir::{MethodKind, Target};
6-
use rustc_span::{Span, Symbol, sym};
7-
8-
use super::{CombineAttributeParser, ConvertFn};
9-
use crate::context::MaybeWarn::{Allow, Warn};
10-
use crate::context::{AcceptContext, AllowedTargets, Stage};
11-
use crate::parser::ArgParser;
3+
use super::prelude::*;
124
use crate::session_diagnostics;
135

146
pub(crate) struct AllowInternalUnstableParser;

compiler/rustc_attr_parsing/src/attributes/body.rs

Lines changed: 1 addition & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,6 @@
11
//! Attributes that can be found in function body.
22
3-
use rustc_hir::Target;
4-
use rustc_hir::attrs::AttributeKind;
5-
use rustc_span::{Symbol, sym};
6-
7-
use super::{NoArgsAttributeParser, OnDuplicate};
8-
use crate::context::MaybeWarn::Allow;
9-
use crate::context::{AllowedTargets, Stage};
3+
use super::prelude::*;
104

115
pub(crate) struct CoroutineParser;
126

compiler/rustc_attr_parsing/src/attributes/codegen_attrs.rs

Lines changed: 3 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,7 @@
1-
use rustc_feature::{AttributeTemplate, template};
2-
use rustc_hir::attrs::{AttributeKind, CoverageAttrKind, OptimizeAttr, UsedBy};
3-
use rustc_hir::{MethodKind, Target};
1+
use rustc_hir::attrs::{CoverageAttrKind, OptimizeAttr, UsedBy};
42
use rustc_session::parse::feature_err;
5-
use rustc_span::{Span, Symbol, sym};
6-
7-
use super::{
8-
AcceptMapping, AttributeOrder, AttributeParser, CombineAttributeParser, ConvertFn,
9-
NoArgsAttributeParser, OnDuplicate, SingleAttributeParser,
10-
};
11-
use crate::context::MaybeWarn::{Allow, Warn};
12-
use crate::context::{AcceptContext, AllowedTargets, FinalizeContext, Stage};
13-
use crate::parser::ArgParser;
3+
4+
use super::prelude::*;
145
use crate::session_diagnostics::{NakedFunctionIncompatibleAttribute, NullOnExport};
156

167
pub(crate) struct OptimizeParser;

compiler/rustc_attr_parsing/src/attributes/confusables.rs

Lines changed: 4 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,6 @@
1-
use rustc_feature::template;
2-
use rustc_hir::attrs::AttributeKind;
3-
use rustc_hir::{MethodKind, Target};
4-
use rustc_span::{Span, Symbol, sym};
5-
use thin_vec::ThinVec;
6-
7-
use super::{AcceptMapping, AttributeParser};
8-
use crate::context::MaybeWarn::Allow;
9-
use crate::context::{AllowedTargets, FinalizeContext, Stage};
10-
use crate::session_diagnostics;
1+
use super::prelude::*;
2+
use crate::session_diagnostics::EmptyConfusables;
3+
114
#[derive(Default)]
125
pub(crate) struct ConfusablesParser {
136
confusables: ThinVec<Symbol>,
@@ -25,7 +18,7 @@ impl<S: Stage> AttributeParser<S> for ConfusablesParser {
2518
};
2619

2720
if list.is_empty() {
28-
cx.emit_err(session_diagnostics::EmptyConfusables { span: cx.attr_span });
21+
cx.emit_err(EmptyConfusables { span: cx.attr_span });
2922
}
3023

3124
for param in list.mixed() {

compiler/rustc_attr_parsing/src/attributes/deprecation.rs

Lines changed: 10 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,11 @@
1-
use rustc_feature::{AttributeTemplate, template};
2-
use rustc_hir::attrs::{AttributeKind, DeprecatedSince, Deprecation};
3-
use rustc_hir::{MethodKind, Target};
4-
use rustc_span::{Span, Symbol, sym};
1+
use rustc_hir::attrs::{DeprecatedSince, Deprecation};
52

3+
use super::prelude::*;
64
use super::util::parse_version;
7-
use super::{AttributeOrder, OnDuplicate, SingleAttributeParser};
8-
use crate::context::MaybeWarn::{Allow, Error};
9-
use crate::context::{AcceptContext, AllowedTargets, Stage};
10-
use crate::parser::ArgParser;
11-
use crate::session_diagnostics;
5+
use crate::session_diagnostics::{
6+
DeprecatedItemSuggestion, InvalidSince, MissingNote, MissingSince,
7+
};
8+
129
pub(crate) struct DeprecationParser;
1310

1411
fn get<S: Stage>(
@@ -100,7 +97,7 @@ impl<S: Stage> SingleAttributeParser<S> for DeprecationParser {
10097
}
10198
Some(name @ sym::suggestion) => {
10299
if !features.deprecated_suggestion() {
103-
cx.emit_err(session_diagnostics::DeprecatedItemSuggestion {
100+
cx.emit_err(DeprecatedItemSuggestion {
104101
span: param.span(),
105102
is_nightly: cx.sess().is_nightly_build(),
106103
details: (),
@@ -142,18 +139,18 @@ impl<S: Stage> SingleAttributeParser<S> for DeprecationParser {
142139
} else if let Some(version) = parse_version(since) {
143140
DeprecatedSince::RustcVersion(version)
144141
} else {
145-
cx.emit_err(session_diagnostics::InvalidSince { span: cx.attr_span });
142+
cx.emit_err(InvalidSince { span: cx.attr_span });
146143
DeprecatedSince::Err
147144
}
148145
} else if is_rustc {
149-
cx.emit_err(session_diagnostics::MissingSince { span: cx.attr_span });
146+
cx.emit_err(MissingSince { span: cx.attr_span });
150147
DeprecatedSince::Err
151148
} else {
152149
DeprecatedSince::Unspecified
153150
};
154151

155152
if is_rustc && note.is_none() {
156-
cx.emit_err(session_diagnostics::MissingNote { span: cx.attr_span });
153+
cx.emit_err(MissingNote { span: cx.attr_span });
157154
return None;
158155
}
159156

compiler/rustc_attr_parsing/src/attributes/dummy.rs

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,10 @@ use rustc_hir::attrs::AttributeKind;
33
use rustc_span::{Symbol, sym};
44

55
use crate::attributes::{AttributeOrder, OnDuplicate, SingleAttributeParser};
6-
use crate::context::{ALL_TARGETS, AcceptContext, AllowedTargets, Stage};
6+
use crate::context::{AcceptContext, Stage};
77
use crate::parser::ArgParser;
8+
use crate::target_checking::{ALL_TARGETS, AllowedTargets};
9+
810
pub(crate) struct DummyParser;
911
impl<S: Stage> SingleAttributeParser<S> for DummyParser {
1012
const PATH: &[Symbol] = &[sym::rustc_dummy];

compiler/rustc_attr_parsing/src/attributes/inline.rs

Lines changed: 2 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -2,17 +2,10 @@
22
// note: need to model better how duplicate attr errors work when not using
33
// SingleAttributeParser which is what we have two of here.
44

5-
use rustc_feature::{AttributeTemplate, template};
65
use rustc_hir::attrs::{AttributeKind, InlineAttr};
7-
use rustc_hir::lints::AttributeLintKind;
8-
use rustc_hir::{MethodKind, Target};
9-
use rustc_span::{Symbol, sym};
106

11-
use super::{AcceptContext, AttributeOrder, OnDuplicate};
12-
use crate::attributes::SingleAttributeParser;
13-
use crate::context::MaybeWarn::{Allow, Warn};
14-
use crate::context::{AllowedTargets, Stage};
15-
use crate::parser::ArgParser;
7+
use super::prelude::*;
8+
169
pub(crate) struct InlineParser;
1710

1811
impl<S: Stage> SingleAttributeParser<S> for InlineParser {

compiler/rustc_attr_parsing/src/attributes/link_attrs.rs

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,18 @@
1-
use rustc_feature::{AttributeTemplate, template};
21
use rustc_hir::attrs::AttributeKind::{LinkName, LinkOrdinal, LinkSection};
3-
use rustc_hir::attrs::{AttributeKind, Linkage};
2+
use rustc_hir::attrs::Linkage;
43
use rustc_hir::{MethodKind, Target};
54
use rustc_span::{Span, Symbol, sym};
65

6+
use super::prelude::*;
7+
use super::util::parse_single_integer;
78
use crate::attributes::{
89
AttributeOrder, NoArgsAttributeParser, OnDuplicate, SingleAttributeParser,
910
};
10-
use crate::context::MaybeWarn::Allow;
11-
use crate::context::{ALL_TARGETS, AcceptContext, AllowedTargets, Stage, parse_single_integer};
11+
use crate::context::{AcceptContext, Stage};
1212
use crate::parser::ArgParser;
1313
use crate::session_diagnostics::{LinkOrdinalOutOfRange, NullOnLinkSection};
14+
use crate::target_checking::Policy::Allow;
15+
use crate::target_checking::{ALL_TARGETS, AllowedTargets};
1416
pub(crate) struct LinkNameParser;
1517

1618
impl<S: Stage> SingleAttributeParser<S> for LinkNameParser {

compiler/rustc_attr_parsing/src/attributes/lint_helpers.rs

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,5 @@
1-
use rustc_hir::attrs::AttributeKind;
2-
use rustc_hir::{MethodKind, Target};
3-
use rustc_span::{Span, Symbol, sym};
1+
use super::prelude::*;
42

5-
use crate::attributes::{NoArgsAttributeParser, OnDuplicate};
6-
use crate::context::MaybeWarn::{Allow, Error};
7-
use crate::context::{AllowedTargets, Stage};
83
pub(crate) struct AsPtrParser;
94
impl<S: Stage> NoArgsAttributeParser<S> for AsPtrParser {
105
const PATH: &[Symbol] = &[sym::rustc_as_ptr];

compiler/rustc_attr_parsing/src/attributes/loop_match.rs

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,5 @@
1-
use rustc_hir::Target;
2-
use rustc_hir::attrs::AttributeKind;
3-
use rustc_span::{Span, Symbol, sym};
1+
use super::prelude::*;
42

5-
use crate::attributes::{NoArgsAttributeParser, OnDuplicate};
6-
use crate::context::MaybeWarn::Allow;
7-
use crate::context::{AllowedTargets, Stage};
83
pub(crate) struct LoopMatchParser;
94
impl<S: Stage> NoArgsAttributeParser<S> for LoopMatchParser {
105
const PATH: &[Symbol] = &[sym::loop_match];

0 commit comments

Comments
 (0)