Remove select error if same row/column is provided (#10350)

This PR is in reference to #10215.

This PR changes `select` to work even if multiple equal items were
provided.
This would previously error, but now works
```nushell
let arg = [ 1 a ]
[[a b c]; [1 2 3] [4 5 6] [7 8 9]] 
| select $arg

```
# User-Facing Changes

Nothing too radical, just experience improvements. Users won't need to
pass the values through `unique` beforehand.
This commit is contained in:
Tilen Gimpelj
2023-09-13 13:49:55 +02:00
committed by GitHub
parent 7f39609d9a
commit bbea7da669
2 changed files with 15 additions and 13 deletions

View File

@ -214,18 +214,13 @@ fn select(
Vec::new(),
));
}
if unique_rows.contains(val) {
return Err(ShellError::GenericError(
"Select can't get the same row twice".into(),
"duplicated row index".into(),
Some(*span),
None,
Vec::new(),
));
}
unique_rows.insert(*val);
}
_ => new_columns.push(column),
_ => {
if !new_columns.contains(&column) {
new_columns.push(column)
}
}
};
}
let columns = new_columns;