#ifndef foouringhfoo #define foouringhfoo void uring_task_refdump(struct uring_task *task); void uring_task_destroy(struct cfg *cfg, struct uring_task *task); void uring_task_put(struct cfg *cfg, struct uring_task *task); void uring_task_get(struct cfg *cfg, struct uring_task *task); void uring_task_set_buf(struct uring_task *task, struct uring_task_buf *tbuf); void uring_task_set_fd(struct uring_task *task, int fd); void uring_task_close_fd(struct cfg *cfg, struct uring_task *task); struct uring_task *uring_parent(struct cfg *cfg); void uring_task_init(struct uring_task *task, const char *name, struct uring_task *parent, void (*free)(struct uring_task *)); void uring_close(struct cfg *cfg, struct uring_task *task, int fd); void uring_tbuf_write(struct cfg *cfg, struct uring_task *task, callback_t callback); void uring_write(struct cfg *cfg, struct uring_task *task, void *buf, size_t len, callback_t callback); void uring_tbuf_read_until(struct cfg *cfg, struct uring_task *task, rcallback_t complete, callback_t callback); void uring_tbuf_read_until_eof(struct cfg *cfg, struct uring_task *task, callback_t callback); void uring_tbuf_read(struct cfg *cfg, struct uring_task *task, callback_t callback); void uring_read_offset(struct cfg *cfg, struct uring_task *task, void *buf, size_t len, off_t offset, callback_t callback); static inline void uring_read(struct cfg *cfg, struct uring_task *task, void *buf, size_t len, callback_t callback) { uring_read_offset(cfg, task, buf, len, 0, callback); } void uring_openat(struct cfg *cfg, struct uring_task *task, const char *path, callback_t callback); void uring_sendmsg(struct cfg *cfg, struct uring_task *task, struct msghdr *msg, callback_t callback); void uring_connect(struct cfg *cfg, struct uring_task *task, struct sockaddr_in46 *addr, callback_t callback); void uring_accept(struct cfg *cfg, struct uring_task *task, struct sockaddr_in46 *addr, callback_t callback); void uring_poll(struct cfg *cfg, struct uring_task *task, short poll_mask, callback_t callback); void uring_poll_cancel(struct cfg *cfg, struct uring_task *task); void uring_delete(struct cfg *cfg); void uring_refdump(struct uring_ev *uev); void uring_init(struct cfg *cfg); void uring_event_loop(struct cfg *cfg); #endif