Make dialyzer happy

This commit is contained in:
Carlos Martín Nieto
2013-08-31 17:57:55 +02:00
parent fd171278a1
commit 808a8176bc
2 changed files with 11 additions and 10 deletions

View File

@@ -40,6 +40,7 @@ repository_discover(_Path) ->
reference_list(_Repo) ->
nif_error(?LINE).
-spec reference_create(term(), iolist(), geef_ref:type(), binary(), boolean()) -> ok | {error, term()}.
reference_create(_Repo, _Refname, _Type, _Target, _Force) ->
?NIF_FN.
@@ -49,7 +50,7 @@ reference_to_id(_Repo, _Refname) ->
reference_glob(_Repo, _Glob) ->
nif_error(?LINE).
-spec reference_lookup(term(), binary() | iolist()) -> {ok, geef_ref:ref_type(), geef_oid:oid()} | {error, term()}.
-spec reference_lookup(term(), binary() | iolist()) -> {ok, geef_ref:type(), binary()} | {error, term()}.
reference_lookup(_RepoHandle, _Refname) ->
nif_error(?LINE).
@@ -57,11 +58,11 @@ reference_lookup(_RepoHandle, _Refname) ->
reference_iterator(_Repo, _Regexp) ->
nif_error(?LINE).
-spec reference_next(geef_ref:iterator()) -> {ok, binary(), geef_ref:ref_type(), geef_oid:oid() | binary()} | {error, iterover | term()}.
-spec reference_next(geef_ref:iterator()) -> {ok, binary(), geef_ref:type(), binary()} | {error, iterover | term()}.
reference_next(_Handle) ->
nif_error(?LINE).
-spec reference_resolve(term(), binary()) -> {ok, geef_oid:oid()} | {error, term()}.
-spec reference_resolve(term(), binary()) -> {ok, geef_ref:type(), binary()} | {error, term()}.
reference_resolve(_RepoHandle, _Name) ->
nif_error(?LINE).

View File

@@ -6,31 +6,31 @@
-type iterator() :: #geef_iterator{type :: ref}.
-type type() :: oid | symbolic.
-type target() :: binary | geef_oid:oid().
-type target() :: binary() | geef_oid:oid().
-type ref() :: #geef_reference{name :: binary()}.
-export_type([reference/0, iterator/0]).
-export_type([reference/0, type/0, target/0, iterator/0]).
-spec create(pid(), iolist(), target(), boolean()) -> {ok, ref()} | {error, term()}.
create(Repo, Refname, Target, Force) ->
RepoHandle = geef_repo:handle(Repo),
case do_create(RepoHandle, Refname, Target, Force) of
ok ->
{ok, make(Repo, Refname, Target)};
{ok, make(Repo, iolist_to_binary(Refname), Target)};
Err = {error, _} ->
Err
end.
-spec do_create(term(), binary(), target(), boolean()) -> ok | {error, term}.
-spec do_create(term(), iolist(), target(), boolean()) -> ok | {error, term()}.
do_create(RepoHandle, Refname, #geef_oid{oid=Oid}, Force) ->
geef_nif:reference_create(RepoHandle, Refname, oid, Oid, Force);
do_create(RepoHandle, Refname, Target, Force) ->
geef_nif:reference_create(RepoHandle, Refname, symbolic, Target, Force).
-spec make(pid(), binary(), target()) -> ref().
make(Repo, Name, Target = #geef_oid{}) ->
#geef_reference{repo=Repo, name=Name, type=oid, target=Target};
make(Repo, Name, #geef_oid{oid=Oid}) ->
make(Repo, Name, oid, Oid);
make(Repo, Name, Target) ->
#geef_reference{repo=Repo, name=Name, type=symbolic, target=Target}.
make(Repo, Name, symbolic, Target).
-spec make(pid(), binary(), type(), binary()) -> ref().
make(Repo, Name, oid, Target) ->