瀏覽代碼

Prevent warnings on messing with opaque elements

pull/2412/head
Paulo F. Oliveira 4 年之前
父節點
當前提交
e28af4c536
共有 2 個文件被更改,包括 6 次插入1 次删除
  1. +3
    -0
      src/rebar_compiler_dag.erl
  2. +3
    -1
      src/rebar_prv_alias.erl

+ 3
- 0
src/rebar_compiler_dag.erl 查看文件

@ -247,6 +247,7 @@ compile_order(G, AppDefs) ->
AppPaths = prepare_app_paths(AppDefs),
compile_order(Edges, AppPaths, #{}).
-dialyzer({no_opaque, maybe_store/5}). % optimized digraph usage breaks opacity
%% @doc Store the DAG on disk if it was dirty
maybe_store(G, Dir, Compiler, Label, CritMeta) ->
case is_dirty(G) of
@ -281,6 +282,7 @@ dag_file(Dir, CompilerMod, Label) ->
filename:join([rebar_dir:local_cache_dir(Dir), CompilerMod,
?DAG_ROOT ++ "_" ++ Label ++ ?DAG_EXT]).
-dialyzer({no_opaque, restore_dag/3}). % optimized digraph usage breaks opacity
restore_dag(G, File, CritMeta) ->
case file:read_file(File) of
{ok, Data} ->
@ -298,6 +300,7 @@ restore_dag(G, File, CritMeta) ->
ok
end.
-dialyzer([{no_opaque, store_dag/3}, {no_return, store_dag/3}]). % optimized digraph usage breaks opacity
store_dag(G, File, CritMeta) ->
ok = filelib:ensure_dir(File),
{digraph, VT, ET, NT, false} = G,

+ 3
- 1
src/rebar_prv_alias.erl 查看文件

@ -22,6 +22,7 @@ init(State) ->
end
end, {ok, State}, Aliases).
-dialyzer([{no_opaque, init_alias/3}, {no_return, init_alias/3}]). % warnings relate to use of opaque structures in :forms
init_alias(Alias, Cmds, State) ->
Module = list_to_atom("rebar_prv_alias_" ++ atom_to_list(Alias)),
@ -65,10 +66,11 @@ validate_provider(Alias, Cmds, State) ->
false
end.
-dialyzer({no_unused, example/1}). % required since we suppress warnings for init_alias/3
example(Alias) ->
"rebar3 " ++ atom_to_list(Alias).
-dialyzer({no_unused, desc/1}). % required since we suppress warnings for init_alias/3
desc(Cmds) ->
"Equivalent to running: rebar3 do "
++ rebar_string:join(lists:map(fun to_desc/1, Cmds), ",").

Loading…
取消
儲存