Copyright © 2011-2016 Michael Truog
Version: 1.5.2 Sep 9 2016 14:52:11 ------------------------------------------------------------------------
Behaviours: gen_server.
Authors: Michael Truog (mjtruog [at] gmail (dot) com).
callback() = callback_join() | callback_leave()
callback_join() = fun((any(), pid()) -> any()) | fun((any(), pid(), reason_join()) -> any())
callback_leave() = fun((any(), pid()) -> any()) | fun((any(), pid(), reason_leave()) -> any())
name() = any()
reason_join() = join_local | join_remote | {exit, any()}
reason_leave() = leave_local | leave_remote | {exit, any()}
scope() = atom()
via_name() = {global, scope(), name(), random} | {global, scope(), name(), oldest} | {global, scope(), name(), pos_integer()} | {local, scope(), name(), random} | {local, scope(), name(), oldest} | {local, scope(), name(), pos_integer()} | {global, scope(), name()} | {local, scope(), name()} | {global, name(), pos_integer()} | {local, name(), pos_integer()} | {global, name()} | {local, name()} | {scope(), name()} | {name(), pos_integer()} | name()
for OTP behaviors
add_join_callback(GroupName::name(), F::callback_join()) -> ok
add_join_callback(Scope::scope(), GroupName::name(), F::callback_join()) -> ok
add_leave_callback(GroupName::name(), F::callback_leave()) -> ok
add_leave_callback(Scope::scope(), GroupName::name(), F::callback_leave()) -> ok
create(X1::name()) -> ok
create(GroupName::name()) -> ok | error
delete(X1::name()) -> ok
delete(GroupName::name()) -> ok | error
get_closest_pid(GroupName::name()) -> {ok, name(), pid()} | {error, cpg_data:get_pid_error_reason()}
get_closest_pid(GroupName::name() | scope(), Exclude::pid() | name() | pos_integer() | infinity) -> {ok, name(), pid()} | {error, cpg_data:get_pid_error_reason()}
get_closest_pid(Scope::scope() | name(), GroupName::name() | pid(), Exclude::pid() | pos_integer() | infinity) -> {ok, name(), pid()} | {error, cpg_data:get_pid_error_reason()}
get_closest_pid(Scope::scope(), GroupName::name(), Exclude::pid(), Timeout::pos_integer() | infinity) -> {ok, name(), pid()} | {error, cpg_data:get_pid_error_reason()}
get_furthest_pid(GroupName::name()) -> {ok, name(), pid()} | {error, cpg_data:get_pid_error_reason()}
get_furthest_pid(GroupName::name() | scope(), Exclude::pid() | name() | pos_integer() | infinity) -> {ok, name(), pid()} | {error, cpg_data:get_pid_error_reason()}
get_furthest_pid(Scope::scope() | name(), GroupName::name() | pid(), Exclude::pid() | pos_integer() | infinity) -> {ok, name(), pid()} | {error, cpg_data:get_pid_error_reason()}
get_furthest_pid(Scope::scope(), GroupName::name(), Exclude::pid(), Timeout::pos_integer() | infinity) -> {ok, name(), pid()} | {error, cpg_data:get_pid_error_reason()}
get_local_members(GroupName::name()) -> cpg_data:get_members_return()
get_local_members(GroupName::name() | scope(), Exclude::pid() | name() | pos_integer() | infinity) -> cpg_data:get_members_return()
get_local_members(Scope::scope() | name(), GroupName::name() | pid(), Exclude::pid() | pos_integer() | infinity) -> cpg_data:get_members_return()
get_local_members(Scope::scope(), GroupName::name(), Exclude::pid(), Timeout::pos_integer() | infinity) -> cpg_data:get_members_return()
get_local_newest_pid(GroupName::name()) -> {ok, name(), pid()} | {error, cpg_data:get_pid_error_reason()}
get_local_newest_pid(GroupName::name() | scope(), Exclude::pid() | name() | pos_integer() | infinity) -> {ok, name(), pid()} | {error, cpg_data:get_pid_error_reason()}
get_local_newest_pid(Scope::scope() | name(), GroupName::name() | pid(), Exclude::pid() | pos_integer() | infinity) -> {ok, name(), pid()} | {error, cpg_data:get_pid_error_reason()}
get_local_newest_pid(Scope::scope(), GroupName::name(), Exclude::pid(), Timeout::pos_integer() | infinity) -> {ok, name(), pid()} | {error, cpg_data:get_pid_error_reason()}
get_local_oldest_pid(GroupName::name()) -> {ok, name(), pid()} | {error, cpg_data:get_pid_error_reason()}
get_local_oldest_pid(GroupName::name() | scope(), Exclude::pid() | name() | pos_integer() | infinity) -> {ok, name(), pid()} | {error, cpg_data:get_pid_error_reason()}
get_local_oldest_pid(Scope::scope() | name(), GroupName::name() | pid(), Exclude::pid() | pos_integer() | infinity) -> {ok, name(), pid()} | {error, cpg_data:get_pid_error_reason()}
get_local_oldest_pid(Scope::scope(), GroupName::name(), Exclude::pid(), Timeout::pos_integer() | infinity) -> {ok, name(), pid()} | {error, cpg_data:get_pid_error_reason()}
get_local_pid(GroupName::name()) -> {ok, name(), pid()} | {error, cpg_data:get_pid_error_reason()}
get_local_pid(GroupName::name() | scope(), Exclude::pid() | name() | pos_integer() | infinity) -> {ok, name(), pid()} | {error, cpg_data:get_pid_error_reason()}
get_local_pid(Scope::scope() | name(), GroupName::name() | pid(), Exclude::pid() | pos_integer() | infinity) -> {ok, name(), pid()} | {error, cpg_data:get_pid_error_reason()}
get_local_pid(Scope::scope(), GroupName::name(), Exclude::pid(), Timeout::pos_integer() | infinity) -> {ok, name(), pid()} | {error, cpg_data:get_pid_error_reason()}
get_members(GroupName::name()) -> cpg_data:get_members_return()
get_members(GroupName::name() | scope(), Exclude::pid() | name() | pos_integer() | infinity) -> cpg_data:get_members_return()
get_members(Scope::scope() | name(), GroupName::name() | pid(), Exclude::pid() | pos_integer() | infinity) -> cpg_data:get_members_return()
get_members(Scope::scope(), GroupName::name(), Exclude::pid(), Timeout::pos_integer() | infinity) -> cpg_data:get_members_return()
get_newest_pid(GroupName::name()) -> {ok, name(), pid()} | {error, cpg_data:get_pid_error_reason()}
get_newest_pid(GroupName::name() | scope(), Exclude::pid() | name() | pos_integer() | infinity) -> {ok, name(), pid()} | {error, cpg_data:get_pid_error_reason()}
get_newest_pid(Scope::scope() | name(), GroupName::name() | pid(), Exclude::pid() | pos_integer() | infinity) -> {ok, name(), pid()} | {error, cpg_data:get_pid_error_reason()}
get_newest_pid(Scope::scope(), GroupName::name(), Exclude::pid(), Timeout::pos_integer() | infinity) -> {ok, name(), pid()} | {error, cpg_data:get_pid_error_reason()}
get_oldest_pid(GroupName::name()) -> {ok, name(), pid()} | {error, cpg_data:get_pid_error_reason()}
get_oldest_pid(GroupName::name() | scope(), Exclude::pid() | name() | pos_integer() | infinity) -> {ok, name(), pid()} | {error, cpg_data:get_pid_error_reason()}
get_oldest_pid(Scope::scope() | name(), GroupName::name() | pid(), Exclude::pid() | pos_integer() | infinity) -> {ok, name(), pid()} | {error, cpg_data:get_pid_error_reason()}
get_oldest_pid(Scope::scope(), GroupName::name(), Exclude::pid(), Timeout::pos_integer() | infinity) -> {ok, name(), pid()} | {error, cpg_data:get_pid_error_reason()}
get_random_pid(GroupName::name()) -> {ok, name(), pid()} | {error, cpg_data:get_pid_error_reason()}
get_random_pid(GroupName::name() | scope(), Exclude::pid() | name() | pos_integer() | infinity) -> {ok, name(), pid()} | {error, cpg_data:get_pid_error_reason()}
get_random_pid(Scope::scope() | name(), GroupName::name() | pid(), Exclude::pid() | pos_integer() | infinity) -> {ok, name(), pid()} | {error, cpg_data:get_pid_error_reason()}
get_random_pid(Scope::scope(), GroupName::name(), Exclude::pid(), Timeout::pos_integer() | infinity) -> {ok, name(), pid()} | {error, cpg_data:get_pid_error_reason()}
get_remote_members(GroupName::name()) -> cpg_data:get_members_return()
get_remote_members(GroupName::name() | scope(), Exclude::pid() | name() | pos_integer() | infinity) -> cpg_data:get_members_return()
get_remote_members(Scope::scope() | name(), GroupName::name() | pid(), Exclude::pid() | pos_integer() | infinity) -> cpg_data:get_members_return()
get_remote_members(Scope::scope(), GroupName::name(), Exclude::pid(), Timeout::pos_integer() | infinity) -> cpg_data:get_members_return()
get_remote_newest_pid(GroupName::name()) -> {ok, name(), pid()} | {error, cpg_data:get_pid_error_reason()}
get_remote_newest_pid(GroupName::name() | scope(), Exclude::pid() | name() | pos_integer() | infinity) -> {ok, name(), pid()} | {error, cpg_data:get_pid_error_reason()}
get_remote_newest_pid(Scope::scope() | name(), GroupName::name() | pid(), Exclude::pid() | pos_integer() | infinity) -> {ok, name(), pid()} | {error, cpg_data:get_pid_error_reason()}
get_remote_newest_pid(Scope::scope(), GroupName::name(), Exclude::pid(), Timeout::pos_integer() | infinity) -> {ok, name(), pid()} | {error, cpg_data:get_pid_error_reason()}
get_remote_oldest_pid(GroupName::name()) -> {ok, name(), pid()} | {error, cpg_data:get_pid_error_reason()}
get_remote_oldest_pid(GroupName::name() | scope(), Exclude::pid() | name() | pos_integer() | infinity) -> {ok, name(), pid()} | {error, cpg_data:get_pid_error_reason()}
get_remote_oldest_pid(Scope::scope() | name(), GroupName::name() | pid(), Exclude::pid() | pos_integer() | infinity) -> {ok, name(), pid()} | {error, cpg_data:get_pid_error_reason()}
get_remote_oldest_pid(Scope::scope(), GroupName::name(), Exclude::pid(), Timeout::pos_integer() | infinity) -> {ok, name(), pid()} | {error, cpg_data:get_pid_error_reason()}
get_remote_pid(GroupName::name()) -> {ok, name(), pid()} | {error, cpg_data:get_pid_error_reason()}
get_remote_pid(GroupName::name() | scope(), Exclude::pid() | name() | pos_integer() | infinity) -> {ok, name(), pid()} | {error, cpg_data:get_pid_error_reason()}
get_remote_pid(Scope::scope() | name(), GroupName::name() | pid(), Exclude::pid() | pos_integer() | infinity) -> {ok, name(), pid()} | {error, cpg_data:get_pid_error_reason()}
get_remote_pid(Scope::scope(), GroupName::name(), Exclude::pid(), Timeout::pos_integer() | infinity) -> {ok, name(), pid()} | {error, cpg_data:get_pid_error_reason()}
join(GroupName::name()) -> ok
join(GroupName::name()) -> ok | error
join(GroupName::name(), Pid::pid()) -> ok | error
join(Scope::scope() | name(), GroupName::name() | pid(), Pid::pid() | pos_integer() | infinity) -> ok
join(Scope::scope() | name(), GroupName::name() | pid(), Pid::pid() | pos_integer() | infinity) -> ok | error
join(Scope::scope(), GroupName::name(), Pid::pid(), Timeout::pos_integer() | infinity) -> ok | error
join_count(GroupName::name()) -> non_neg_integer()
join_count(Scope::scope() | name(), GroupName::name() | pid(), Pid::pid() | pos_integer() | infinity) -> non_neg_integer()
join_count(Scope::scope(), GroupName::name(), Pid::pid(), Timeout::pos_integer() | infinity) -> non_neg_integer()
leave() -> ok | error
leave() -> ok | error
leave(Pid::pid() | name()) -> ok | error
leave(Pid::pid() | name()) -> ok | error
leave(Scope::name() | scope() | pid(), Pid::pid() | name() | pos_integer() | infinity) -> ok | error
leave(Pid::name() | pid(), Timeout::pid() | pos_integer() | infinity) -> ok | error
leave(Scope::scope() | name(), Pid::name() | pid(), Timeout::pid() | pos_integer() | infinity) -> ok | error
leave(Scope::scope() | name(), Pid::name() | pid(), Timeout::pid() | pos_integer() | infinity) -> ok | error
leave(Scope::scope(), GroupName::name(), Pid::pid(), Timeout::pos_integer() | infinity) -> ok | error
leave(Scope::scope(), GroupName::name(), Pid::pid(), Timeout::pos_integer() | infinity) -> ok | error
leave_counts(Counts::[{name(), pos_integer()}]) -> ok | error
leave_counts(Counts::[{name(), pos_integer()}]) -> ok | error
leave_counts(Counts::[{name(), pos_integer()}] | scope(), Pid::pid() | [{name(), pos_integer()}]) -> ok | error
leave_counts(Counts::[{name(), pos_integer()}] | scope(), Pid::pid() | [{name(), pos_integer()}]) -> ok | error
leave_counts(Scope::scope() | [{name(), pos_integer()}], Counts::[{name(), pos_integer()}] | pid(), Pid::pid() | pos_integer() | infinity) -> ok | error
leave_counts(Scope::scope() | [{name(), pos_integer()}], Counts::[{name(), pos_integer()}] | pid(), Pid::pid() | pos_integer() | infinity) -> ok | error
leave_counts(Scope::scope(), Counts::[{name(), pos_integer()}], Pid::pid(), Timeout::pos_integer() | infinity) -> ok | error
leave_counts(Scope::scope(), Counts::[{name(), pos_integer()}], Pid::pid(), Timeout::pos_integer() | infinity) -> ok | error
register_name(GroupName::via_name(), Pid::pid()) -> yes | no
remove_join_callback(GroupName::name(), F::callback_join()) -> ok
remove_join_callback(Scope::scope(), GroupName::name(), F::callback_join()) -> ok
remove_leave_callback(GroupName::name(), F::callback_leave()) -> ok
remove_leave_callback(Scope::scope(), GroupName::name(), F::callback_leave()) -> ok
reset(Scope::scope()) -> ok
scope_exists(Scope::atom()) -> ok | {error, term()}
send(ViaName::via_name(), Msg::any()) -> pid()
start_link() -> {ok, pid()} | {error, term()}
start_link(Scope::atom()) -> {ok, pid()} | {error, term()}
unregister_name(GroupName::via_name()) -> ok | error
whereis_name(GroupName::via_name()) -> pid() | undefined
which_groups() -> [name()]
which_groups_counts(Pid::pid()) -> [{name(), pos_integer()}]
which_groups_counts(Scope::scope() | pid(), Pid::pid() | pos_integer() | infinity) -> [{name(), pos_integer()}]
which_groups_counts(Scope::scope(), Pid::pid(), Timeout::pos_integer() | infinity) -> [{name(), pos_integer()}]
Generated by EDoc, Sep 9 2016, 14:52:11.