Skip to content

Commit 8d28e40

Browse files
authored
perf: more minified code optimizations (#523)
1 parent bc06585 commit 8d28e40

File tree

1 file changed

+11
-4
lines changed

1 file changed

+11
-4
lines changed

src/generation/generate.rs

Lines changed: 11 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2815,7 +2815,7 @@ fn gen_sequence_expr<'a>(node: &'a SeqExpr, context: &mut Context<'a>) -> PrintI
28152815
GenSeparatedValuesParams {
28162816
nodes: node.exprs.iter().map(|x| NodeOrSeparator::Node(x.into())).collect(),
28172817
prefer_hanging: context.config.sequence_expression_prefer_hanging,
2818-
force_use_new_lines: false,
2818+
force_use_new_lines: is_node_definitely_above_line_width(node.range(), context),
28192819
allow_blank_lines: false,
28202820
separator: TrailingCommas::Never.into(),
28212821
single_line_space_at_start: false,
@@ -5153,7 +5153,7 @@ fn gen_try_stmt<'a>(node: &'a TryStmt, context: &mut Context<'a>) -> PrintItems
51535153

51545154
fn gen_var_decl<'a>(node: &'a VarDecl, context: &mut Context<'a>) -> PrintItems {
51555155
let mut items = PrintItems::new();
5156-
let force_use_new_lines = get_use_new_lines(&node.decls, context);
5156+
let force_use_new_lines = get_use_new_lines(node, context);
51575157
if node.declare() {
51585158
items.push_str("declare ");
51595159
}
@@ -5203,8 +5203,13 @@ fn gen_var_decl<'a>(node: &'a VarDecl, context: &mut Context<'a>) -> PrintItems
52035203
}
52045204
}
52055205

5206-
fn get_use_new_lines<'a>(decls: &[&'a VarDeclarator], context: &mut Context) -> bool {
5207-
get_use_new_lines_for_nodes(decls, context.config.variable_statement_prefer_single_line, context)
5206+
fn get_use_new_lines<'a>(node: &VarDecl, context: &mut Context) -> bool {
5207+
if get_use_new_lines_for_nodes(&node.decls, context.config.variable_statement_prefer_single_line, context) {
5208+
true
5209+
} else {
5210+
// probably minified code
5211+
node.decls.len() >= 2 && is_node_definitely_above_line_width(node.range(), context)
5212+
}
52085213
}
52095214
}
52105215

@@ -9382,6 +9387,8 @@ fn is_node_definitely_above_line_width<'a>(range: SourceRange, context: &Context
93829387
if count > max_width {
93839388
return true;
93849389
}
9390+
} else if c == '\n' {
9391+
return false;
93859392
}
93869393
}
93879394
false

0 commit comments

Comments
 (0)