Apply Tidier suggestions
This commit is contained in:
parent
1dd5a75277
commit
f82e2989b1
@ -75,10 +75,10 @@ parse(OptSpecList, OptAcc, ArgAcc, _ArgPos, ["--" | Tail]) ->
|
|||||||
% Any argument present after the terminator is not considered an option.
|
% Any argument present after the terminator is not considered an option.
|
||||||
{ok, {lists:reverse(append_default_options(OptSpecList, OptAcc)), lists:reverse(ArgAcc, Tail)}};
|
{ok, {lists:reverse(append_default_options(OptSpecList, OptAcc)), lists:reverse(ArgAcc, Tail)}};
|
||||||
%% Process long options.
|
%% Process long options.
|
||||||
parse(OptSpecList, OptAcc, ArgAcc, ArgPos, [[$-, $- | OptArg] = OptStr | Tail]) ->
|
parse(OptSpecList, OptAcc, ArgAcc, ArgPos, ["--" ++ OptArg = OptStr | Tail]) ->
|
||||||
parse_option_long(OptSpecList, OptAcc, ArgAcc, ArgPos, Tail, OptStr, OptArg);
|
parse_option_long(OptSpecList, OptAcc, ArgAcc, ArgPos, Tail, OptStr, OptArg);
|
||||||
%% Process short options.
|
%% Process short options.
|
||||||
parse(OptSpecList, OptAcc, ArgAcc, ArgPos, [[$- | [_Char | _] = OptArg] = OptStr | Tail]) ->
|
parse(OptSpecList, OptAcc, ArgAcc, ArgPos, ["-" ++ ([_Char | _] = OptArg) = OptStr | Tail]) ->
|
||||||
parse_option_short(OptSpecList, OptAcc, ArgAcc, ArgPos, Tail, OptStr, OptArg);
|
parse_option_short(OptSpecList, OptAcc, ArgAcc, ArgPos, Tail, OptStr, OptArg);
|
||||||
%% Process non-option arguments.
|
%% Process non-option arguments.
|
||||||
parse(OptSpecList, OptAcc, ArgAcc, ArgPos, [Arg | Tail]) ->
|
parse(OptSpecList, OptAcc, ArgAcc, ArgPos, [Arg | Tail]) ->
|
||||||
@ -111,11 +111,11 @@ parse_option_long(OptSpecList, OptAcc, ArgAcc, ArgPos, Args, OptStr, OptArg) ->
|
|||||||
parse_option_assigned_arg(OptSpecList, OptAcc, ArgAcc, ArgPos, Args, OptStr, Long, Arg);
|
parse_option_assigned_arg(OptSpecList, OptAcc, ArgAcc, ArgPos, Args, OptStr, Long, Arg);
|
||||||
|
|
||||||
Long ->
|
Long ->
|
||||||
case lists:keysearch(Long, ?OPT_LONG, OptSpecList) of
|
case lists:keyfind(Long, ?OPT_LONG, OptSpecList) of
|
||||||
{value, {Name, _Short, Long, undefined, _Help}} ->
|
{Name, _Short, Long, undefined, _Help} ->
|
||||||
parse(OptSpecList, [Name | OptAcc], ArgAcc, ArgPos, Args);
|
parse(OptSpecList, [Name | OptAcc], ArgAcc, ArgPos, Args);
|
||||||
|
|
||||||
{value, {_Name, _Short, Long, _ArgSpec, _Help} = OptSpec} ->
|
{_Name, _Short, Long, _ArgSpec, _Help} = OptSpec ->
|
||||||
% The option argument string is empty, but the option requires
|
% The option argument string is empty, but the option requires
|
||||||
% an argument, so we look into the next string in the list.
|
% an argument, so we look into the next string in the list.
|
||||||
parse_option_next_arg(OptSpecList, OptAcc, ArgAcc, ArgPos, Args, OptSpec);
|
parse_option_next_arg(OptSpecList, OptAcc, ArgAcc, ArgPos, Args, OptSpec);
|
||||||
@ -132,8 +132,8 @@ parse_option_long(OptSpecList, OptAcc, ArgAcc, ArgPos, Args, OptStr, OptArg) ->
|
|||||||
[string()], string(), string(), string()) ->
|
[string()], string(), string(), string()) ->
|
||||||
{ok, {[option()], [string()]}}.
|
{ok, {[option()], [string()]}}.
|
||||||
parse_option_assigned_arg(OptSpecList, OptAcc, ArgAcc, ArgPos, Args, OptStr, Long, Arg) ->
|
parse_option_assigned_arg(OptSpecList, OptAcc, ArgAcc, ArgPos, Args, OptStr, Long, Arg) ->
|
||||||
case lists:keysearch(Long, ?OPT_LONG, OptSpecList) of
|
case lists:keyfind(Long, ?OPT_LONG, OptSpecList) of
|
||||||
{value, {_Name, _Short, Long, ArgSpec, _Help} = OptSpec} ->
|
{_Name, _Short, Long, ArgSpec, _Help} = OptSpec ->
|
||||||
case ArgSpec of
|
case ArgSpec of
|
||||||
undefined ->
|
undefined ->
|
||||||
throw({error, {invalid_option_arg, OptStr}});
|
throw({error, {invalid_option_arg, OptStr}});
|
||||||
@ -151,7 +151,7 @@ parse_option_assigned_arg(OptSpecList, OptAcc, ArgAcc, ArgPos, Args, OptStr, Lon
|
|||||||
split_assigned_arg(OptStr) ->
|
split_assigned_arg(OptStr) ->
|
||||||
split_assigned_arg(OptStr, OptStr, []).
|
split_assigned_arg(OptStr, OptStr, []).
|
||||||
|
|
||||||
split_assigned_arg(_OptStr, [$= | Tail], Acc) ->
|
split_assigned_arg(_OptStr, "=" ++ Tail, Acc) ->
|
||||||
{lists:reverse(Acc), Tail};
|
{lists:reverse(Acc), Tail};
|
||||||
split_assigned_arg(OptStr, [Char | Tail], Acc) ->
|
split_assigned_arg(OptStr, [Char | Tail], Acc) ->
|
||||||
split_assigned_arg(OptStr, Tail, [Char | Acc]);
|
split_assigned_arg(OptStr, Tail, [Char | Acc]);
|
||||||
@ -170,11 +170,11 @@ split_assigned_arg(OptStr, [], _Acc) ->
|
|||||||
-spec parse_option_short([option_spec()], [option()], [string()], integer(), [string()], string(), string()) ->
|
-spec parse_option_short([option_spec()], [option()], [string()], integer(), [string()], string(), string()) ->
|
||||||
{ok, {[option()], [string()]}}.
|
{ok, {[option()], [string()]}}.
|
||||||
parse_option_short(OptSpecList, OptAcc, ArgAcc, ArgPos, Args, OptStr, [Short | Arg]) ->
|
parse_option_short(OptSpecList, OptAcc, ArgAcc, ArgPos, Args, OptStr, [Short | Arg]) ->
|
||||||
case lists:keysearch(Short, ?OPT_SHORT, OptSpecList) of
|
case lists:keyfind(Short, ?OPT_SHORT, OptSpecList) of
|
||||||
{value, {Name, Short, _Long, undefined, _Help}} ->
|
{Name, Short, _Long, undefined, _Help} ->
|
||||||
parse_option_short(OptSpecList, [Name | OptAcc], ArgAcc, ArgPos, Args, OptStr, Arg);
|
parse_option_short(OptSpecList, [Name | OptAcc], ArgAcc, ArgPos, Args, OptStr, Arg);
|
||||||
|
|
||||||
{value, {_Name, Short, _Long, ArgSpec, _Help} = OptSpec} ->
|
{_Name, Short, _Long, ArgSpec, _Help} = OptSpec ->
|
||||||
case Arg of
|
case Arg of
|
||||||
[] ->
|
[] ->
|
||||||
% The option argument string is empty, but the option requires
|
% The option argument string is empty, but the option requires
|
||||||
|
Loading…
x
Reference in New Issue
Block a user