mirror of
https://github.com/nushell/nushell.git
synced 2025-06-30 14:40:06 +02:00
Fix $in
in range expressions (#13447)
# Description Fixes #13441. I must have forgotten that `Expr::Range` can contain other expressions, so I wasn't searching for `$in` to replace within it. Easy fix. # User-Facing Changes Bug fix, ranges like `6 | 3..$in` work as expected now. # Tests + Formatting Added regression test.
This commit is contained in:
@ -432,7 +432,17 @@ impl Expression {
|
||||
Expr::Int(_) => {}
|
||||
Expr::Float(_) => {}
|
||||
Expr::Binary(_) => {}
|
||||
Expr::Range(_) => {}
|
||||
Expr::Range(range) => {
|
||||
if let Some(from) = &mut range.from {
|
||||
from.replace_in_variable(working_set, new_var_id);
|
||||
}
|
||||
if let Some(next) = &mut range.next {
|
||||
next.replace_in_variable(working_set, new_var_id);
|
||||
}
|
||||
if let Some(to) = &mut range.to {
|
||||
to.replace_in_variable(working_set, new_var_id);
|
||||
}
|
||||
}
|
||||
Expr::Var(var_id) | Expr::VarDecl(var_id) => {
|
||||
if *var_id == IN_VARIABLE_ID {
|
||||
*var_id = new_var_id;
|
||||
|
Reference in New Issue
Block a user