Don't trigger lint on break or return

This commit is contained in:
Zaki Manian 2017-09-03 11:17:20 -07:00
parent eb7955b265
commit 1c7583776b
1 changed files with 12 additions and 4 deletions

View File

@ -106,9 +106,17 @@ fn is_unit_expr(expr: &Expr) -> Option<Span> {
fn check_last_stmt_in_block(block: &Block) -> bool {
let ref final_stmt = &block.stmts[block.stmts.len() - 1];
if let StmtKind::Expr(_) = final_stmt.node {
return false;
} else {
return true;
match final_stmt.node{
StmtKind::Expr(_) => return false,
StmtKind::Semi(ref expr)=>{
match expr.node{
ExprKind::Break(_,_) => return false,
ExprKind::Ret(_) => return false,
_ => return true,
}
},
_ => return true,
}
}