dius 0.1.0
Loading...
Searching...
No Matches
io_uring_context.h File Reference
#include "di/assert/prelude.h"
#include "di/container/algorithm/copy.h"
#include "di/container/algorithm/prelude.h"
#include "di/container/intrusive/prelude.h"
#include "di/container/queue/prelude.h"
#include "di/execution/interface/connect.h"
#include "di/execution/interface/run.h"
#include "di/execution/io/async_net.h"
#include "di/execution/meta/connect_result.h"
#include "di/execution/prelude.h"
#include "di/execution/query/make_env.h"
#include "di/execution/receiver/prelude.h"
#include "di/execution/sequence/sequence_sender.h"
#include "di/execution/types/completion_signuatures.h"
#include "di/function/make_deferred.h"
#include "di/function/prelude.h"
#include "di/meta/operations.h"
#include "di/platform/compiler.h"
#include "di/util/addressof.h"
#include "di/vocab/optional/prelude.h"
#include "di/vocab/variant/prelude.h"
#include "dius/c_definitions.h"
#include "dius/error.h"
#include "dius/linux/io_uring.h"
#include "dius/net/address.h"
#include "dius/net/socket.h"
#include "dius/sync_file.h"
#include "dius/system/system_call.h"

Go to the source code of this file.

Classes

struct  dius::linux::OperationStateBase
 
struct  dius::linux::IoUringContext
 
struct  dius::linux::IoUringScheduler
 
struct  dius::linux::Env
 
struct  dius::linux::ReadSomeSender
 
struct  dius::linux::ReadSomeSender::OperationStateT< Rec >::Type
 
struct  dius::linux::WriteSomeSender
 
struct  dius::linux::WriteSomeSender::OperationStateT< Rec >::Type
 
struct  dius::linux::CloseSender
 
struct  dius::linux::CloseSender::OperationStateT< Rec >::Type
 
struct  dius::linux::ConnectSender
 
struct  dius::linux::ConnectSender::OperationStateT< Rec >::Type
 
struct  dius::linux::BindSender
 
struct  dius::linux::BindSender::OperationStateT< Rec >::Type
 
struct  dius::linux::ListenSender
 
struct  dius::linux::ListenSender::OperationStateT< Rec >::Type
 
struct  dius::linux::ShutdownSender
 
struct  dius::linux::ShutdownSender::OperationStateT< Rec >::Type
 
struct  dius::linux::ScheduleSender
 
struct  dius::linux::ScheduleSender::OperationStateT< Rec >::Type
 
class  dius::linux::AsyncFile
 
class  dius::linux::AcceptSocket
 
class  dius::linux::AsyncSocket< Base >
 
struct  dius::linux::OpenSender
 
struct  dius::linux::OpenSender::OperationStateT< Rec >::Type
 
struct  dius::linux::MakeSocketSender
 
struct  dius::linux::MakeSocketSender::OperationStateT< Rec >::Type
 
struct  dius::linux::AcceptSender
 
struct  dius::linux::AcceptSender::OperationStateT< Rec >::Type
 
struct  dius::linux::RunSender< Object, CreateSend >
 
struct  dius::linux::RunSender< Object, CreateSend >::OperationStateT< Rec >::Type
 
struct  dius::linux::RunSender< Object, CreateSend >::OperationStateT< Rec >::Type::Rec1
 
struct  dius::linux::RunSender< Object, CreateSend >::OperationStateT< Rec >::Type::Rec2
 

Namespaces

namespace  dius
 
namespace  dius::linux
 

Functions

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