當前位置: 首頁>>編程示例 >>用法及示例精選 >>正文


Elixir OptionParser.parse!用法及代碼示例

Elixir語言中 OptionParser.parse! 相關用法介紹如下。

用法:

parse!(argv, opts \\ [])
@spec parse!(argv(), options()) :: {parsed(), argv()}

parse/2 相同,但如果給出任何無效選項,則會引發 OptionParser.ParseError 異常。

如果沒有錯誤,則返回 {parsed, rest} 元組,其中:

  • parsed 是已解析開關的列表(與 parse/2 相同)
  • rest 是參數列表(與 parse/2 相同)

例子

iex> OptionParser.parse!(["--debug", "path/to/file"], strict: [debug: :boolean])
{[debug: true], ["path/to/file"]}

iex> OptionParser.parse!(["--limit", "xyz"], strict: [limit: :integer])
** (OptionParser.ParseError) 1 error found!
--limit : Expected type integer, got "xyz"

iex> OptionParser.parse!(["--unknown", "xyz"], strict: [])
** (OptionParser.ParseError) 1 error found!
--unknown : Unknown option

iex> OptionParser.parse!(
...>   ["-l", "xyz", "-f", "bar"],
...>   switches: [limit: :integer, foo: :integer],
...>   aliases: [l: :limit, f: :foo]
...> )
** (OptionParser.ParseError) 2 errors found!
-l : Expected type integer, got "xyz"
-f : Expected type integer, got "bar"

相關用法


注:本文由純淨天空篩選整理自elixir-lang.org大神的英文原創作品 OptionParser.parse!(argv, opts \\ [])。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。