userver: engine::io Namespace Reference
Loading...
Searching...
No Matches
engine::io Namespace Reference

Detailed Description

Low-level asynchronous I/O interfaces.

Classes

class  AddrException
 Socket address-related exceptions. More...
 
class  BufferedReader
 Wrapper for buffered input. More...
 
class  FdPoller
 Low-level poller that can wait for read, write, and read/write operations on a file descriptor. It does not provide read/write operations. More...
 
class  IoCancelled
 
struct  IoData
 IoData for vector send. More...
 
class  IoException
 Generic I/O error. More...
 
class  IoInterrupted
 I/O interruption. More...
 
class  IoSystemError
 Operating system I/O error. More...
 
class  IoTimeout
 I/O timeout. More...
 
class  Pipe
 Unidirectional pipe representation. More...
 
class  PipeReader
 Reading end of an unidirectional pipe. More...
 
class  PipeWriter
 Writing end of an unidirectional pipe. More...
 
class  ReadableBase
 
class  RwBase
 
class  Sockaddr
 Native socket address wrapper. More...
 
class  Socket
 Socket representation. More...
 
class  TerminatorNotFoundException
 
class  TlsException
 TLS I/O error. More...
 
class  TlsWrapper
 
class  WritableBase
 

Typedefs

using ReadableBasePtr = std::shared_ptr<ReadableBase>
 

Enumerations

enum class  AddrDomain {
  kUnspecified = AF_UNSPEC ,
  kInet = AF_INET ,
  kInet6 = AF_INET6 ,
  kUnix = AF_UNIX
}
 Communication domain. More...
 
enum class  SocketType {
  kStream = SOCK_STREAM ,
  kDgram = SOCK_DGRAM ,
  kTcp = kStream ,
  kUdp = kDgram
}
 Socket type. More...
 

Functions

logging::LogHelperoperator<< (logging::LogHelper &, const Sockaddr &)
 Outputs human-readable address representation, including port number.
 

Variables

constexpr int kInvalidFd = -1
 File descriptor of an invalid pipe end.
 

Typedef Documentation

◆ ReadableBasePtr

using engine::io::ReadableBasePtr = std::shared_ptr<ReadableBase>

Definition at line 107 of file common.hpp.

Enumeration Type Documentation

◆ AddrDomain

enum class engine::io::AddrDomain
strong

Communication domain.

Enumerator
kUnspecified 

Unspecified.

kInet 

IPv4.

kInet6 

IPv6.

kUnix 

Unix socket.

Definition at line 30 of file sockaddr.hpp.

◆ SocketType

enum class engine::io::SocketType
strong

Socket type.

Enumerator
kStream 

Stream socket (e.g. TCP)

kDgram 

Datagram socket (e.g. UDP)

Definition at line 23 of file socket.hpp.

Variable Documentation

◆ kInvalidFd

constexpr int engine::io::kInvalidFd = -1
inlineconstexpr

File descriptor of an invalid pipe end.

Definition at line 20 of file common.hpp.