miller/internal/pkg/cli
John Kerl 0493a0debd
Fatal-on-data-error mlr -x option (#1373)
* Fatal-on-data-error `mlr -x` option [WIP]

* arithmetic.go error-reason propagation

* more

* more

* more

* renames

* doc page

* namefix

* fix broken test

* make dev
2023-08-30 19:39:22 -04:00
..
doc.go Standardize Go-package structure (#746) 2021-11-11 14:15:13 -05:00
flag_types.go Remove redundant nil check (#1367) 2023-08-23 10:18:22 -04:00
flatten_unflatten.go Standardize Go-package structure (#746) 2021-11-11 14:15:13 -05:00
mlrcli_util.go Make --ifs-regex and --ips-regex explicit command-line flags (#799) 2021-12-25 00:00:18 -05:00
option_parse.go Fatal-on-data-error mlr -x option (#1373) 2023-08-30 19:39:22 -04:00
option_types.go Fatal-on-data-error mlr -x option (#1373) 2023-08-30 19:39:22 -04:00
README.md Standardize Go-package structure (#746) 2021-11-11 14:15:13 -05:00
separators.go Make TSV finally true TSV (#923) 2022-02-06 00:13:55 -05:00
verb_utils.go Fix panic on 'mlr sort -n' 2022-03-28 23:26:37 -04:00

Datatypes for parsing the Miller command line, and the flags table.

  • internal/pkg/climain is the flag-parsing logic for supporting Miller's command-line interface. When you type something like mlr --icsv --ojson put '$sum = $a + $b' then filter '$sum > 1000' myfile.csv, it's the CLI parser which makes it possible for Miller to construct a CSV record-reader, a transformer chain of put then filter, and a JSON record-writer.
  • internal/pkg/cli contains datatypes and the flags table for the CLI-parser, which was split out to avoid a Go package-import cycle.