optimus v0.1.1 Optimus

Summary

Types

arg_spec()
arg_spec() :: [arg_spec_item]
arg_spec_item()
arg_spec_item ::
  {:value_name, String.t} |
  {:help, String.t} |
  {:required, boolean} |
  {:parser, parser}
custom_parser()
custom_parser() :: (String.t -> parser_result)
error()
error() :: String.t
flag_spec()
flag_spec() :: [flag_spec_item]
flag_spec_item()
flag_spec_item ::
  {:short, String.t} |
  {:long, String.t} |
  {:help, String.t} |
  {:multiple, boolean}
option_spec()
option_spec() :: [option_spec_item]
option_spec_item()
option_spec_item ::
  {:value_name, String.t} |
  {:short, String.t} |
  {:long, String.t} |
  {:help, String.t} |
  {:multiple, boolean} |
  {:required, boolean} |
  {:parser, parser}
parser()
parser() :: :integer | :float | :string | custom_parser
parser_result()
parser_result() :: {:error, String.t} | {:ok, term}
spec()
spec() :: [spec_item]
spec_item()
spec_item ::
  {:name, String.t} |
  {:name, String.t} |
  {:version, String.t} |
  {:author, String.t} |
  {:about, String.t} |
  {:allow_unknown_args, boolean} |
  {:parse_double_dash, boolean} |
  {:args, [arg_spec]} |
  {:flags, [flag_spec]} |
  {:options, [option_spec]}
subcommand_path()
subcommand_path() :: [atom]
t()
t

Functions

fetch_subcommand(optimus, subcommand_path)
fetch_subcommand(optimus, list, subcommand_name)
new(props)
new(spec) :: {:ok, t} | {:error, [error]}
new!(props)
new!(spec) :: t | no_return
parse(optimus, command_line)
parse(t, [String.t]) ::
  {:ok, Optimus.ParseResult.t} |
  {:ok, subcommand_path, Optimus.ParseResult.t} |
  {:error, [error]} |
  {:error, subcommand_path, [error]} |
  :version |
  :help |
  {:help, subcommand_path}
parse!(optimus, command_line, halt \\ &System.halt/1)
parse!(t, [String.t], (integer -> no_return)) ::
  Optimus.ParseResult.t |
  {subcommand_path, Optimus.ParseResult.t} |
  no_return