mirror of
https://github.com/rust-lang/rust-clippy
synced 2024-11-23 21:23:56 +00:00
upper_case_acronyms: add ui and ui-toml tests for private/public enums
This commit is contained in:
parent
4e19d406a9
commit
ca7e95501c
5 changed files with 52 additions and 5 deletions
|
@ -1,7 +1,6 @@
|
||||||
use clippy_utils::diagnostics::span_lint_and_sugg;
|
use clippy_utils::diagnostics::span_lint_and_sugg;
|
||||||
use if_chain::if_chain;
|
|
||||||
use itertools::Itertools;
|
use itertools::Itertools;
|
||||||
use rustc_ast::ast::{Item, ItemKind, Variant, VisibilityKind};
|
use rustc_ast::ast::{Item, ItemKind, VisibilityKind};
|
||||||
use rustc_errors::Applicability;
|
use rustc_errors::Applicability;
|
||||||
use rustc_lint::{EarlyContext, EarlyLintPass, LintContext};
|
use rustc_lint::{EarlyContext, EarlyLintPass, LintContext};
|
||||||
use rustc_middle::lint::in_external_macro;
|
use rustc_middle::lint::in_external_macro;
|
||||||
|
@ -109,7 +108,7 @@ impl EarlyLintPass for UpperCaseAcronyms {
|
||||||
} else if let ItemKind::Enum(ref enumdef, _) = it.kind {
|
} else if let ItemKind::Enum(ref enumdef, _) = it.kind {
|
||||||
// check enum variants seperately because again we only want to lint on private enums and
|
// check enum variants seperately because again we only want to lint on private enums and
|
||||||
// the fn check_variant does not know about the vis of the enum of its variants
|
// the fn check_variant does not know about the vis of the enum of its variants
|
||||||
&enumdef
|
enumdef
|
||||||
.variants
|
.variants
|
||||||
.iter()
|
.iter()
|
||||||
.for_each(|variant| check_ident(cx, &variant.ident, self.upper_case_acronyms_aggressive));
|
.for_each(|variant| check_ident(cx, &variant.ident, self.upper_case_acronyms_aggressive));
|
||||||
|
|
|
@ -25,4 +25,20 @@ pub struct MIXEDCapital;
|
||||||
|
|
||||||
pub struct FULLCAPITAL;
|
pub struct FULLCAPITAL;
|
||||||
|
|
||||||
|
// enum variants should not be linted if the num is pub
|
||||||
|
pub enum ParseError<T> {
|
||||||
|
FULLCAPITAL(u8),
|
||||||
|
MIXEDCapital(String),
|
||||||
|
Utf8(std::string::FromUtf8Error),
|
||||||
|
Parse(T, String),
|
||||||
|
}
|
||||||
|
|
||||||
|
// private, do lint here
|
||||||
|
enum ParseErrorPrivate<T> {
|
||||||
|
WASD(u8),
|
||||||
|
WASDMixed(String),
|
||||||
|
Utf8(std::string::FromUtf8Error),
|
||||||
|
Parse(T, String),
|
||||||
|
}
|
||||||
|
|
||||||
fn main() {}
|
fn main() {}
|
||||||
|
|
|
@ -66,5 +66,17 @@ error: name `GCCLLVMSomething` contains a capitalized acronym
|
||||||
LL | struct GCCLLVMSomething;
|
LL | struct GCCLLVMSomething;
|
||||||
| ^^^^^^^^^^^^^^^^ help: consider making the acronym lowercase, except the initial letter: `GccllvmSomething`
|
| ^^^^^^^^^^^^^^^^ help: consider making the acronym lowercase, except the initial letter: `GccllvmSomething`
|
||||||
|
|
||||||
error: aborting due to 11 previous errors
|
error: name `WASD` contains a capitalized acronym
|
||||||
|
--> $DIR/upper_case_acronyms.rs:38:5
|
||||||
|
|
|
||||||
|
LL | WASD(u8),
|
||||||
|
| ^^^^ help: consider making the acronym lowercase, except the initial letter: `Wasd`
|
||||||
|
|
||||||
|
error: name `WASDMixed` contains a capitalized acronym
|
||||||
|
--> $DIR/upper_case_acronyms.rs:39:5
|
||||||
|
|
|
||||||
|
LL | WASDMixed(String),
|
||||||
|
| ^^^^^^^^^ help: consider making the acronym lowercase, except the initial letter: `WasdMixed`
|
||||||
|
|
||||||
|
error: aborting due to 13 previous errors
|
||||||
|
|
||||||
|
|
|
@ -24,4 +24,18 @@ struct GCCLLVMSomething;
|
||||||
pub struct NOWARNINGHERE;
|
pub struct NOWARNINGHERE;
|
||||||
pub struct ALSONoWarningHERE;
|
pub struct ALSONoWarningHERE;
|
||||||
|
|
||||||
|
// enum variants should not be linted if the num is pub
|
||||||
|
pub enum ParseError<T> {
|
||||||
|
YDB(u8),
|
||||||
|
Utf8(std::string::FromUtf8Error),
|
||||||
|
Parse(T, String),
|
||||||
|
}
|
||||||
|
|
||||||
|
// private, do lint here
|
||||||
|
enum ParseErrorPrivate<T> {
|
||||||
|
WASD(u8),
|
||||||
|
Utf8(std::string::FromUtf8Error),
|
||||||
|
Parse(T, String),
|
||||||
|
}
|
||||||
|
|
||||||
fn main() {}
|
fn main() {}
|
||||||
|
|
|
@ -48,5 +48,11 @@ error: name `FIN` contains a capitalized acronym
|
||||||
LL | FIN,
|
LL | FIN,
|
||||||
| ^^^ help: consider making the acronym lowercase, except the initial letter: `Fin`
|
| ^^^ help: consider making the acronym lowercase, except the initial letter: `Fin`
|
||||||
|
|
||||||
error: aborting due to 8 previous errors
|
error: name `WASD` contains a capitalized acronym
|
||||||
|
--> $DIR/upper_case_acronyms.rs:36:5
|
||||||
|
|
|
||||||
|
LL | WASD(u8),
|
||||||
|
| ^^^^ help: consider making the acronym lowercase, except the initial letter: `Wasd`
|
||||||
|
|
||||||
|
error: aborting due to 9 previous errors
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue