irccd
3.0.3
|
Abstract connection interface. More...
#include <connector.hpp>
Public Types | |
using | handler = std::function< void(std::error_code, std::shared_ptr< stream >)> |
Connect completion handler. More... | |
Public Member Functions | |
connector ()=default | |
virtual | ~connector ()=default |
virtual void | connect (handler handler)=0 |
Abstract connection interface.
This class is used to connect to a stream end point (usually sockets) in an asynchronous manner.
Derived class must implement non-blocking connect function.
using irccd::connector::handler = std::function<void (std::error_code, std::shared_ptr<stream>)> |
Connect completion handler.
|
default |
Default constructor.
|
virtualdefault |
Virtual destructor defaulted.
|
pure virtual |
Start asynchronous connect.
Once the client is connected, the original acceptor must be kept until it is destroyed.
handler | the handler |
Implemented in irccd::tls_connector< SocketConnector >, irccd::local_connector, and irccd::ip_connector.