MySQL 9.2.0
Source Code Documentation
mysql_harness::DestinationSocket Class Reference

#include <destination_socket.h>

Public Types

using TcpType = net::ip::tcp::socket
 
using LocalType = local::stream_protocol::socket
 

Public Member Functions

 DestinationSocket (TcpType sock)
 
 DestinationSocket (LocalType sock)
 
bool is_tcp () const
 
bool is_local () const
 
TcpTypeas_tcp ()
 
const TcpTypeas_tcp () const
 
LocalTypeas_local ()
 
const LocalTypeas_local () const
 
stdx::expected< void, std::error_code > open (const mysql_harness::DestinationEndpoint &ep, int flags=0)
 
bool is_open () const
 
stdx::expected< void, std::error_code > native_non_blocking (bool val)
 
net::impl::socket::native_handle_type native_handle () const
 
stdx::expected< void, std::error_code > connect (const mysql_harness::DestinationEndpoint &ep)
 
template<typename SettableSocketOption >
stdx::expected< void, std::error_code > set_option (const SettableSocketOption &option)
 
template<typename GettableSocketOption >
stdx::expected< void, std::error_code > get_option (GettableSocketOption &option) const
 
net::io_context::executor_type get_executor ()
 
net::io_contextio_context ()
 
stdx::expected< void, std::error_code > cancel ()
 
stdx::expected< void, std::error_code > close ()
 
template<class CompletionToken >
void async_wait (net::socket_base::wait_type wt, CompletionToken &&token)
 
template<class DynamicBuffer , class CompletionToken >
requires (net::is_dynamic_buffer_v<DynamicBuffer>)
void async_send (DynamicBuffer &&dyn_buf, CompletionToken &&token)
 
template<class DynamicBuffer , class CompletionToken >
requires (net::is_dynamic_buffer_v<DynamicBuffer>)
void async_recv (DynamicBuffer &&dyn_buf, CompletionToken &&token)
 

Private Attributes

std::variant< TcpType, LocalTypesock_
 

Member Typedef Documentation

◆ LocalType

◆ TcpType

Constructor & Destructor Documentation

◆ DestinationSocket() [1/2]

mysql_harness::DestinationSocket::DestinationSocket ( TcpType  sock)
inline

◆ DestinationSocket() [2/2]

mysql_harness::DestinationSocket::DestinationSocket ( LocalType  sock)
inline

Member Function Documentation

◆ as_local() [1/2]

LocalType & mysql_harness::DestinationSocket::as_local ( )
inline

◆ as_local() [2/2]

const LocalType & mysql_harness::DestinationSocket::as_local ( ) const
inline

◆ as_tcp() [1/2]

TcpType & mysql_harness::DestinationSocket::as_tcp ( )
inline

◆ as_tcp() [2/2]

const TcpType & mysql_harness::DestinationSocket::as_tcp ( ) const
inline

◆ async_recv()

template<class DynamicBuffer , class CompletionToken >
requires (net::is_dynamic_buffer_v<DynamicBuffer>)
void mysql_harness::DestinationSocket::async_recv ( DynamicBuffer &&  dyn_buf,
CompletionToken &&  token 
)
inline

◆ async_send()

template<class DynamicBuffer , class CompletionToken >
requires (net::is_dynamic_buffer_v<DynamicBuffer>)
void mysql_harness::DestinationSocket::async_send ( DynamicBuffer &&  dyn_buf,
CompletionToken &&  token 
)
inline

◆ async_wait()

template<class CompletionToken >
void mysql_harness::DestinationSocket::async_wait ( net::socket_base::wait_type  wt,
CompletionToken &&  token 
)
inline

◆ cancel()

stdx::expected< void, std::error_code > mysql_harness::DestinationSocket::cancel ( )
inline

◆ close()

stdx::expected< void, std::error_code > mysql_harness::DestinationSocket::close ( )
inline

◆ connect()

stdx::expected< void, std::error_code > mysql_harness::DestinationSocket::connect ( const mysql_harness::DestinationEndpoint ep)

◆ get_executor()

net::io_context::executor_type mysql_harness::DestinationSocket::get_executor ( )
inline

◆ get_option()

template<typename GettableSocketOption >
stdx::expected< void, std::error_code > mysql_harness::DestinationSocket::get_option ( GettableSocketOption &  option) const
inline

◆ io_context()

net::io_context & mysql_harness::DestinationSocket::io_context ( )
inline

◆ is_local()

bool mysql_harness::DestinationSocket::is_local ( ) const
inline

◆ is_open()

bool mysql_harness::DestinationSocket::is_open ( ) const
inline

◆ is_tcp()

bool mysql_harness::DestinationSocket::is_tcp ( ) const
inline

◆ native_handle()

net::impl::socket::native_handle_type mysql_harness::DestinationSocket::native_handle ( ) const
inline

◆ native_non_blocking()

stdx::expected< void, std::error_code > mysql_harness::DestinationSocket::native_non_blocking ( bool  val)
inline

◆ open()

stdx::expected< void, std::error_code > mysql_harness::DestinationSocket::open ( const mysql_harness::DestinationEndpoint ep,
int  flags = 0 
)

◆ set_option()

template<typename SettableSocketOption >
stdx::expected< void, std::error_code > mysql_harness::DestinationSocket::set_option ( const SettableSocketOption &  option)
inline

Member Data Documentation

◆ sock_

std::variant<TcpType, LocalType> mysql_harness::DestinationSocket::sock_
private

The documentation for this class was generated from the following files: