commit
a72e786c5d
2 changed files with 5 additions and 4 deletions
|
|
@ -33,6 +33,7 @@ unicode-normalization = "0.1"
|
||||||
pulldown-cmark = "0.1"
|
pulldown-cmark = "0.1"
|
||||||
url = "1.7.0"
|
url = "1.7.0"
|
||||||
if_chain = "0.1.3"
|
if_chain = "0.1.3"
|
||||||
|
smallvec = { version = "0.6.5", features = ["union"] }
|
||||||
|
|
||||||
[features]
|
[features]
|
||||||
debugging = []
|
debugging = []
|
||||||
|
|
|
||||||
|
|
@ -6,7 +6,7 @@ use crate::rustc_data_structures::fx::FxHashMap;
|
||||||
use std::collections::hash_map::Entry;
|
use std::collections::hash_map::Entry;
|
||||||
use std::hash::BuildHasherDefault;
|
use std::hash::BuildHasherDefault;
|
||||||
use crate::syntax::symbol::LocalInternedString;
|
use crate::syntax::symbol::LocalInternedString;
|
||||||
use crate::rustc_data_structures::small_vec::OneVector;
|
use smallvec::SmallVec;
|
||||||
use crate::utils::{SpanlessEq, SpanlessHash};
|
use crate::utils::{SpanlessEq, SpanlessHash};
|
||||||
use crate::utils::{get_parent_expr, in_macro, snippet, span_lint_and_then, span_note_and_lint};
|
use crate::utils::{get_parent_expr, in_macro, snippet, span_lint_and_then, span_note_and_lint};
|
||||||
|
|
||||||
|
|
@ -235,9 +235,9 @@ fn lint_match_arms(cx: &LateContext<'_, '_>, expr: &Expr) {
|
||||||
/// sequence of `if/else`.
|
/// sequence of `if/else`.
|
||||||
/// Eg. would return `([a, b], [c, d, e])` for the expression
|
/// Eg. would return `([a, b], [c, d, e])` for the expression
|
||||||
/// `if a { c } else if b { d } else { e }`.
|
/// `if a { c } else if b { d } else { e }`.
|
||||||
fn if_sequence(mut expr: &Expr) -> (OneVector<&Expr>, OneVector<&Block>) {
|
fn if_sequence(mut expr: &Expr) -> (SmallVec<[&Expr; 1]>, SmallVec<[&Block; 1]>) {
|
||||||
let mut conds = OneVector::new();
|
let mut conds = SmallVec::new();
|
||||||
let mut blocks: OneVector<&Block> = OneVector::new();
|
let mut blocks: SmallVec<[&Block; 1]> = SmallVec::new();
|
||||||
|
|
||||||
while let ExprKind::If(ref cond, ref then_expr, ref else_expr) = expr.node {
|
while let ExprKind::If(ref cond, ref then_expr, ref else_expr) = expr.node {
|
||||||
conds.push(&**cond);
|
conds.push(&**cond);
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue