mirror of
https://github.com/nushell/nushell.git
synced 2025-01-14 10:18:14 +01:00
d409171ba8
Prior to this PR, the less/greater than operators (`<`, `>`, `<=`, `>=`) would throw an error if either side was null. After this PR, these operators return null if either side (or both) is null. ### Examples ```bash 1 < 3 # true 1 < null # null null < 3 # null null < null # null ``` ### Motivation JT [asked the C# folks](https://discord.com/channels/601130461678272522/615329862395101194/1086137515053957140) and this is apparently the approach they would choose for comparison operators if they could start from scratch. This PR makes `where` more convenient to use on jagged/missing data. For example, we can now filter on columns that may not be present in every row: ``` > [{foo: 123} {}] | where foo? > 10 ╭───┬─────╮ │ # │ foo │ ├───┼─────┤ │ 0 │ 123 │ ╰───┴─────╯ ``` |
||
---|---|---|
.. | ||
tests | ||
command.rs | ||
config_files.rs | ||
logger.rs | ||
main.rs | ||
README.md | ||
run.rs | ||
signals.rs | ||
terminal.rs | ||
test_bins.rs | ||
tests.rs |
Nushell REPL
This directory contains the main Nushell REPL (read eval print loop) as part of the CLI portion of Nushell, which creates the nu
binary itself.
Current versions of the nu
binary will use the Nu argument parsing logic to parse the commandline arguments passed to nu
, leaving the logic here to be a thin layer around what the core libraries.