Fix the type specs for cmd usage

This commit is contained in:
terry-xiaoyu 2019-09-20 14:45:15 +08:00
parent 3202ed2392
commit bd33441720
1 changed files with 10 additions and 9 deletions

View File

@ -61,8 +61,9 @@
-record(state, {seq = 0}). -record(state, {seq = 0}).
-type(cmd() :: atom()). -type(cmd() :: atom()).
-type(cmd_params() :: string()).
-type(cmd_descr() :: string()). -type(cmd_descr() :: string()).
-type(cmd_usage() :: {cmd(), cmd_descr()}). -type(cmd_usage() :: {cmd_params(), cmd_descr()}).
-define(SERVER, ?MODULE). -define(SERVER, ?MODULE).
-define(CMD_TAB, emqx_command). -define(CMD_TAB, emqx_command).
@ -140,9 +141,9 @@ print(Format, Args) ->
usage(UsageList) -> usage(UsageList) ->
io:format(format_usage(UsageList)). io:format(format_usage(UsageList)).
-spec(usage(cmd(), cmd_descr()) -> ok). -spec(usage(cmd_params(), cmd_descr()) -> ok).
usage(Cmd, Desc) -> usage(CmdParams, Desc) ->
io:format(format_usage(Cmd, Desc)). io:format(format_usage(CmdParams, Desc)).
-spec(format(io:format()) -> string()). -spec(format(io:format()) -> string()).
format(Msg) -> format(Msg) ->
@ -155,13 +156,13 @@ format(Format, Args) ->
-spec(format_usage([cmd_usage()]) -> ok). -spec(format_usage([cmd_usage()]) -> ok).
format_usage(UsageList) -> format_usage(UsageList) ->
lists:map( lists:map(
fun({Cmd, Desc}) -> fun({CmdParams, Desc}) ->
format_usage(Cmd, Desc) format_usage(CmdParams, Desc)
end, UsageList). end, UsageList).
-spec(format_usage(cmd(), cmd_descr()) -> string()). -spec(format_usage(cmd_params(), cmd_descr()) -> string()).
format_usage(Cmd, Desc) -> format_usage(CmdParams, Desc) ->
CmdLines = split_cmd(Cmd), CmdLines = split_cmd(CmdParams),
DescLines = split_cmd(Desc), DescLines = split_cmd(Desc),
lists:foldl(fun({CmdStr, DescStr}, Usage) -> lists:foldl(fun({CmdStr, DescStr}, Usage) ->
Usage ++ format("~-48s# ~s~n", [CmdStr, DescStr]) Usage ++ format("~-48s# ~s~n", [CmdStr, DescStr])