Skip to content

Commit

Permalink
Don't make decisions on values that don't represent the decision
Browse files Browse the repository at this point in the history
  • Loading branch information
oli-obk committed Jan 22, 2019
1 parent 3168023 commit 38cdf63
Showing 1 changed file with 8 additions and 3 deletions.
11 changes: 8 additions & 3 deletions clippy_lints/src/utils/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -64,9 +64,14 @@ pub fn differing_macro_contexts(lhs: Span, rhs: Span) -> bool {
/// ```
pub fn in_constant(cx: &LateContext<'_, '_>, id: NodeId) -> bool {
let parent_id = cx.tcx.hir().get_parent(id);
match cx.tcx.hir().body_owner_kind(parent_id) {
hir::BodyOwnerKind::Fn | hir::BodyOwnerKind::Closure => false,
hir::BodyOwnerKind::Const | hir::BodyOwnerKind::Static(..) => true,
match cx.tcx.hir().get(parent_id) {
| Node::Item(&Item { node: ItemKind::Const(..), .. })
| Node::TraitItem(&TraitItem { node: TraitItemKind::Const(..), .. })
| Node::ImplItem(&ImplItem { node: ImplItemKind::Const(..), .. })
| Node::AnonConst(_)
| Node::Item(&Item { node: ItemKind::Static(..), .. })
=> true,
_ => false,
}
}

Expand Down

0 comments on commit 38cdf63

Please sign in to comment.