Update merge_opts/2 function

This commit is contained in:
Feng Lee 2018-04-30 12:36:17 +08:00
parent 1630f7c9b8
commit 1fe28a7aef
1 changed files with 5 additions and 11 deletions

View File

@ -23,17 +23,11 @@
-spec(merge_opts(list(), list()) -> list()).
merge_opts(Defaults, Options) ->
lists:foldl(
fun({Opt, Val}, Acc) ->
case lists:keymember(Opt, 1, Acc) of
true -> lists:keyreplace(Opt, 1, Acc, {Opt, Val});
false -> [{Opt, Val}|Acc]
end;
(Opt, Acc) ->
case lists:member(Opt, Acc) of
true -> Acc;
false -> [Opt | Acc]
end
end, Defaults, Options).
fun({Opt, Val}, Acc) ->
lists:keystore(Opt, 1, Acc, {Opt, Val});
(Opt, Acc) ->
lists:usort([Opt | Acc])
end, Defaults, Options).
-spec(start_timer(integer(), term()) -> reference()).
start_timer(Interval, Msg) ->