dius 0.1.0
Loading...
Searching...
No Matches
dius::linux Namespace Reference

Namespaces

namespace  io_uring

Classes

struct  OperationStateBase
struct  IoUringContext
struct  IoUringScheduler
struct  Env
struct  ReadSomeSender
struct  WriteSomeSender
struct  CloseSender
struct  ConnectSender
struct  BindSender
struct  ListenSender
struct  ShutdownSender
struct  ScheduleSender
class  AsyncFile
class  AcceptSocket
class  AsyncSocket
struct  OpenSender
struct  MakeSocketSender
struct  AcceptSender
struct  RunSender

Functions

void enqueue_operation (IoUringContext *, OperationStateBase *)
auto get_scheduler (IoUringContext *) -> IoUringScheduler
auto tag_invoke (di::Tag< di::execution::run >, AsyncFile &self)
auto tag_invoke (di::Tag< di::execution::run >, AsyncSocket< di::Void > &self)
auto tag_invoke (di::Tag< di::execution::run >, AsyncSocket< AcceptSocket > &self)
auto tag_invoke (di::Tag< di::execution::schedule >, IoUringScheduler const &self) -> ScheduleSender
auto tag_invoke (di::Tag< di::execution::async_open >, IoUringScheduler const &self, di::Path path, OpenMode mode, u16 create_mode)
auto tag_invoke (di::Tag< di::execution::async_open >, IoUringScheduler const &self, di::Path path, OpenMode mode)
auto tag_invoke (di::Tag< di::execution::async_make_socket >, IoUringScheduler const &self)
template<di::concepts::Invocable< io_uring::SQE * > Fun>
void enqueue_io_operation (IoUringContext *context, OperationStateBase *op, Fun &&function)

Function Documentation

◆ enqueue_io_operation()

template<di::concepts::Invocable< io_uring::SQE * > Fun>
void dius::linux::enqueue_io_operation ( IoUringContext * context,
OperationStateBase * op,
Fun && function )
inline

◆ enqueue_operation()

void dius::linux::enqueue_operation ( IoUringContext * context,
OperationStateBase * op )
inline

◆ get_scheduler()

auto dius::linux::get_scheduler ( IoUringContext * context) -> IoUringScheduler
inline

◆ tag_invoke() [1/7]

auto dius::linux::tag_invoke ( di::Tag< di::execution::async_make_socket > ,
IoUringScheduler const & self )
inline

◆ tag_invoke() [2/7]

auto dius::linux::tag_invoke ( di::Tag< di::execution::async_open > ,
IoUringScheduler const & self,
di::Path path,
OpenMode mode )
inline

◆ tag_invoke() [3/7]

auto dius::linux::tag_invoke ( di::Tag< di::execution::async_open > ,
IoUringScheduler const & self,
di::Path path,
OpenMode mode,
u16 create_mode )
inline

◆ tag_invoke() [4/7]

auto dius::linux::tag_invoke ( di::Tag< di::execution::run > ,
AsyncFile & self )
inline

◆ tag_invoke() [5/7]

auto dius::linux::tag_invoke ( di::Tag< di::execution::run > ,
AsyncSocket< AcceptSocket > & self )
inline

◆ tag_invoke() [6/7]

auto dius::linux::tag_invoke ( di::Tag< di::execution::run > ,
AsyncSocket< di::Void > & self )
inline

◆ tag_invoke() [7/7]

auto dius::linux::tag_invoke ( di::Tag< di::execution::schedule > ,
IoUringScheduler const & self ) -> ScheduleSender
inline