diff --git a/Subtrees/beast/modules/beast_asio/basics/beast_CompletionCall.h b/Subtrees/beast/modules/beast_asio/basics/beast_CompletionCall.h index 4447949053..b2b89fc662 100644 --- a/Subtrees/beast/modules/beast_asio/basics/beast_CompletionCall.h +++ b/Subtrees/beast/modules/beast_asio/basics/beast_CompletionCall.h @@ -30,6 +30,10 @@ class CompletionCall public: typedef void result_type; + CompletionCall () noexcept + { + } + // Construction from Handler with zero arguments // template @@ -63,6 +67,11 @@ public: { } + bool isNull () const noexcept + { + return m_call == nullptr; + } + void operator() () { (*m_call) (); diff --git a/Subtrees/beast/modules/beast_asio/basics/beast_ErrorCall.h b/Subtrees/beast/modules/beast_asio/basics/beast_ErrorCall.h index 1f9a5d3cbc..7cca0fc17f 100644 --- a/Subtrees/beast/modules/beast_asio/basics/beast_ErrorCall.h +++ b/Subtrees/beast/modules/beast_asio/basics/beast_ErrorCall.h @@ -39,6 +39,10 @@ class ErrorCall public: typedef void result_type; + ErrorCall () noexcept + { + } + template ErrorCall (BOOST_ASIO_MOVE_ARG(Handler) handler) : m_call (new CallType (BOOST_ASIO_MOVE_CAST(Handler)(handler))) @@ -50,6 +54,11 @@ public: { } + bool isNull () const noexcept + { + return m_call == nullptr; + } + void operator() (boost::system::error_code const& ec) { (*m_call) (ec); diff --git a/Subtrees/beast/modules/beast_asio/basics/beast_TransferCall.h b/Subtrees/beast/modules/beast_asio/basics/beast_TransferCall.h index 6ec9a1e2b7..4689e70c66 100644 --- a/Subtrees/beast/modules/beast_asio/basics/beast_TransferCall.h +++ b/Subtrees/beast/modules/beast_asio/basics/beast_TransferCall.h @@ -36,6 +36,10 @@ class TransferCall public: typedef void result_type; + TransferCall () noexcept + { + } + template TransferCall (BOOST_ASIO_MOVE_ARG(Handler) handler) : m_call (new CallType (BOOST_ASIO_MOVE_CAST(Handler)(handler))) @@ -47,6 +51,11 @@ public: { } + bool isNull () const noexcept + { + return m_call == nullptr; + } + void operator() (boost::system::error_code const& ec, std::size_t bytes_transferred) { (*m_call) (ec, bytes_transferred);