![]() System : Linux absol.cf 5.4.0-198-generic #218-Ubuntu SMP Fri Sep 27 20:18:53 UTC 2024 x86_64 User : www-data ( 33) PHP Version : 7.4.33 Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare, Directory : /usr/share/emscripten/tests/enet/ |
Upload File : |
/** @file list.c @brief ENet linked list functions */ #define ENET_BUILDING_LIB 1 #include "enet/enet.h" /** @defgroup list ENet linked list utility functions @ingroup private @{ */ void enet_list_clear (ENetList * list) { list -> sentinel.next = & list -> sentinel; list -> sentinel.previous = & list -> sentinel; } ENetListIterator enet_list_insert (ENetListIterator position, void * data) { ENetListIterator result = (ENetListIterator) data; result -> previous = position -> previous; result -> next = position; result -> previous -> next = result; position -> previous = result; return result; } void * enet_list_remove (ENetListIterator position) { position -> previous -> next = position -> next; position -> next -> previous = position -> previous; return position; } ENetListIterator enet_list_move (ENetListIterator position, void * dataFirst, void * dataLast) { ENetListIterator first = (ENetListIterator) dataFirst, last = (ENetListIterator) dataLast; first -> previous -> next = last -> next; last -> next -> previous = first -> previous; first -> previous = position -> previous; last -> next = position; first -> previous -> next = first; position -> previous = last; return first; } size_t enet_list_size (ENetList * list) { size_t size = 0; ENetListIterator position; for (position = enet_list_begin (list); position != enet_list_end (list); position = enet_list_next (position)) ++ size; return size; } /** @} */