diff --git a/src/ec_assoc_list.erl b/src/ec_assoc_list.erl index 80919aa..e9bd0cc 100644 --- a/src/ec_assoc_list.erl +++ b/src/ec_assoc_list.erl @@ -47,12 +47,12 @@ has_key(Key, {ec_assoc_list, Data}) -> lists:keymember(Key, 1, Data). -spec get(ec_dictionary:key(K), Object::dictionary(K, V)) -> - ec_dictionary:value(V). + ec_dictionary:value(V). get(Key, {ec_assoc_list, Data}) -> case lists:keyfind(Key, 1, Data) of {Key, Value} -> Value; - false -> + false -> throw(not_found) end. @@ -64,19 +64,19 @@ get(Key, Default, {ec_assoc_list, Data}) -> case lists:keyfind(Key, 1, Data) of {Key, Value} -> Value; - false -> + false -> Default end. -spec add(ec_dictionary:key(K), ec_dictionary:value(V), Object::dictionary(K, V)) -> - dictionary(K, V). + dictionary(K, V). add(Key, Value, {ec_assoc_list, _Data}=Dict) -> {ec_assoc_list, Rest} = remove(Key,Dict), {ec_assoc_list, [{Key, Value} | Rest ]}. -spec remove(ec_dictionary:key(K), Object::dictionary(K, _V)) -> - dictionary(K, _V). + dictionary(K, _V). remove(Key, {ec_assoc_list, Data}) -> {ec_assoc_list, lists:keydelete(Key, 1, Data)}. @@ -91,15 +91,15 @@ size({ec_assoc_list, Data}) -> -spec to_list(dictionary(K, V)) -> [{ec_dictionary:key(K), ec_dictionary:value(V)}]. to_list({ec_assoc_list, Data}) -> - Data. + Data. -spec from_list([{ec_dictionary:key(K), ec_dictionary:value(V)}]) -> - dictionary(K, V). + dictionary(K, V). from_list(List) when is_list(List) -> {ec_assoc_list, List}. -spec keys(dictionary(K, _V)) -> [ec_dictionary:key(K)]. keys({ec_assoc_list, Data}) -> lists:map(fun({Key, _Value}) -> - Key - end, Data). + Key + end, Data). diff --git a/src/ec_orddict.erl b/src/ec_orddict.erl index 1244d60..fdd8a38 100644 --- a/src/ec_orddict.erl +++ b/src/ec_orddict.erl @@ -48,59 +48,59 @@ has_key(Key, Data) -> orddict:is_key(Key, Data). -spec get(ec_dictionary:key(K), Object::dictionary(K, V)) -> - ec_dictionary:value(V). + ec_dictionary:value(V). get(Key, Data) -> case orddict:find(Key, Data) of {ok, Value} -> Value; - error -> + error -> throw(not_found) end. -spec get(ec_dictionary:key(K), Default::ec_dictionary:value(V), Object::dictionary(K, V)) -> - ec_dictionary:value(V). + ec_dictionary:value(V). get(Key, Default, Data) -> case orddict:find(Key, Data) of {ok, Value} -> Value; - error -> + error -> Default end. -spec add(ec_dictionary:key(K), ec_dictionary:value(V), Object::dictionary(K, V)) -> - dictionary(K, V). + dictionary(K, V). add(Key, Value, Data) -> orddict:store(Key, Value, Data). -spec remove(ec_dictionary:key(K), Object::dictionary(K, V)) -> - dictionary(K, V). + dictionary(K, V). remove(Key, Data) -> orddict:erase(Key, Data). -spec has_value(ec_dictionary:value(V), Object::dictionary(_K, V)) -> boolean(). has_value(Value, Data) -> orddict:fold(fun(_, NValue, _) when NValue == Value -> - true; - (_, _, Acc) -> - Acc - end, - false, - Data). + true; + (_, _, Acc) -> + Acc + end, + false, + Data). -spec size(Object::dictionary(_K, _V)) -> non_neg_integer(). size(Data) -> orddict:size(Data). -spec to_list(dictionary(K, V)) -> - [{ec_dictionary:key(K), ec_dictionary:value(V)}]. + [{ec_dictionary:key(K), ec_dictionary:value(V)}]. to_list(Data) -> orddict:to_list(Data). -spec from_list([{ec_dictionary:key(K), ec_dictionary:value(V)}]) -> - dictionary(K, V). + dictionary(K, V). from_list(List) when is_list(List) -> orddict:from_list(List). diff --git a/src/ec_rbdict.erl b/src/ec_rbdict.erl index 1bfcecc..f28f625 100644 --- a/src/ec_rbdict.erl +++ b/src/ec_rbdict.erl @@ -139,12 +139,12 @@ size(T) -> size1(T). -spec to_list(dictionary(K, V)) -> - [{ec_dictionary:key(K), ec_dictionary:value(V)}]. + [{ec_dictionary:key(K), ec_dictionary:value(V)}]. to_list(T) -> to_list(T, []). -spec from_list([{ec_dictionary:key(K), ec_dictionary:value(V)}]) -> - dictionary(K, V). + dictionary(K, V). from_list(L) -> lists:foldl(fun ({K, V}, D) -> add(K, V, D) @@ -159,7 +159,7 @@ keys(Dict) -> %%% Enternal functions %%%=================================================================== -spec keys(dictionary(K, _V), [ec_dictionary:key(K)]) -> - [ec_dictionary:key(K)]. + [ec_dictionary:key(K)]. keys(empty, Tail) -> Tail; keys({_, L, K, _, R}, Tail) -> @@ -167,7 +167,7 @@ keys({_, L, K, _, R}, Tail) -> -spec erase_aux(ec_dictionary:key(K), dictionary(K, V)) -> - {dictionary(K, V), boolean()}. + {dictionary(K, V), boolean()}. erase_aux(_, empty) -> {empty, false}; erase_aux(K, {b, A, Xk, Xv, B}) -> @@ -228,7 +228,7 @@ erase_aux(K, {r, A, Xk, Xv, B}) -> end. -spec erase_min(dictionary(K, V)) -> - {dictionary(K, V), {ec_dictionary:key(K), ec_dictionary:value(V)}, boolean()}. + {dictionary(K, V), {ec_dictionary:key(K), ec_dictionary:value(V)}, boolean()}. erase_min({b, empty, Xk, Xv, empty}) -> {empty, {Xk, Xv}, true}; erase_min({b, empty, Xk, Xv, {r, A, Yk, Yv, B}}) -> @@ -240,15 +240,15 @@ erase_min({r, empty, Xk, Xv, A}) -> erase_min({b, A, Xk, Xv, B}) -> {A1, Min, Dec} = erase_min(A), if Dec -> - {T, Dec1} = unbalright(b, A1, Xk, Xv, B), - {T, Min, Dec1}; + {T, Dec1} = unbalright(b, A1, Xk, Xv, B), + {T, Min, Dec1}; true -> {{b, A1, Xk, Xv, B}, Min, false} end; erase_min({r, A, Xk, Xv, B}) -> {A1, Min, Dec} = erase_min(A), if Dec -> - {T, Dec1} = unbalright(r, A1, Xk, Xv, B), - {T, Min, Dec1}; + {T, Dec1} = unbalright(r, A1, Xk, Xv, B), + {T, Min, Dec1}; true -> {{r, A1, Xk, Xv, B}, Min, false} end. @@ -299,7 +299,7 @@ to_list({_, A, Xk, Xv, B}, List) -> -spec lbalance(color(), dictionary(K, V), ec_dictionary:key(K), ec_dictionary:value(V), dictionary(K, V)) -> - dictionary(K, V). + dictionary(K, V). lbalance(b, {r, {r, A, Xk, Xv, B}, Yk, Yv, C}, Zk, Zv, D) -> {r, {b, A, Xk, Xv, B}, Yk, Yv, {b, C, Zk, Zv, D}}; @@ -311,7 +311,7 @@ lbalance(C, A, Xk, Xv, B) -> {C, A, Xk, Xv, B}. -spec rbalance(color(), dictionary(K, V), ec_dictionary:key(K), ec_dictionary:value(V), dictionary(K, V)) -> - dictionary(K, V). + dictionary(K, V). rbalance(b, A, Xk, Xv, {r, {r, B, Yk, Yv, C}, Zk, Zv, D}) -> {r, {b, A, Xk, Xv, B}, Yk, Yv, {b, C, Zk, Zv, D}};