当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


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 \\ [])。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。