-int start_server(int port, start_listener_t starter, delete_client_t deleter);
-
-server_t *server_register(int fd, run_client_t runner, void *data);
-void server_delete(server_t **server);
-void server_release(server_t *server);
-
-static inline void server_none(server_t *server)
-{
- ev_io_stop(global_loop, &server->io);
-}
-
-static inline void server_rw(server_t *server)
-{
- ev_io_stop(global_loop, &server->io);
- ev_io_set(&server->io, server->fd, EV_READ | EV_WRITE);
- ev_io_start(global_loop, &server->io);
-}
-
-static inline void server_ro(server_t *server)
-{
- ev_io_stop(global_loop, &server->io);
- ev_io_set(&server->io, server->fd, EV_READ);
- ev_io_start(global_loop, &server->io);
-}
+ssize_t client_read(client_t *client);
+buffer_t *client_input_buffer(client_t *client);
+buffer_t *client_output_buffer(client_t *client);
+void *client_data(client_t *client);