aboutsummaryrefslogtreecommitdiffstats
path: root/lib/hipe/cerl/erl_bif_types.erl
diff options
context:
space:
mode:
authorBjörn Gustavsson <[email protected]>2010-02-13 08:24:26 +0100
committerBjörn Gustavsson <[email protected]>2010-02-14 16:48:57 +0100
commit6d2d8b9c2bbd6a1c582cb936e69b4bfe491c85be (patch)
tree618fad124e1321240c8b341103e33f03d8fc4b1e /lib/hipe/cerl/erl_bif_types.erl
parent3f2a3a5e0b451ec82f33ece82132921cf8492094 (diff)
downloadotp-6d2d8b9c2bbd6a1c582cb936e69b4bfe491c85be.tar.gz
otp-6d2d8b9c2bbd6a1c582cb936e69b4bfe491c85be.tar.bz2
otp-6d2d8b9c2bbd6a1c582cb936e69b4bfe491c85be.zip
Add types for erts_debug:lock_counters/1
erts_debug:lock_counters/1 is an undocumented BIF used by the 'lcnt' module in the 'tools' application.
Diffstat (limited to 'lib/hipe/cerl/erl_bif_types.erl')
-rw-r--r--lib/hipe/cerl/erl_bif_types.erl24
1 files changed, 24 insertions, 0 deletions
diff --git a/lib/hipe/cerl/erl_bif_types.erl b/lib/hipe/cerl/erl_bif_types.erl
index 7cd3fc7157..3d408c9df7 100644
--- a/lib/hipe/cerl/erl_bif_types.erl
+++ b/lib/hipe/cerl/erl_bif_types.erl
@@ -1773,6 +1773,24 @@ type(erts_debug, dist_ext_to_term, 2, Xs) ->
fun (_) -> t_any() end);
type(erts_debug, flat_size, 1, Xs) ->
strict(arg_types(erts_debug, flat_size, 1), Xs, fun (_) -> t_integer() end);
+type(erts_debug, lock_counters, 1, Xs) ->
+ strict(arg_types(erts_debug, lock_counters, 1), Xs,
+ fun ([Arg]) ->
+ case t_is_atom(Arg) of
+ true ->
+ case t_atom_vals(Arg) of
+ ['enabled'] -> t_boolean();
+ ['info'] -> t_any();
+ ['clear'] -> t_atom(ok);
+ _ -> t_sup([t_boolean(), t_any(), t_atom('ok')])
+ end;
+ false ->
+ case t_is_tuple(Arg) of
+ true -> t_boolean();
+ false -> t_sup([t_boolean(), t_any(), t_atom('ok')])
+ end
+ end
+ end);
type(erts_debug, same, 2, Xs) ->
strict(arg_types(erts_debug, same, 2), Xs, fun (_) -> t_boolean() end);
%%-- ets ----------------------------------------------------------------------
@@ -3874,6 +3892,12 @@ arg_types(erts_debug, dist_ext_to_term, 2) ->
[t_tuple(), t_binary()];
arg_types(erts_debug, flat_size, 1) ->
[t_any()];
+arg_types(erts_debug, lock_counters, 1) ->
+ [t_sup([t_atom(enabled),
+ t_atom(info),
+ t_atom(clear),
+ t_tuple([t_atom(copy_save), t_boolean()]),
+ t_tuple([t_atom(process_locks), t_boolean()])])];
arg_types(erts_debug, same, 2) ->
[t_any(), t_any()];
%%------- ets -----------------------------------------------------------------