public List<Client> client_filter (ServerClientFilterFunc? func)

Call func for each client managed by this.

The result value of func determines what happens to the client. func will be called with this locked so no further actions on this can be performed from func.

If func returns REMOVE, the client will be removed from this.

If func returns KEEP, the client will remain in this.

If func returns REF, the client will remain in this but will also be added with an additional ref to the result List of this function..

When func is null, REF will be assumed for each client.



a Server


a callback


user data passed to func


a List with all clients for which func returned REF. After usage, each element in the List should be unreffed before the list is freed.