From 41232f18c18c9ca444282a9e959b7dfd6c93eff5 Mon Sep 17 00:00:00 2001 From: glx Date: Mon, 16 Dec 2019 20:56:10 +0100 Subject: Codechange: Replace network related FOR_ALL with range-based for loops --- src/network/network_admin.h | 32 +++++++++++--------------------- 1 file changed, 11 insertions(+), 21 deletions(-) (limited to 'src/network/network_admin.h') diff --git a/src/network/network_admin.h b/src/network/network_admin.h index bf3dc2242..98dbab481 100644 --- a/src/network/network_admin.h +++ b/src/network/network_admin.h @@ -82,28 +82,18 @@ public: { return "admin"; } -}; - -/** - * Iterate over all the sockets from a given starting point. - * @param var The variable to iterate with. - * @param start The start of the iteration. - */ -#define FOR_ALL_ADMIN_SOCKETS_FROM(var, start) FOR_ALL_ITEMS_FROM(ServerNetworkAdminSocketHandler, adminsocket_index, var, start) -/** - * Iterate over all the sockets. - * @param var The variable to iterate with. - */ -#define FOR_ALL_ADMIN_SOCKETS(var) FOR_ALL_ADMIN_SOCKETS_FROM(var, 0) - -/** - * Iterate over all the active sockets. - * @param var The variable to iterate with. - */ -#define FOR_ALL_ACTIVE_ADMIN_SOCKETS(var) \ - FOR_ALL_ADMIN_SOCKETS(var) \ - if (var->GetAdminStatus() == ADMIN_STATUS_ACTIVE) + /** + * Returns an iterable ensemble of all active admin sockets + * @param from index of the first socket to consider + * @return an iterable ensemble of all active admin sockets + */ + static Pool::IterateWrapper IterateActive(size_t from = 0) + { + return Pool::IterateWrapper(from, + [](size_t index) { return ServerNetworkAdminSocketHandler::Get(index)->GetAdminStatus() == ADMIN_STATUS_ACTIVE; }); + } +}; void NetworkAdminClientInfo(const NetworkClientSocket *cs, bool new_client = false); void NetworkAdminClientUpdate(const NetworkClientInfo *ci); -- cgit v1.2.3-54-g00ecf