2018-12-11 bouzuya/yzrh 進捗 Array String 対応
bouzuya/yzrh の進捗。
コマンドライン解釈部分で Array String
を使えるようにした。これで複数回のオプション指定ができる。昨日も同じことを書いている (2018-12-10) けど途中だった。
let
defs =
{ s: stringOption "str" (Just 's') "<STRING>" "string option" "default"
, b: booleanOption "bool" (Just 'b') "boolean option"
, m: maybeStringOption "maybe" (Just 'm') "<MAYBE>" "maybe option" (Just "maybe default")
, a: arrayStringOption "array" (Just 'a') ["<A1>", "<A2>"] "array option" ["a1", "a2"]
}
-- ...
Assert.equal
(Right
{ arguments: []
, options: { s: "default", b: false, m: Just "maybe default", a: ["Hello", "World"] }
})
(parse defs ["-a", "Hello", "-a", "World"])
もちろん yzrh にこの機能が必要な場面はない。