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

Namespaces

namespace  io_uring
 

Classes

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

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