mirror of
https://github.com/NixOS/nixpkgs.git
synced 2024-11-21 13:10:33 +00:00
lib/cli: rename renderX
options to mkX
Mirrors the naming scheme in `generators.nix`, for consistency. Also rename `key` to `k` and value to `v` to aid readability to the code structure.
This commit is contained in:
parent
b2654c226a
commit
e71e1be859
31
lib/cli.nix
31
lib/cli.nix
|
@ -43,29 +43,26 @@ rec {
|
|||
options: attrs: lib.escapeShellArgs (toGNUCommandLine options attrs);
|
||||
|
||||
toGNUCommandLine =
|
||||
{ renderKey ?
|
||||
key:
|
||||
if builtins.stringLength key == 1
|
||||
then "-${key}"
|
||||
else "--${key}"
|
||||
{ mkKey ?
|
||||
k: if builtins.stringLength k == 1
|
||||
then "-${k}"
|
||||
else "--${k}"
|
||||
|
||||
, renderOption ?
|
||||
key: value:
|
||||
if value == null
|
||||
then []
|
||||
else [ (renderKey key) (builtins.toString value) ]
|
||||
, mkOption ?
|
||||
k: v: if v == null
|
||||
then []
|
||||
else [ (mkKey k) (builtins.toString v) ]
|
||||
|
||||
, renderBool ? key: value: lib.optional value (renderKey key)
|
||||
, mkBool ? k: v: lib.optional v (mkKey k)
|
||||
|
||||
, renderList ? key: value: lib.concatMap (renderOption key) value
|
||||
, mkList ? k: v: lib.concatMap (mkOption k) v
|
||||
}:
|
||||
options:
|
||||
let
|
||||
render =
|
||||
key: value:
|
||||
if builtins.isBool value then renderBool key value
|
||||
else if builtins.isList value then renderList key value
|
||||
else renderOption key value;
|
||||
render = k: v:
|
||||
if builtins.isBool v then mkBool k v
|
||||
else if builtins.isList v then mkList k v
|
||||
else mkOption k v;
|
||||
|
||||
in
|
||||
builtins.concatLists (lib.mapAttrsToList render options);
|
||||
|
|
Loading…
Reference in a new issue