mirror of
https://github.com/johnkerl/miller.git
synced 2026-07-18 08:55:41 +00:00
* Switch to integer ranges in for loops Signed-off-by: Stephen Kitt <steve@sk2.org> * Switch to slices functions where appropriate A number of utility functions can be replaced outright; since Miller can technically be used as a library, these are deprecated rather than removed. go:fix directives ensure that they can be replaced automatically. Signed-off-by: Stephen Kitt <steve@sk2.org> * Switch to reflect.TypeFor This is slightly more efficient than TypeOf when the type is known at compile time. Signed-off-by: Stephen Kitt <steve@sk2.org> * Switch to strings.SplitSeq instead of strings.Split SplitSeq results in fewer allocations. Signed-off-by: Stephen Kitt <steve@sk2.org> * Drop obsolete build directives Signed-off-by: Stephen Kitt <steve@sk2.org> * Use min/max instead of explicit comparisons Signed-off-by: Stephen Kitt <steve@sk2.org> * Append slices instead of looping Signed-off-by: Stephen Kitt <steve@sk2.org> --------- Signed-off-by: Stephen Kitt <steve@sk2.org> |
||
|---|---|---|
| .. | ||
| doc.go | ||
| errors.go | ||
| flag_types.go | ||
| flatten_unflatten.go | ||
| mlrcli_util.go | ||
| option_parse.go | ||
| option_types.go | ||
| README.md | ||
| separators.go | ||
| verb_utils.go | ||
Datatypes for parsing the Miller command line, and the flags table.
pkg/climainis the flag-parsing logic for supporting Miller's command-line interface. When you type something likemlr --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 ofputthenfilter, and a JSON record-writer.pkg/clicontains datatypes and the flags table for the CLI-parser, which was split out to avoid a Go package-import cycle.