nushell/crates/nu-command/src
Stefan Holderbach 1bb953877e
Improve select row perf for large N (#10355)
# Description
While reviewing #10350 I noticed that a `HashSet<usize>` was used to
deduplicate the incoming rows, which are then sorted after cloning to a
separate `Vec`. This sounds like a candidate for a `BTreeSet` which
guarantees the ordering.

In the process I removed some dead code.

- Use `BTreeSet` instead of `HashSet`
- Remove dead `skip` logic
- Use `BTreeSet` directly in `NthIterator`
- Consume `BTreeSet` through `Peekable<IntoIter>`
2023-09-21 23:51:13 +02:00
..
bytes Move Value to helpers, separate span call (#10121) 2023-09-03 07:27:29 -07:00
charting Move Value to helpers, separate span call (#10121) 2023-09-03 07:27:29 -07:00
conversions new command: into value (#10427) 2023-09-20 12:57:58 -05:00
database Move Value to helpers, separate span call (#10121) 2023-09-03 07:27:29 -07:00
date Move Value to helpers, separate span call (#10121) 2023-09-03 07:27:29 -07:00
debug Invert &Options to Option<&T> (#10315) 2023-09-13 07:00:58 +08:00
env Move Value to helpers, separate span call (#10121) 2023-09-03 07:27:29 -07:00
experimental Add functions for each Value case (#9736) 2023-07-21 08:20:33 -05:00
filesystem Map DirectoryNotFound to FileNotFound for open command (#10089) 2023-09-21 20:17:44 +02:00
filters Improve select row perf for large N (#10355) 2023-09-21 23:51:13 +02:00
formats Invert &Options to Option<&T> (#10315) 2023-09-13 07:00:58 +08:00
generators Move Value to helpers, separate span call (#10121) 2023-09-03 07:27:29 -07:00
hash Move Value to helpers, separate span call (#10121) 2023-09-03 07:27:29 -07:00
help Move Value to helpers, separate span call (#10121) 2023-09-03 07:27:29 -07:00
math Move Value to helpers, separate span call (#10121) 2023-09-03 07:27:29 -07:00
misc REFACTOR: move source out of deprecated commands (#9060) 2023-05-04 00:02:03 +02:00
network fix #10319: allow json request of value type list (#10356) 2023-09-13 16:54:03 +02:00
path Move Value to helpers, separate span call (#10121) 2023-09-03 07:27:29 -07:00
platform fix input --until-bytes: now stops at any of given bytes (#10235) 2023-09-15 06:55:37 -05:00
random Rename random decimal to random float (#10320) 2023-09-12 13:03:05 +02:00
removed Rename misused "deprecation" to removal (#10000) 2023-08-15 07:17:31 +12:00
shells Fix usage for the exit command. (#9450) 2023-06-16 10:09:02 +02:00
strings Remove str replace --string after deprecation (#10064) 2023-09-19 15:54:20 +02:00
system Ps: add cwd column on linux and macos (#10347) 2023-09-14 08:10:15 -05:00
viewers nu-table: Add table option --abbreviated (#10399) 2023-09-20 12:59:08 -05:00
default_context.rs new command: into value (#10427) 2023-09-20 12:57:58 -05:00
example_test.rs enable/update some example tests so they work again (#10058) 2023-08-19 09:06:59 -05:00
lib.rs Move eval_hook to nu-cmd-base (#10146) 2023-08-29 23:46:50 +02:00
progress_bar.rs cp progress bar implementation (#8012) 2023-02-22 11:57:38 -08:00
sort_utils.rs Use slices directly instead of &Vec (#10328) 2023-09-12 11:38:20 +08:00