Split out ast::ItemKind::Const into its own struct
This commit is contained in:
parent
929696d754
commit
ff7636db6a
@ -1,7 +1,7 @@
|
|||||||
use clippy_utils::diagnostics::span_lint_and_then;
|
use clippy_utils::diagnostics::span_lint_and_then;
|
||||||
use clippy_utils::msrvs::{self, Msrv};
|
use clippy_utils::msrvs::{self, Msrv};
|
||||||
use clippy_utils::source::snippet;
|
use clippy_utils::source::snippet;
|
||||||
use rustc_ast::ast::{Item, ItemKind, Ty, TyKind, Static};
|
use rustc_ast::ast::{Item, ItemKind, Ty, TyKind, Static, ConstItem};
|
||||||
use rustc_errors::Applicability;
|
use rustc_errors::Applicability;
|
||||||
use rustc_lint::{EarlyContext, EarlyLintPass};
|
use rustc_lint::{EarlyContext, EarlyLintPass};
|
||||||
use rustc_session::{declare_tool_lint, impl_lint_pass};
|
use rustc_session::{declare_tool_lint, impl_lint_pass};
|
||||||
@ -100,7 +100,7 @@ fn check_item(&mut self, cx: &EarlyContext<'_>, item: &Item) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if !item.span.from_expansion() {
|
if !item.span.from_expansion() {
|
||||||
if let ItemKind::Const(_, ref var_type, _) = item.kind {
|
if let ItemKind::Const(ConstItem { ty: ref var_type, .. }) = item.kind {
|
||||||
Self::visit_type(var_type, cx, "constants have by default a `'static` lifetime");
|
Self::visit_type(var_type, cx, "constants have by default a `'static` lifetime");
|
||||||
// Don't check associated consts because `'static` cannot be elided on those (issue
|
// Don't check associated consts because `'static` cannot be elided on those (issue
|
||||||
// #2438)
|
// #2438)
|
||||||
|
@ -287,7 +287,7 @@ pub fn eq_item_kind(l: &ItemKind, r: &ItemKind) -> bool {
|
|||||||
(ExternCrate(l), ExternCrate(r)) => l == r,
|
(ExternCrate(l), ExternCrate(r)) => l == r,
|
||||||
(Use(l), Use(r)) => eq_use_tree(l, r),
|
(Use(l), Use(r)) => eq_use_tree(l, r),
|
||||||
(Static(ast::Static{ ty: lt, mutability: lm, expr: le}), Static(ast::Static { ty: rt, mutability: rm, expr: re})) => lm == rm && eq_ty(lt, rt) && eq_expr_opt(le, re),
|
(Static(ast::Static{ ty: lt, mutability: lm, expr: le}), Static(ast::Static { ty: rt, mutability: rm, expr: re})) => lm == rm && eq_ty(lt, rt) && eq_expr_opt(le, re),
|
||||||
(Const(ld, lt, le), Const(rd, rt, re)) => eq_defaultness(*ld, *rd) && eq_ty(lt, rt) && eq_expr_opt(le, re),
|
(Const(ast::ConstItem { defaultness: ld, ty: lt, expr: le}), Const(ast::ConstItem { defaultness: rd, ty: rt, expr: re} )) => eq_defaultness(*ld, *rd) && eq_ty(lt, rt) && eq_expr_opt(le, re),
|
||||||
(
|
(
|
||||||
Fn(box ast::Fn {
|
Fn(box ast::Fn {
|
||||||
defaultness: ld,
|
defaultness: ld,
|
||||||
@ -451,7 +451,7 @@ pub fn eq_foreign_item_kind(l: &ForeignItemKind, r: &ForeignItemKind) -> bool {
|
|||||||
pub fn eq_assoc_item_kind(l: &AssocItemKind, r: &AssocItemKind) -> bool {
|
pub fn eq_assoc_item_kind(l: &AssocItemKind, r: &AssocItemKind) -> bool {
|
||||||
use AssocItemKind::*;
|
use AssocItemKind::*;
|
||||||
match (l, r) {
|
match (l, r) {
|
||||||
(Const(ld, lt, le), Const(rd, rt, re)) => eq_defaultness(*ld, *rd) && eq_ty(lt, rt) && eq_expr_opt(le, re),
|
(Const(ast::ConstItem { defaultness: ld, ty: lt, expr: le}), Const(ast::ConstItem { defaultness: rd, ty: rt, expr: re})) => eq_defaultness(*ld, *rd) && eq_ty(lt, rt) && eq_expr_opt(le, re),
|
||||||
(
|
(
|
||||||
Fn(box ast::Fn {
|
Fn(box ast::Fn {
|
||||||
defaultness: ld,
|
defaultness: ld,
|
||||||
|
Loading…
Reference in New Issue
Block a user