mirror of https://github.com/astral-sh/ruff
Respect trailing whitespace in comprehension fixes (#554)
This commit is contained in:
parent
9948be0145
commit
416c338237
|
|
@ -1 +1,4 @@
|
||||||
x = list(x for x in range(3))
|
x = list(x for x in range(3))
|
||||||
|
x = list(
|
||||||
|
x for x in range(3)
|
||||||
|
)
|
||||||
|
|
|
||||||
|
|
@ -1 +1,4 @@
|
||||||
x = set(x for x in range(3))
|
x = set(x for x in range(3))
|
||||||
|
x = set(
|
||||||
|
x for x in range(3)
|
||||||
|
)
|
||||||
|
|
|
||||||
|
|
@ -1 +1,4 @@
|
||||||
s = set([x for x in range(3)])
|
s = set([x for x in range(3)])
|
||||||
|
s = set(
|
||||||
|
[x for x in range(3)]
|
||||||
|
)
|
||||||
|
|
|
||||||
|
|
@ -37,8 +37,13 @@ pub fn fix_unnecessary_generator_list(locator: &SourceCodeLocator, expr: &Expr)
|
||||||
} else {
|
} else {
|
||||||
return Err(anyhow::anyhow!("Expected node to be: Expression::Call."));
|
return Err(anyhow::anyhow!("Expected node to be: Expression::Call."));
|
||||||
};
|
};
|
||||||
let arg = if let Some(Arg { value, .. }) = call.args.first_mut() {
|
let (arg, whitespace_after_arg) = if let Some(Arg {
|
||||||
value
|
value,
|
||||||
|
whitespace_after_arg,
|
||||||
|
..
|
||||||
|
}) = call.args.first_mut()
|
||||||
|
{
|
||||||
|
(value, whitespace_after_arg)
|
||||||
} else {
|
} else {
|
||||||
return Err(anyhow::anyhow!("Expected node to be: Arg."));
|
return Err(anyhow::anyhow!("Expected node to be: Arg."));
|
||||||
};
|
};
|
||||||
|
|
@ -57,7 +62,7 @@ pub fn fix_unnecessary_generator_list(locator: &SourceCodeLocator, expr: &Expr)
|
||||||
whitespace_after: call.whitespace_before_args.clone(),
|
whitespace_after: call.whitespace_before_args.clone(),
|
||||||
},
|
},
|
||||||
rbracket: RightSquareBracket {
|
rbracket: RightSquareBracket {
|
||||||
whitespace_before: call.whitespace_after_func.clone(),
|
whitespace_before: whitespace_after_arg.clone(),
|
||||||
},
|
},
|
||||||
lpar: generator_exp.lpar.clone(),
|
lpar: generator_exp.lpar.clone(),
|
||||||
rpar: generator_exp.rpar.clone(),
|
rpar: generator_exp.rpar.clone(),
|
||||||
|
|
@ -101,8 +106,13 @@ pub fn fix_unnecessary_generator_set(locator: &SourceCodeLocator, expr: &Expr) -
|
||||||
} else {
|
} else {
|
||||||
return Err(anyhow::anyhow!("Expected node to be: Expression::Call."));
|
return Err(anyhow::anyhow!("Expected node to be: Expression::Call."));
|
||||||
};
|
};
|
||||||
let arg = if let Some(Arg { value, .. }) = call.args.first_mut() {
|
let (arg, whitespace_after_arg) = if let Some(Arg {
|
||||||
value
|
value,
|
||||||
|
whitespace_after_arg,
|
||||||
|
..
|
||||||
|
}) = call.args.first_mut()
|
||||||
|
{
|
||||||
|
(value, whitespace_after_arg)
|
||||||
} else {
|
} else {
|
||||||
return Err(anyhow::anyhow!("Expected node to be: Arg."));
|
return Err(anyhow::anyhow!("Expected node to be: Arg."));
|
||||||
};
|
};
|
||||||
|
|
@ -121,7 +131,7 @@ pub fn fix_unnecessary_generator_set(locator: &SourceCodeLocator, expr: &Expr) -
|
||||||
whitespace_after: call.whitespace_before_args.clone(),
|
whitespace_after: call.whitespace_before_args.clone(),
|
||||||
},
|
},
|
||||||
rbrace: RightCurlyBrace {
|
rbrace: RightCurlyBrace {
|
||||||
whitespace_before: call.whitespace_after_func.clone(),
|
whitespace_before: whitespace_after_arg.clone(),
|
||||||
},
|
},
|
||||||
lpar: generator_exp.lpar.clone(),
|
lpar: generator_exp.lpar.clone(),
|
||||||
rpar: generator_exp.rpar.clone(),
|
rpar: generator_exp.rpar.clone(),
|
||||||
|
|
@ -168,8 +178,13 @@ pub fn fix_unnecessary_list_comprehension_set(
|
||||||
} else {
|
} else {
|
||||||
return Err(anyhow::anyhow!("Expected node to be: Expression::Call."));
|
return Err(anyhow::anyhow!("Expected node to be: Expression::Call."));
|
||||||
};
|
};
|
||||||
let arg = if let Some(Arg { value, .. }) = call.args.first_mut() {
|
let (arg, whitespace_after_arg) = if let Some(Arg {
|
||||||
value
|
value,
|
||||||
|
whitespace_after_arg,
|
||||||
|
..
|
||||||
|
}) = call.args.first_mut()
|
||||||
|
{
|
||||||
|
(value, whitespace_after_arg)
|
||||||
} else {
|
} else {
|
||||||
return Err(anyhow::anyhow!("Expected node to be: Arg."));
|
return Err(anyhow::anyhow!("Expected node to be: Arg."));
|
||||||
};
|
};
|
||||||
|
|
@ -188,7 +203,7 @@ pub fn fix_unnecessary_list_comprehension_set(
|
||||||
whitespace_after: call.whitespace_before_args.clone(),
|
whitespace_after: call.whitespace_before_args.clone(),
|
||||||
},
|
},
|
||||||
rbrace: RightCurlyBrace {
|
rbrace: RightCurlyBrace {
|
||||||
whitespace_before: call.whitespace_after_func.clone(),
|
whitespace_before: whitespace_after_arg.clone(),
|
||||||
},
|
},
|
||||||
lpar: list_comp.lpar.clone(),
|
lpar: list_comp.lpar.clone(),
|
||||||
rpar: list_comp.rpar.clone(),
|
rpar: list_comp.rpar.clone(),
|
||||||
|
|
@ -232,8 +247,13 @@ pub fn fix_unnecessary_literal_set(locator: &SourceCodeLocator, expr: &Expr) ->
|
||||||
} else {
|
} else {
|
||||||
return Err(anyhow::anyhow!("Expected node to be: Expression::Call."));
|
return Err(anyhow::anyhow!("Expected node to be: Expression::Call."));
|
||||||
};
|
};
|
||||||
let arg = if let Some(Arg { value, .. }) = call.args.first_mut() {
|
let (arg, whitespace_after_arg) = if let Some(Arg {
|
||||||
value
|
value,
|
||||||
|
whitespace_after_arg,
|
||||||
|
..
|
||||||
|
}) = call.args.first_mut()
|
||||||
|
{
|
||||||
|
(value, whitespace_after_arg)
|
||||||
} else {
|
} else {
|
||||||
return Err(anyhow::anyhow!("Expected node to be: Arg."));
|
return Err(anyhow::anyhow!("Expected node to be: Arg."));
|
||||||
};
|
};
|
||||||
|
|
@ -256,7 +276,7 @@ pub fn fix_unnecessary_literal_set(locator: &SourceCodeLocator, expr: &Expr) ->
|
||||||
whitespace_after: call.whitespace_before_args.clone(),
|
whitespace_after: call.whitespace_before_args.clone(),
|
||||||
},
|
},
|
||||||
rbrace: RightCurlyBrace {
|
rbrace: RightCurlyBrace {
|
||||||
whitespace_before: call.whitespace_after_func.clone(),
|
whitespace_before: whitespace_after_arg.clone(),
|
||||||
},
|
},
|
||||||
lpar: Default::default(),
|
lpar: Default::default(),
|
||||||
rpar: Default::default(),
|
rpar: Default::default(),
|
||||||
|
|
|
||||||
|
|
@ -19,4 +19,21 @@ expression: checks
|
||||||
row: 1
|
row: 1
|
||||||
column: 29
|
column: 29
|
||||||
applied: false
|
applied: false
|
||||||
|
- kind: UnnecessaryGeneratorList
|
||||||
|
location:
|
||||||
|
row: 2
|
||||||
|
column: 4
|
||||||
|
end_location:
|
||||||
|
row: 4
|
||||||
|
column: 1
|
||||||
|
fix:
|
||||||
|
patch:
|
||||||
|
content: "[\n x for x in range(3)\n]"
|
||||||
|
location:
|
||||||
|
row: 2
|
||||||
|
column: 4
|
||||||
|
end_location:
|
||||||
|
row: 4
|
||||||
|
column: 1
|
||||||
|
applied: false
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -19,4 +19,21 @@ expression: checks
|
||||||
row: 1
|
row: 1
|
||||||
column: 28
|
column: 28
|
||||||
applied: false
|
applied: false
|
||||||
|
- kind: UnnecessaryGeneratorSet
|
||||||
|
location:
|
||||||
|
row: 2
|
||||||
|
column: 4
|
||||||
|
end_location:
|
||||||
|
row: 4
|
||||||
|
column: 1
|
||||||
|
fix:
|
||||||
|
patch:
|
||||||
|
content: "{\n x for x in range(3)\n}"
|
||||||
|
location:
|
||||||
|
row: 2
|
||||||
|
column: 4
|
||||||
|
end_location:
|
||||||
|
row: 4
|
||||||
|
column: 1
|
||||||
|
applied: false
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -19,4 +19,21 @@ expression: checks
|
||||||
row: 1
|
row: 1
|
||||||
column: 30
|
column: 30
|
||||||
applied: false
|
applied: false
|
||||||
|
- kind: UnnecessaryListComprehensionSet
|
||||||
|
location:
|
||||||
|
row: 2
|
||||||
|
column: 4
|
||||||
|
end_location:
|
||||||
|
row: 4
|
||||||
|
column: 1
|
||||||
|
fix:
|
||||||
|
patch:
|
||||||
|
content: "{\n x for x in range(3)\n}"
|
||||||
|
location:
|
||||||
|
row: 2
|
||||||
|
column: 4
|
||||||
|
end_location:
|
||||||
|
row: 4
|
||||||
|
column: 1
|
||||||
|
applied: false
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue