include/boost/corosio/native/detail/reactor/reactor_acceptor.hpp

95.3% Lines (201/211) 95.2% List of functions (80/84) 44.7% Branches (152/340)
reactor_acceptor.hpp
f(x) Functions (84)
Function Calls Lines Branches Blocks
boost::corosio::detail::reactor_acceptor<boost::corosio::detail::kqueue_local_stream_acceptor, boost::corosio::detail::kqueue_local_stream_acceptor_service, boost::corosio::detail::reactor_stream_base_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_local_stream_socket, boost::corosio::detail::kqueue_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_stream_accept_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_local_stream_socket, boost::corosio::detail::kqueue_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_stream_wait_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_local_stream_socket, boost::corosio::detail::kqueue_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_descriptor_state, boost::corosio::local_stream_acceptor::implementation, boost::corosio::local_endpoint>::reactor_acceptor(boost::corosio::detail::kqueue_local_stream_acceptor_service&) :68 22x 100.0% 100.0% boost::corosio::detail::reactor_acceptor<boost::corosio::detail::kqueue_tcp_acceptor, boost::corosio::detail::kqueue_tcp_acceptor_service, boost::corosio::detail::reactor_stream_base_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_tcp_socket, boost::corosio::detail::kqueue_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_stream_accept_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_tcp_socket, boost::corosio::detail::kqueue_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_stream_wait_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_tcp_socket, boost::corosio::detail::kqueue_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_descriptor_state, boost::corosio::tcp_acceptor::implementation, boost::corosio::endpoint>::reactor_acceptor(boost::corosio::detail::kqueue_tcp_acceptor_service&) :68 996x 100.0% 100.0% boost::corosio::detail::reactor_acceptor<boost::corosio::detail::select_local_stream_acceptor, boost::corosio::detail::select_local_stream_acceptor_service, boost::corosio::detail::reactor_stream_base_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_local_stream_socket, boost::corosio::detail::select_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_stream_accept_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_local_stream_socket, boost::corosio::detail::select_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_stream_wait_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_local_stream_socket, boost::corosio::detail::select_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_descriptor_state, boost::corosio::local_stream_acceptor::implementation, boost::corosio::local_endpoint>::reactor_acceptor(boost::corosio::detail::select_local_stream_acceptor_service&) :68 22x 100.0% 100.0% boost::corosio::detail::reactor_acceptor<boost::corosio::detail::select_tcp_acceptor, boost::corosio::detail::select_tcp_acceptor_service, boost::corosio::detail::reactor_stream_base_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_tcp_socket, boost::corosio::detail::select_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_stream_accept_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_tcp_socket, boost::corosio::detail::select_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_stream_wait_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_tcp_socket, boost::corosio::detail::select_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_descriptor_state, boost::corosio::tcp_acceptor::implementation, boost::corosio::endpoint>::reactor_acceptor(boost::corosio::detail::select_tcp_acceptor_service&) :68 110x 100.0% 100.0% boost::corosio::detail::reactor_acceptor<boost::corosio::detail::kqueue_local_stream_acceptor, boost::corosio::detail::kqueue_local_stream_acceptor_service, boost::corosio::detail::reactor_stream_base_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_local_stream_socket, boost::corosio::detail::kqueue_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_stream_accept_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_local_stream_socket, boost::corosio::detail::kqueue_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_stream_wait_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_local_stream_socket, boost::corosio::detail::kqueue_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_descriptor_state, boost::corosio::local_stream_acceptor::implementation, boost::corosio::local_endpoint>::~reactor_acceptor() :91 22x 100.0% 100.0% boost::corosio::detail::reactor_acceptor<boost::corosio::detail::kqueue_tcp_acceptor, boost::corosio::detail::kqueue_tcp_acceptor_service, boost::corosio::detail::reactor_stream_base_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_tcp_socket, boost::corosio::detail::kqueue_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_stream_accept_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_tcp_socket, boost::corosio::detail::kqueue_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_stream_wait_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_tcp_socket, boost::corosio::detail::kqueue_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_descriptor_state, boost::corosio::tcp_acceptor::implementation, boost::corosio::endpoint>::~reactor_acceptor() :91 996x 100.0% 100.0% boost::corosio::detail::reactor_acceptor<boost::corosio::detail::select_local_stream_acceptor, boost::corosio::detail::select_local_stream_acceptor_service, boost::corosio::detail::reactor_stream_base_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_local_stream_socket, boost::corosio::detail::select_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_stream_accept_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_local_stream_socket, boost::corosio::detail::select_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_stream_wait_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_local_stream_socket, boost::corosio::detail::select_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_descriptor_state, boost::corosio::local_stream_acceptor::implementation, boost::corosio::local_endpoint>::~reactor_acceptor() :91 22x 100.0% 100.0% boost::corosio::detail::reactor_acceptor<boost::corosio::detail::select_tcp_acceptor, boost::corosio::detail::select_tcp_acceptor_service, boost::corosio::detail::reactor_stream_base_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_tcp_socket, boost::corosio::detail::select_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_stream_accept_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_tcp_socket, boost::corosio::detail::select_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_stream_wait_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_tcp_socket, boost::corosio::detail::select_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_descriptor_state, boost::corosio::tcp_acceptor::implementation, boost::corosio::endpoint>::~reactor_acceptor() :91 110x 100.0% 100.0% boost::corosio::detail::reactor_acceptor<boost::corosio::detail::kqueue_local_stream_acceptor, boost::corosio::detail::kqueue_local_stream_acceptor_service, boost::corosio::detail::reactor_stream_base_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_local_stream_socket, boost::corosio::detail::kqueue_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_stream_accept_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_local_stream_socket, boost::corosio::detail::kqueue_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_stream_wait_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_local_stream_socket, boost::corosio::detail::kqueue_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_descriptor_state, boost::corosio::local_stream_acceptor::implementation, boost::corosio::local_endpoint>::local_endpoint() const :100 9x 100.0% 100.0% boost::corosio::detail::reactor_acceptor<boost::corosio::detail::kqueue_tcp_acceptor, boost::corosio::detail::kqueue_tcp_acceptor_service, boost::corosio::detail::reactor_stream_base_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_tcp_socket, boost::corosio::detail::kqueue_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_stream_accept_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_tcp_socket, boost::corosio::detail::kqueue_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_stream_wait_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_tcp_socket, boost::corosio::detail::kqueue_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_descriptor_state, boost::corosio::tcp_acceptor::implementation, boost::corosio::endpoint>::local_endpoint() const :100 5281x 100.0% 100.0% boost::corosio::detail::reactor_acceptor<boost::corosio::detail::select_local_stream_acceptor, boost::corosio::detail::select_local_stream_acceptor_service, boost::corosio::detail::reactor_stream_base_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_local_stream_socket, boost::corosio::detail::select_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_stream_accept_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_local_stream_socket, boost::corosio::detail::select_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_stream_wait_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_local_stream_socket, boost::corosio::detail::select_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_descriptor_state, boost::corosio::local_stream_acceptor::implementation, boost::corosio::local_endpoint>::local_endpoint() const :100 9x 100.0% 100.0% boost::corosio::detail::reactor_acceptor<boost::corosio::detail::select_tcp_acceptor, boost::corosio::detail::select_tcp_acceptor_service, boost::corosio::detail::reactor_stream_base_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_tcp_socket, boost::corosio::detail::select_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_stream_accept_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_tcp_socket, boost::corosio::detail::select_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_stream_wait_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_tcp_socket, boost::corosio::detail::select_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_descriptor_state, boost::corosio::tcp_acceptor::implementation, boost::corosio::endpoint>::local_endpoint() const :100 1703x 100.0% 100.0% boost::corosio::detail::reactor_acceptor<boost::corosio::detail::kqueue_local_stream_acceptor, boost::corosio::detail::kqueue_local_stream_acceptor_service, boost::corosio::detail::reactor_stream_base_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_local_stream_socket, boost::corosio::detail::kqueue_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_stream_accept_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_local_stream_socket, boost::corosio::detail::kqueue_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_stream_wait_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_local_stream_socket, boost::corosio::detail::kqueue_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_descriptor_state, boost::corosio::local_stream_acceptor::implementation, boost::corosio::local_endpoint>::is_open() const :106 91x 100.0% 100.0% boost::corosio::detail::reactor_acceptor<boost::corosio::detail::kqueue_tcp_acceptor, boost::corosio::detail::kqueue_tcp_acceptor_service, boost::corosio::detail::reactor_stream_base_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_tcp_socket, boost::corosio::detail::kqueue_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_stream_accept_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_tcp_socket, boost::corosio::detail::kqueue_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_stream_wait_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_tcp_socket, boost::corosio::detail::kqueue_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_descriptor_state, boost::corosio::tcp_acceptor::implementation, boost::corosio::endpoint>::is_open() const :106 11234x 100.0% 100.0% boost::corosio::detail::reactor_acceptor<boost::corosio::detail::select_local_stream_acceptor, boost::corosio::detail::select_local_stream_acceptor_service, boost::corosio::detail::reactor_stream_base_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_local_stream_socket, boost::corosio::detail::select_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_stream_accept_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_local_stream_socket, boost::corosio::detail::select_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_stream_wait_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_local_stream_socket, boost::corosio::detail::select_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_descriptor_state, boost::corosio::local_stream_acceptor::implementation, boost::corosio::local_endpoint>::is_open() const :106 91x 100.0% 100.0% boost::corosio::detail::reactor_acceptor<boost::corosio::detail::select_tcp_acceptor, boost::corosio::detail::select_tcp_acceptor_service, boost::corosio::detail::reactor_stream_base_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_tcp_socket, boost::corosio::detail::select_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_stream_accept_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_tcp_socket, boost::corosio::detail::select_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_stream_wait_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_tcp_socket, boost::corosio::detail::select_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_descriptor_state, boost::corosio::tcp_acceptor::implementation, boost::corosio::endpoint>::is_open() const :106 2344x 100.0% 100.0% boost::corosio::detail::reactor_acceptor<boost::corosio::detail::kqueue_local_stream_acceptor, boost::corosio::detail::kqueue_local_stream_acceptor_service, boost::corosio::detail::reactor_stream_base_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_local_stream_socket, boost::corosio::detail::kqueue_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_stream_accept_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_local_stream_socket, boost::corosio::detail::kqueue_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_stream_wait_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_local_stream_socket, boost::corosio::detail::kqueue_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_descriptor_state, boost::corosio::local_stream_acceptor::implementation, boost::corosio::local_endpoint>::set_option(int, int, void const*, unsigned long) :112 0 83.3% 16.7% 0.0% boost::corosio::detail::reactor_acceptor<boost::corosio::detail::kqueue_tcp_acceptor, boost::corosio::detail::kqueue_tcp_acceptor_service, boost::corosio::detail::reactor_stream_base_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_tcp_socket, boost::corosio::detail::kqueue_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_stream_accept_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_tcp_socket, boost::corosio::detail::kqueue_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_stream_wait_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_tcp_socket, boost::corosio::detail::kqueue_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_descriptor_state, boost::corosio::tcp_acceptor::implementation, boost::corosio::endpoint>::set_option(int, int, void const*, unsigned long) :112 990x 100.0% 57.0% boost::corosio::detail::reactor_acceptor<boost::corosio::detail::select_local_stream_acceptor, boost::corosio::detail::select_local_stream_acceptor_service, boost::corosio::detail::reactor_stream_base_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_local_stream_socket, boost::corosio::detail::select_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_stream_accept_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_local_stream_socket, boost::corosio::detail::select_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_stream_wait_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_local_stream_socket, boost::corosio::detail::select_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_descriptor_state, boost::corosio::local_stream_acceptor::implementation, boost::corosio::local_endpoint>::set_option(int, int, void const*, unsigned long) :112 0 100.0% 0.0% boost::corosio::detail::reactor_acceptor<boost::corosio::detail::select_tcp_acceptor, boost::corosio::detail::select_tcp_acceptor_service, boost::corosio::detail::reactor_stream_base_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_tcp_socket, boost::corosio::detail::select_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_stream_accept_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_tcp_socket, boost::corosio::detail::select_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_stream_wait_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_tcp_socket, boost::corosio::detail::select_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_descriptor_state, boost::corosio::tcp_acceptor::implementation, boost::corosio::endpoint>::set_option(int, int, void const*, unsigned long) :112 104x 100.0% 57.0% boost::corosio::detail::reactor_acceptor<boost::corosio::detail::kqueue_local_stream_acceptor, boost::corosio::detail::kqueue_local_stream_acceptor_service, boost::corosio::detail::reactor_stream_base_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_local_stream_socket, boost::corosio::detail::kqueue_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_stream_accept_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_local_stream_socket, boost::corosio::detail::kqueue_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_stream_wait_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_local_stream_socket, boost::corosio::detail::kqueue_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_descriptor_state, boost::corosio::local_stream_acceptor::implementation, boost::corosio::local_endpoint>::get_option(int, int, void*, unsigned long*) const :126 0 85.7% 16.7% 0.0% boost::corosio::detail::reactor_acceptor<boost::corosio::detail::kqueue_tcp_acceptor, boost::corosio::detail::kqueue_tcp_acceptor_service, boost::corosio::detail::reactor_stream_base_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_tcp_socket, boost::corosio::detail::kqueue_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_stream_accept_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_tcp_socket, boost::corosio::detail::kqueue_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_stream_wait_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_tcp_socket, boost::corosio::detail::kqueue_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_descriptor_state, boost::corosio::tcp_acceptor::implementation, boost::corosio::endpoint>::get_option(int, int, void*, unsigned long*) const :126 2x 100.0% 57.0% boost::corosio::detail::reactor_acceptor<boost::corosio::detail::select_local_stream_acceptor, boost::corosio::detail::select_local_stream_acceptor_service, boost::corosio::detail::reactor_stream_base_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_local_stream_socket, boost::corosio::detail::select_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_stream_accept_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_local_stream_socket, boost::corosio::detail::select_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_stream_wait_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_local_stream_socket, boost::corosio::detail::select_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_descriptor_state, boost::corosio::local_stream_acceptor::implementation, boost::corosio::local_endpoint>::get_option(int, int, void*, unsigned long*) const :126 0 100.0% 0.0% boost::corosio::detail::reactor_acceptor<boost::corosio::detail::select_tcp_acceptor, boost::corosio::detail::select_tcp_acceptor_service, boost::corosio::detail::reactor_stream_base_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_tcp_socket, boost::corosio::detail::select_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_stream_accept_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_tcp_socket, boost::corosio::detail::select_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_stream_wait_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_tcp_socket, boost::corosio::detail::select_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_descriptor_state, boost::corosio::tcp_acceptor::implementation, boost::corosio::endpoint>::get_option(int, int, void*, unsigned long*) const :126 2x 100.0% 57.0% boost::corosio::detail::reactor_acceptor<boost::corosio::detail::kqueue_local_stream_acceptor, boost::corosio::detail::kqueue_local_stream_acceptor_service, boost::corosio::detail::reactor_stream_base_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_local_stream_socket, boost::corosio::detail::kqueue_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_stream_accept_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_local_stream_socket, boost::corosio::detail::kqueue_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_stream_wait_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_local_stream_socket, boost::corosio::detail::kqueue_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_descriptor_state, boost::corosio::local_stream_acceptor::implementation, boost::corosio::local_endpoint>::set_local_endpoint(boost::corosio::local_endpoint) :137 15x 100.0% 100.0% boost::corosio::detail::reactor_acceptor<boost::corosio::detail::kqueue_tcp_acceptor, boost::corosio::detail::kqueue_tcp_acceptor_service, boost::corosio::detail::reactor_stream_base_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_tcp_socket, boost::corosio::detail::kqueue_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_stream_accept_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_tcp_socket, boost::corosio::detail::kqueue_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_stream_wait_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_tcp_socket, boost::corosio::detail::kqueue_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_descriptor_state, boost::corosio::tcp_acceptor::implementation, boost::corosio::endpoint>::set_local_endpoint(boost::corosio::endpoint) :137 985x 100.0% 100.0% boost::corosio::detail::reactor_acceptor<boost::corosio::detail::select_local_stream_acceptor, boost::corosio::detail::select_local_stream_acceptor_service, boost::corosio::detail::reactor_stream_base_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_local_stream_socket, boost::corosio::detail::select_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_stream_accept_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_local_stream_socket, boost::corosio::detail::select_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_stream_wait_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_local_stream_socket, boost::corosio::detail::select_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_descriptor_state, boost::corosio::local_stream_acceptor::implementation, boost::corosio::local_endpoint>::set_local_endpoint(boost::corosio::local_endpoint) :137 15x 100.0% 100.0% boost::corosio::detail::reactor_acceptor<boost::corosio::detail::select_tcp_acceptor, boost::corosio::detail::select_tcp_acceptor_service, boost::corosio::detail::reactor_stream_base_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_tcp_socket, boost::corosio::detail::select_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_stream_accept_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_tcp_socket, boost::corosio::detail::select_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_stream_wait_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_tcp_socket, boost::corosio::detail::select_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_descriptor_state, boost::corosio::tcp_acceptor::implementation, boost::corosio::endpoint>::set_local_endpoint(boost::corosio::endpoint) :137 100x 100.0% 100.0% boost::corosio::detail::reactor_acceptor<boost::corosio::detail::kqueue_local_stream_acceptor, boost::corosio::detail::kqueue_local_stream_acceptor_service, boost::corosio::detail::reactor_stream_base_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_local_stream_socket, boost::corosio::detail::kqueue_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_stream_accept_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_local_stream_socket, boost::corosio::detail::kqueue_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_stream_wait_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_local_stream_socket, boost::corosio::detail::kqueue_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_descriptor_state, boost::corosio::local_stream_acceptor::implementation, boost::corosio::local_endpoint>::init_acceptor_fd(int) :143 16x 100.0% 50.0% 66.0% boost::corosio::detail::reactor_acceptor<boost::corosio::detail::kqueue_tcp_acceptor, boost::corosio::detail::kqueue_tcp_acceptor_service, boost::corosio::detail::reactor_stream_base_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_tcp_socket, boost::corosio::detail::kqueue_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_stream_accept_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_tcp_socket, boost::corosio::detail::kqueue_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_stream_wait_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_tcp_socket, boost::corosio::detail::kqueue_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_descriptor_state, boost::corosio::tcp_acceptor::implementation, boost::corosio::endpoint>::init_acceptor_fd(int) :143 991x 100.0% 66.0% boost::corosio::detail::reactor_acceptor<boost::corosio::detail::select_local_stream_acceptor, boost::corosio::detail::select_local_stream_acceptor_service, boost::corosio::detail::reactor_stream_base_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_local_stream_socket, boost::corosio::detail::select_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_stream_accept_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_local_stream_socket, boost::corosio::detail::select_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_stream_wait_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_local_stream_socket, boost::corosio::detail::select_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_descriptor_state, boost::corosio::local_stream_acceptor::implementation, boost::corosio::local_endpoint>::init_acceptor_fd(int) :143 16x 100.0% 66.0% boost::corosio::detail::reactor_acceptor<boost::corosio::detail::select_tcp_acceptor, boost::corosio::detail::select_tcp_acceptor_service, boost::corosio::detail::reactor_stream_base_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_tcp_socket, boost::corosio::detail::select_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_stream_accept_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_tcp_socket, boost::corosio::detail::select_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_stream_wait_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_tcp_socket, boost::corosio::detail::select_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_descriptor_state, boost::corosio::tcp_acceptor::implementation, boost::corosio::endpoint>::init_acceptor_fd(int) :143 104x 100.0% 66.0% boost::corosio::detail::reactor_acceptor<boost::corosio::detail::kqueue_local_stream_acceptor, boost::corosio::detail::kqueue_local_stream_acceptor_service, boost::corosio::detail::reactor_stream_base_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_local_stream_socket, boost::corosio::detail::kqueue_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_stream_accept_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_local_stream_socket, boost::corosio::detail::kqueue_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_stream_wait_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_local_stream_socket, boost::corosio::detail::kqueue_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_descriptor_state, boost::corosio::local_stream_acceptor::implementation, boost::corosio::local_endpoint>::service() :157 8x 100.0% 100.0% boost::corosio::detail::reactor_acceptor<boost::corosio::detail::kqueue_tcp_acceptor, boost::corosio::detail::kqueue_tcp_acceptor_service, boost::corosio::detail::reactor_stream_base_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_tcp_socket, boost::corosio::detail::kqueue_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_stream_accept_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_tcp_socket, boost::corosio::detail::kqueue_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_stream_wait_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_tcp_socket, boost::corosio::detail::kqueue_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_descriptor_state, boost::corosio::tcp_acceptor::implementation, boost::corosio::endpoint>::service() :157 4308x 100.0% 100.0% boost::corosio::detail::reactor_acceptor<boost::corosio::detail::select_local_stream_acceptor, boost::corosio::detail::select_local_stream_acceptor_service, boost::corosio::detail::reactor_stream_base_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_local_stream_socket, boost::corosio::detail::select_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_stream_accept_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_local_stream_socket, boost::corosio::detail::select_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_stream_wait_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_local_stream_socket, boost::corosio::detail::select_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_descriptor_state, boost::corosio::local_stream_acceptor::implementation, boost::corosio::local_endpoint>::service() :157 8x 100.0% 100.0% boost::corosio::detail::reactor_acceptor<boost::corosio::detail::select_tcp_acceptor, boost::corosio::detail::select_tcp_acceptor_service, boost::corosio::detail::reactor_stream_base_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_tcp_socket, boost::corosio::detail::select_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_stream_accept_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_tcp_socket, boost::corosio::detail::select_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_stream_wait_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_tcp_socket, boost::corosio::detail::select_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_descriptor_state, boost::corosio::tcp_acceptor::implementation, boost::corosio::endpoint>::service() :157 1608x 100.0% 100.0% boost::corosio::detail::reactor_acceptor<boost::corosio::detail::kqueue_local_stream_acceptor, boost::corosio::detail::kqueue_local_stream_acceptor_service, boost::corosio::detail::reactor_stream_base_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_local_stream_socket, boost::corosio::detail::kqueue_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_stream_accept_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_local_stream_socket, boost::corosio::detail::kqueue_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_stream_wait_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_local_stream_socket, boost::corosio::detail::kqueue_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_descriptor_state, boost::corosio::local_stream_acceptor::implementation, boost::corosio::local_endpoint>::cancel() :162 1x 100.0% 100.0% boost::corosio::detail::reactor_acceptor<boost::corosio::detail::kqueue_tcp_acceptor, boost::corosio::detail::kqueue_tcp_acceptor_service, boost::corosio::detail::reactor_stream_base_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_tcp_socket, boost::corosio::detail::kqueue_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_stream_accept_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_tcp_socket, boost::corosio::detail::kqueue_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_stream_wait_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_tcp_socket, boost::corosio::detail::kqueue_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_descriptor_state, boost::corosio::tcp_acceptor::implementation, boost::corosio::endpoint>::cancel() :162 4x 100.0% 100.0% boost::corosio::detail::reactor_acceptor<boost::corosio::detail::select_local_stream_acceptor, boost::corosio::detail::select_local_stream_acceptor_service, boost::corosio::detail::reactor_stream_base_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_local_stream_socket, boost::corosio::detail::select_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_stream_accept_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_local_stream_socket, boost::corosio::detail::select_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_stream_wait_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_local_stream_socket, boost::corosio::detail::select_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_descriptor_state, boost::corosio::local_stream_acceptor::implementation, boost::corosio::local_endpoint>::cancel() :162 1x 100.0% 100.0% boost::corosio::detail::reactor_acceptor<boost::corosio::detail::select_tcp_acceptor, boost::corosio::detail::select_tcp_acceptor_service, boost::corosio::detail::reactor_stream_base_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_tcp_socket, boost::corosio::detail::select_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_stream_accept_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_tcp_socket, boost::corosio::detail::select_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_stream_wait_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_tcp_socket, boost::corosio::detail::select_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_descriptor_state, boost::corosio::tcp_acceptor::implementation, boost::corosio::endpoint>::cancel() :162 4x 100.0% 100.0% boost::corosio::detail::reactor_acceptor<boost::corosio::detail::kqueue_local_stream_acceptor, boost::corosio::detail::kqueue_local_stream_acceptor_service, boost::corosio::detail::reactor_stream_base_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_local_stream_socket, boost::corosio::detail::kqueue_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_stream_accept_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_local_stream_socket, boost::corosio::detail::kqueue_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_stream_wait_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_local_stream_socket, boost::corosio::detail::kqueue_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_descriptor_state, boost::corosio::local_stream_acceptor::implementation, boost::corosio::local_endpoint>::close_socket() :165 75x 100.0% 100.0% boost::corosio::detail::reactor_acceptor<boost::corosio::detail::kqueue_tcp_acceptor, boost::corosio::detail::kqueue_tcp_acceptor_service, boost::corosio::detail::reactor_stream_base_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_tcp_socket, boost::corosio::detail::kqueue_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_stream_accept_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_tcp_socket, boost::corosio::detail::kqueue_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_stream_wait_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_tcp_socket, boost::corosio::detail::kqueue_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_descriptor_state, boost::corosio::tcp_acceptor::implementation, boost::corosio::endpoint>::close_socket() :165 3974x 100.0% 100.0% boost::corosio::detail::reactor_acceptor<boost::corosio::detail::select_local_stream_acceptor, boost::corosio::detail::select_local_stream_acceptor_service, boost::corosio::detail::reactor_stream_base_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_local_stream_socket, boost::corosio::detail::select_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_stream_accept_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_local_stream_socket, boost::corosio::detail::select_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_stream_wait_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_local_stream_socket, boost::corosio::detail::select_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_descriptor_state, boost::corosio::local_stream_acceptor::implementation, boost::corosio::local_endpoint>::close_socket() :165 75x 100.0% 100.0% boost::corosio::detail::reactor_acceptor<boost::corosio::detail::select_tcp_acceptor, boost::corosio::detail::select_tcp_acceptor_service, boost::corosio::detail::reactor_stream_base_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_tcp_socket, boost::corosio::detail::select_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_stream_accept_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_tcp_socket, boost::corosio::detail::select_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_stream_wait_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_tcp_socket, boost::corosio::detail::select_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_descriptor_state, boost::corosio::tcp_acceptor::implementation, boost::corosio::endpoint>::close_socket() :165 428x 100.0% 100.0% boost::corosio::detail::reactor_acceptor<boost::corosio::detail::kqueue_local_stream_acceptor, boost::corosio::detail::kqueue_local_stream_acceptor_service, boost::corosio::detail::reactor_stream_base_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_local_stream_socket, boost::corosio::detail::kqueue_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_stream_accept_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_local_stream_socket, boost::corosio::detail::kqueue_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_stream_wait_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_local_stream_socket, boost::corosio::detail::kqueue_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_descriptor_state, boost::corosio::local_stream_acceptor::implementation, boost::corosio::local_endpoint>::wait(std::__1::coroutine_handle<void>, boost::capy::executor_ref, boost::corosio::wait_type, std::__1::stop_token, std::__1::error_code*) :167 1x 0.0% 100.0% boost::corosio::detail::reactor_acceptor<boost::corosio::detail::kqueue_tcp_acceptor, boost::corosio::detail::kqueue_tcp_acceptor_service, boost::corosio::detail::reactor_stream_base_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_tcp_socket, boost::corosio::detail::kqueue_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_stream_accept_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_tcp_socket, boost::corosio::detail::kqueue_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_stream_wait_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_tcp_socket, boost::corosio::detail::kqueue_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_descriptor_state, boost::corosio::tcp_acceptor::implementation, boost::corosio::endpoint>::wait(std::__1::coroutine_handle<void>, boost::capy::executor_ref, boost::corosio::wait_type, std::__1::stop_token, std::__1::error_code*) :167 5x 100.0% 100.0% boost::corosio::detail::reactor_acceptor<boost::corosio::detail::select_local_stream_acceptor, boost::corosio::detail::select_local_stream_acceptor_service, boost::corosio::detail::reactor_stream_base_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_local_stream_socket, boost::corosio::detail::select_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_stream_accept_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_local_stream_socket, boost::corosio::detail::select_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_stream_wait_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_local_stream_socket, boost::corosio::detail::select_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_descriptor_state, boost::corosio::local_stream_acceptor::implementation, boost::corosio::local_endpoint>::wait(std::__1::coroutine_handle<void>, boost::capy::executor_ref, boost::corosio::wait_type, std::__1::stop_token, std::__1::error_code*) :167 1x 100.0% 100.0% boost::corosio::detail::reactor_acceptor<boost::corosio::detail::select_tcp_acceptor, boost::corosio::detail::select_tcp_acceptor_service, boost::corosio::detail::reactor_stream_base_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_tcp_socket, boost::corosio::detail::select_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_stream_accept_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_tcp_socket, boost::corosio::detail::select_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_stream_wait_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_tcp_socket, boost::corosio::detail::select_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_descriptor_state, boost::corosio::tcp_acceptor::implementation, boost::corosio::endpoint>::wait(std::__1::coroutine_handle<void>, boost::capy::executor_ref, boost::corosio::wait_type, std::__1::stop_token, std::__1::error_code*) :167 5x 100.0% 100.0% boost::corosio::detail::reactor_acceptor<boost::corosio::detail::kqueue_local_stream_acceptor, boost::corosio::detail::kqueue_local_stream_acceptor_service, boost::corosio::detail::reactor_stream_base_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_local_stream_socket, boost::corosio::detail::kqueue_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_stream_accept_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_local_stream_socket, boost::corosio::detail::kqueue_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_stream_wait_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_local_stream_socket, boost::corosio::detail::kqueue_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_descriptor_state, boost::corosio::local_stream_acceptor::implementation, boost::corosio::local_endpoint>::cancel_single_op(boost::corosio::detail::reactor_stream_base_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_local_stream_socket, boost::corosio::detail::kqueue_local_stream_acceptor, boost::corosio::local_endpoint>&) :246 4x 0.0% 0.0% 75.0% boost::corosio::detail::reactor_acceptor<boost::corosio::detail::kqueue_tcp_acceptor, boost::corosio::detail::kqueue_tcp_acceptor_service, boost::corosio::detail::reactor_stream_base_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_tcp_socket, boost::corosio::detail::kqueue_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_stream_accept_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_tcp_socket, boost::corosio::detail::kqueue_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_stream_wait_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_tcp_socket, boost::corosio::detail::kqueue_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_descriptor_state, boost::corosio::tcp_acceptor::implementation, boost::corosio::endpoint>::cancel_single_op(boost::corosio::detail::reactor_stream_base_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_tcp_socket, boost::corosio::detail::kqueue_tcp_acceptor, boost::corosio::endpoint>&) :246 28x 85.7% 50.0% 75.0% boost::corosio::detail::reactor_acceptor<boost::corosio::detail::select_local_stream_acceptor, boost::corosio::detail::select_local_stream_acceptor_service, boost::corosio::detail::reactor_stream_base_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_local_stream_socket, boost::corosio::detail::select_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_stream_accept_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_local_stream_socket, boost::corosio::detail::select_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_stream_wait_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_local_stream_socket, boost::corosio::detail::select_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_descriptor_state, boost::corosio::local_stream_acceptor::implementation, boost::corosio::local_endpoint>::cancel_single_op(boost::corosio::detail::reactor_stream_base_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_local_stream_socket, boost::corosio::detail::select_local_stream_acceptor, boost::corosio::local_endpoint>&) :246 4x 85.7% 50.0% 75.0% boost::corosio::detail::reactor_acceptor<boost::corosio::detail::select_tcp_acceptor, boost::corosio::detail::select_tcp_acceptor_service, boost::corosio::detail::reactor_stream_base_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_tcp_socket, boost::corosio::detail::select_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_stream_accept_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_tcp_socket, boost::corosio::detail::select_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_stream_wait_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_tcp_socket, boost::corosio::detail::select_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_descriptor_state, boost::corosio::tcp_acceptor::implementation, boost::corosio::endpoint>::cancel_single_op(boost::corosio::detail::reactor_stream_base_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_tcp_socket, boost::corosio::detail::select_tcp_acceptor, boost::corosio::endpoint>&) :246 18x 0.0% 0.0% 75.0% boost::corosio::detail::reactor_acceptor<boost::corosio::detail::kqueue_local_stream_acceptor, boost::corosio::detail::kqueue_local_stream_acceptor_service, boost::corosio::detail::reactor_stream_base_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_local_stream_socket, boost::corosio::detail::kqueue_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_stream_accept_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_local_stream_socket, boost::corosio::detail::kqueue_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_stream_wait_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_local_stream_socket, boost::corosio::detail::kqueue_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_descriptor_state, boost::corosio::local_stream_acceptor::implementation, boost::corosio::local_endpoint>::cancel_single_op(boost::corosio::detail::reactor_stream_base_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_local_stream_socket, boost::corosio::detail::kqueue_local_stream_acceptor, boost::corosio::local_endpoint>&)::'lambda'(boost::corosio::detail::reactor_op_base*&)::operator()(boost::corosio::detail::reactor_op_base*&) const :257 16x 0.0% 0.0% 100.0% boost::corosio::detail::reactor_acceptor<boost::corosio::detail::kqueue_tcp_acceptor, boost::corosio::detail::kqueue_tcp_acceptor_service, boost::corosio::detail::reactor_stream_base_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_tcp_socket, boost::corosio::detail::kqueue_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_stream_accept_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_tcp_socket, boost::corosio::detail::kqueue_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_stream_wait_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_tcp_socket, boost::corosio::detail::kqueue_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_descriptor_state, boost::corosio::tcp_acceptor::implementation, boost::corosio::endpoint>::cancel_single_op(boost::corosio::detail::reactor_stream_base_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_tcp_socket, boost::corosio::detail::kqueue_tcp_acceptor, boost::corosio::endpoint>&)::'lambda'(boost::corosio::detail::reactor_op_base*&)::operator()(boost::corosio::detail::reactor_op_base*&) const :257 112x 100.0% 68.8% 100.0% boost::corosio::detail::reactor_acceptor<boost::corosio::detail::select_local_stream_acceptor, boost::corosio::detail::select_local_stream_acceptor_service, boost::corosio::detail::reactor_stream_base_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_local_stream_socket, boost::corosio::detail::select_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_stream_accept_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_local_stream_socket, boost::corosio::detail::select_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_stream_wait_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_local_stream_socket, boost::corosio::detail::select_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_descriptor_state, boost::corosio::local_stream_acceptor::implementation, boost::corosio::local_endpoint>::cancel_single_op(boost::corosio::detail::reactor_stream_base_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_local_stream_socket, boost::corosio::detail::select_local_stream_acceptor, boost::corosio::local_endpoint>&)::'lambda'(boost::corosio::detail::reactor_op_base*&)::operator()(boost::corosio::detail::reactor_op_base*&) const :257 16x 100.0% 68.8% 100.0% boost::corosio::detail::reactor_acceptor<boost::corosio::detail::select_tcp_acceptor, boost::corosio::detail::select_tcp_acceptor_service, boost::corosio::detail::reactor_stream_base_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_tcp_socket, boost::corosio::detail::select_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_stream_accept_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_tcp_socket, boost::corosio::detail::select_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_stream_wait_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_tcp_socket, boost::corosio::detail::select_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_descriptor_state, boost::corosio::tcp_acceptor::implementation, boost::corosio::endpoint>::cancel_single_op(boost::corosio::detail::reactor_stream_base_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_tcp_socket, boost::corosio::detail::select_tcp_acceptor, boost::corosio::endpoint>&)::'lambda'(boost::corosio::detail::reactor_op_base*&)::operator()(boost::corosio::detail::reactor_op_base*&) const :257 72x 0.0% 0.0% 100.0% boost::corosio::detail::reactor_acceptor<boost::corosio::detail::kqueue_local_stream_acceptor, boost::corosio::detail::kqueue_local_stream_acceptor_service, boost::corosio::detail::reactor_stream_base_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_local_stream_socket, boost::corosio::detail::kqueue_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_stream_accept_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_local_stream_socket, boost::corosio::detail::kqueue_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_stream_wait_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_local_stream_socket, boost::corosio::detail::kqueue_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_descriptor_state, boost::corosio::local_stream_acceptor::implementation, boost::corosio::local_endpoint>::do_cancel() :285 1x 100.0% 100.0% boost::corosio::detail::reactor_acceptor<boost::corosio::detail::kqueue_tcp_acceptor, boost::corosio::detail::kqueue_tcp_acceptor_service, boost::corosio::detail::reactor_stream_base_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_tcp_socket, boost::corosio::detail::kqueue_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_stream_accept_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_tcp_socket, boost::corosio::detail::kqueue_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_stream_wait_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_tcp_socket, boost::corosio::detail::kqueue_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_descriptor_state, boost::corosio::tcp_acceptor::implementation, boost::corosio::endpoint>::do_cancel() :285 4x 100.0% 100.0% boost::corosio::detail::reactor_acceptor<boost::corosio::detail::select_local_stream_acceptor, boost::corosio::detail::select_local_stream_acceptor_service, boost::corosio::detail::reactor_stream_base_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_local_stream_socket, boost::corosio::detail::select_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_stream_accept_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_local_stream_socket, boost::corosio::detail::select_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_stream_wait_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_local_stream_socket, boost::corosio::detail::select_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_descriptor_state, boost::corosio::local_stream_acceptor::implementation, boost::corosio::local_endpoint>::do_cancel() :285 1x 100.0% 100.0% boost::corosio::detail::reactor_acceptor<boost::corosio::detail::select_tcp_acceptor, boost::corosio::detail::select_tcp_acceptor_service, boost::corosio::detail::reactor_stream_base_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_tcp_socket, boost::corosio::detail::select_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_stream_accept_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_tcp_socket, boost::corosio::detail::select_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_stream_wait_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_tcp_socket, boost::corosio::detail::select_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_descriptor_state, boost::corosio::tcp_acceptor::implementation, boost::corosio::endpoint>::do_cancel() :285 4x 100.0% 100.0% boost::corosio::detail::reactor_acceptor<boost::corosio::detail::kqueue_local_stream_acceptor, boost::corosio::detail::kqueue_local_stream_acceptor_service, boost::corosio::detail::reactor_stream_base_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_local_stream_socket, boost::corosio::detail::kqueue_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_stream_accept_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_local_stream_socket, boost::corosio::detail::kqueue_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_stream_wait_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_local_stream_socket, boost::corosio::detail::kqueue_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_descriptor_state, boost::corosio::local_stream_acceptor::implementation, boost::corosio::local_endpoint>::do_close_socket() :304 75x 95.2% 50.0% 88.0% boost::corosio::detail::reactor_acceptor<boost::corosio::detail::kqueue_tcp_acceptor, boost::corosio::detail::kqueue_tcp_acceptor_service, boost::corosio::detail::reactor_stream_base_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_tcp_socket, boost::corosio::detail::kqueue_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_stream_accept_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_tcp_socket, boost::corosio::detail::kqueue_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_stream_wait_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_tcp_socket, boost::corosio::detail::kqueue_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_descriptor_state, boost::corosio::tcp_acceptor::implementation, boost::corosio::endpoint>::do_close_socket() :304 3974x 100.0% 88.0% boost::corosio::detail::reactor_acceptor<boost::corosio::detail::select_local_stream_acceptor, boost::corosio::detail::select_local_stream_acceptor_service, boost::corosio::detail::reactor_stream_base_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_local_stream_socket, boost::corosio::detail::select_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_stream_accept_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_local_stream_socket, boost::corosio::detail::select_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_stream_wait_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_local_stream_socket, boost::corosio::detail::select_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_descriptor_state, boost::corosio::local_stream_acceptor::implementation, boost::corosio::local_endpoint>::do_close_socket() :304 75x 100.0% 88.0% boost::corosio::detail::reactor_acceptor<boost::corosio::detail::select_tcp_acceptor, boost::corosio::detail::select_tcp_acceptor_service, boost::corosio::detail::reactor_stream_base_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_tcp_socket, boost::corosio::detail::select_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_stream_accept_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_tcp_socket, boost::corosio::detail::select_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_stream_wait_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_tcp_socket, boost::corosio::detail::select_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_descriptor_state, boost::corosio::tcp_acceptor::implementation, boost::corosio::endpoint>::do_close_socket() :304 428x 100.0% 88.0% boost::corosio::detail::reactor_acceptor<boost::corosio::detail::kqueue_local_stream_acceptor, boost::corosio::detail::kqueue_local_stream_acceptor_service, boost::corosio::detail::reactor_stream_base_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_local_stream_socket, boost::corosio::detail::kqueue_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_stream_accept_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_local_stream_socket, boost::corosio::detail::kqueue_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_stream_wait_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_local_stream_socket, boost::corosio::detail::kqueue_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_descriptor_state, boost::corosio::local_stream_acceptor::implementation, boost::corosio::local_endpoint>::do_close_socket()::'lambda'(boost::corosio::detail::reactor_op_base*, boost::corosio::detail::reactor_op_base&)::operator()(boost::corosio::detail::reactor_op_base*, boost::corosio::detail::reactor_op_base&) const :331 300x 100.0% 63.9% 66.0% boost::corosio::detail::reactor_acceptor<boost::corosio::detail::kqueue_tcp_acceptor, boost::corosio::detail::kqueue_tcp_acceptor_service, boost::corosio::detail::reactor_stream_base_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_tcp_socket, boost::corosio::detail::kqueue_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_stream_accept_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_tcp_socket, boost::corosio::detail::kqueue_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_stream_wait_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_tcp_socket, boost::corosio::detail::kqueue_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_descriptor_state, boost::corosio::tcp_acceptor::implementation, boost::corosio::endpoint>::do_close_socket()::'lambda'(boost::corosio::detail::reactor_op_base*, boost::corosio::detail::reactor_op_base&)::operator()(boost::corosio::detail::reactor_op_base*, boost::corosio::detail::reactor_op_base&) const :331 15896x 100.0% 100.0% boost::corosio::detail::reactor_acceptor<boost::corosio::detail::select_local_stream_acceptor, boost::corosio::detail::select_local_stream_acceptor_service, boost::corosio::detail::reactor_stream_base_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_local_stream_socket, boost::corosio::detail::select_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_stream_accept_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_local_stream_socket, boost::corosio::detail::select_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_stream_wait_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_local_stream_socket, boost::corosio::detail::select_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_descriptor_state, boost::corosio::local_stream_acceptor::implementation, boost::corosio::local_endpoint>::do_close_socket()::'lambda'(boost::corosio::detail::reactor_op_base*, boost::corosio::detail::reactor_op_base&)::operator()(boost::corosio::detail::reactor_op_base*, boost::corosio::detail::reactor_op_base&) const :331 300x 100.0% 66.0% boost::corosio::detail::reactor_acceptor<boost::corosio::detail::select_tcp_acceptor, boost::corosio::detail::select_tcp_acceptor_service, boost::corosio::detail::reactor_stream_base_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_tcp_socket, boost::corosio::detail::select_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_stream_accept_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_tcp_socket, boost::corosio::detail::select_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_stream_wait_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_tcp_socket, boost::corosio::detail::select_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_descriptor_state, boost::corosio::tcp_acceptor::implementation, boost::corosio::endpoint>::do_close_socket()::'lambda'(boost::corosio::detail::reactor_op_base*, boost::corosio::detail::reactor_op_base&)::operator()(boost::corosio::detail::reactor_op_base*, boost::corosio::detail::reactor_op_base&) const :331 1712x 100.0% 100.0% boost::corosio::detail::reactor_acceptor<boost::corosio::detail::kqueue_local_stream_acceptor, boost::corosio::detail::kqueue_local_stream_acceptor_service, boost::corosio::detail::reactor_stream_base_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_local_stream_socket, boost::corosio::detail::kqueue_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_stream_accept_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_local_stream_socket, boost::corosio::detail::kqueue_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_stream_wait_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_local_stream_socket, boost::corosio::detail::kqueue_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_descriptor_state, boost::corosio::local_stream_acceptor::implementation, boost::corosio::local_endpoint>::do_release_socket() :370 1x 95.2% 50.0% 87.0% boost::corosio::detail::reactor_acceptor<boost::corosio::detail::select_local_stream_acceptor, boost::corosio::detail::select_local_stream_acceptor_service, boost::corosio::detail::reactor_stream_base_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_local_stream_socket, boost::corosio::detail::select_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_stream_accept_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_local_stream_socket, boost::corosio::detail::select_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_stream_wait_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_local_stream_socket, boost::corosio::detail::select_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_descriptor_state, boost::corosio::local_stream_acceptor::implementation, boost::corosio::local_endpoint>::do_release_socket() :370 1x 100.0% 87.0% boost::corosio::detail::reactor_acceptor<boost::corosio::detail::kqueue_local_stream_acceptor, boost::corosio::detail::kqueue_local_stream_acceptor_service, boost::corosio::detail::reactor_stream_base_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_local_stream_socket, boost::corosio::detail::kqueue_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_stream_accept_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_local_stream_socket, boost::corosio::detail::kqueue_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_stream_wait_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_local_stream_socket, boost::corosio::detail::kqueue_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_descriptor_state, boost::corosio::local_stream_acceptor::implementation, boost::corosio::local_endpoint>::do_release_socket()::'lambda'(boost::corosio::detail::reactor_op_base*, boost::corosio::detail::reactor_op_base&)::operator()(boost::corosio::detail::reactor_op_base*, boost::corosio::detail::reactor_op_base&) const :397 4x 82.6% 50.0% 66.0% boost::corosio::detail::reactor_acceptor<boost::corosio::detail::select_local_stream_acceptor, boost::corosio::detail::select_local_stream_acceptor_service, boost::corosio::detail::reactor_stream_base_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_local_stream_socket, boost::corosio::detail::select_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_stream_accept_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_local_stream_socket, boost::corosio::detail::select_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_stream_wait_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_local_stream_socket, boost::corosio::detail::select_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_descriptor_state, boost::corosio::local_stream_acceptor::implementation, boost::corosio::local_endpoint>::do_release_socket()::'lambda'(boost::corosio::detail::reactor_op_base*, boost::corosio::detail::reactor_op_base&)::operator()(boost::corosio::detail::reactor_op_base*, boost::corosio::detail::reactor_op_base&) const :397 4x 100.0% 66.0% boost::corosio::detail::reactor_acceptor<boost::corosio::detail::kqueue_local_stream_acceptor, boost::corosio::detail::kqueue_local_stream_acceptor_service, boost::corosio::detail::reactor_stream_base_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_local_stream_socket, boost::corosio::detail::kqueue_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_stream_accept_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_local_stream_socket, boost::corosio::detail::kqueue_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_stream_wait_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_local_stream_socket, boost::corosio::detail::kqueue_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_descriptor_state, boost::corosio::local_stream_acceptor::implementation, boost::corosio::local_endpoint>::do_bind(boost::corosio::local_endpoint const&) :439 16x 100.0% 75.0% 100.0% boost::corosio::detail::reactor_acceptor<boost::corosio::detail::kqueue_tcp_acceptor, boost::corosio::detail::kqueue_tcp_acceptor_service, boost::corosio::detail::reactor_stream_base_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_tcp_socket, boost::corosio::detail::kqueue_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_stream_accept_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_tcp_socket, boost::corosio::detail::kqueue_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_stream_wait_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_tcp_socket, boost::corosio::detail::kqueue_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_descriptor_state, boost::corosio::tcp_acceptor::implementation, boost::corosio::endpoint>::do_bind(boost::corosio::endpoint const&) :439 989x 100.0% 100.0% boost::corosio::detail::reactor_acceptor<boost::corosio::detail::select_local_stream_acceptor, boost::corosio::detail::select_local_stream_acceptor_service, boost::corosio::detail::reactor_stream_base_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_local_stream_socket, boost::corosio::detail::select_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_stream_accept_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_local_stream_socket, boost::corosio::detail::select_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_stream_wait_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_local_stream_socket, boost::corosio::detail::select_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_descriptor_state, boost::corosio::local_stream_acceptor::implementation, boost::corosio::local_endpoint>::do_bind(boost::corosio::local_endpoint const&) :439 16x 100.0% 100.0% boost::corosio::detail::reactor_acceptor<boost::corosio::detail::select_tcp_acceptor, boost::corosio::detail::select_tcp_acceptor_service, boost::corosio::detail::reactor_stream_base_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_tcp_socket, boost::corosio::detail::select_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_stream_accept_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_tcp_socket, boost::corosio::detail::select_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_stream_wait_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_tcp_socket, boost::corosio::detail::select_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_descriptor_state, boost::corosio::tcp_acceptor::implementation, boost::corosio::endpoint>::do_bind(boost::corosio::endpoint const&) :439 102x 100.0% 100.0% boost::corosio::detail::reactor_acceptor<boost::corosio::detail::kqueue_local_stream_acceptor, boost::corosio::detail::kqueue_local_stream_acceptor_service, boost::corosio::detail::reactor_stream_base_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_local_stream_socket, boost::corosio::detail::kqueue_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_stream_accept_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_local_stream_socket, boost::corosio::detail::kqueue_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_stream_wait_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_local_stream_socket, boost::corosio::detail::kqueue_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_descriptor_state, boost::corosio::local_stream_acceptor::implementation, boost::corosio::local_endpoint>::do_listen(int) :467 11x 83.3% 50.0% 75.0% boost::corosio::detail::reactor_acceptor<boost::corosio::detail::kqueue_tcp_acceptor, boost::corosio::detail::kqueue_tcp_acceptor_service, boost::corosio::detail::reactor_stream_base_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_tcp_socket, boost::corosio::detail::kqueue_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_stream_accept_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_tcp_socket, boost::corosio::detail::kqueue_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_stream_wait_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_tcp_socket, boost::corosio::detail::kqueue_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_descriptor_state, boost::corosio::tcp_acceptor::implementation, boost::corosio::endpoint>::do_listen(int) :467 978x 100.0% 75.0% boost::corosio::detail::reactor_acceptor<boost::corosio::detail::select_local_stream_acceptor, boost::corosio::detail::select_local_stream_acceptor_service, boost::corosio::detail::reactor_stream_base_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_local_stream_socket, boost::corosio::detail::select_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_stream_accept_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_local_stream_socket, boost::corosio::detail::select_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_stream_wait_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_local_stream_socket, boost::corosio::detail::select_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_descriptor_state, boost::corosio::local_stream_acceptor::implementation, boost::corosio::local_endpoint>::do_listen(int) :467 11x 100.0% 75.0% boost::corosio::detail::reactor_acceptor<boost::corosio::detail::select_tcp_acceptor, boost::corosio::detail::select_tcp_acceptor_service, boost::corosio::detail::reactor_stream_base_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_tcp_socket, boost::corosio::detail::select_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_stream_accept_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_tcp_socket, boost::corosio::detail::select_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_stream_wait_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_tcp_socket, boost::corosio::detail::select_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_descriptor_state, boost::corosio::tcp_acceptor::implementation, boost::corosio::endpoint>::do_listen(int) :467 93x 100.0% 75.0% boost::corosio::detail::reactor_acceptor<boost::corosio::detail::kqueue_local_stream_acceptor, boost::corosio::detail::kqueue_local_stream_acceptor_service, boost::corosio::detail::reactor_stream_base_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_local_stream_socket, boost::corosio::detail::kqueue_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_stream_accept_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_local_stream_socket, boost::corosio::detail::kqueue_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_stream_wait_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_local_stream_socket, boost::corosio::detail::kqueue_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_descriptor_state, boost::corosio::local_stream_acceptor::implementation, boost::corosio::local_endpoint>::do_wait(std::__1::coroutine_handle<void>, boost::capy::executor_ref, boost::corosio::wait_type, std::__1::stop_token const&, std::__1::error_code*) :487 1x 0.0% 0.0% 53.0% boost::corosio::detail::reactor_acceptor<boost::corosio::detail::kqueue_tcp_acceptor, boost::corosio::detail::kqueue_tcp_acceptor_service, boost::corosio::detail::reactor_stream_base_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_tcp_socket, boost::corosio::detail::kqueue_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_stream_accept_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_tcp_socket, boost::corosio::detail::kqueue_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_stream_wait_op<boost::corosio::detail::kqueue_traits, boost::corosio::detail::kqueue_tcp_socket, boost::corosio::detail::kqueue_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_descriptor_state, boost::corosio::tcp_acceptor::implementation, boost::corosio::endpoint>::do_wait(std::__1::coroutine_handle<void>, boost::capy::executor_ref, boost::corosio::wait_type, std::__1::stop_token const&, std::__1::error_code*) :487 5x 100.0% 75.0% 76.0% boost::corosio::detail::reactor_acceptor<boost::corosio::detail::select_local_stream_acceptor, boost::corosio::detail::select_local_stream_acceptor_service, boost::corosio::detail::reactor_stream_base_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_local_stream_socket, boost::corosio::detail::select_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_stream_accept_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_local_stream_socket, boost::corosio::detail::select_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_stream_wait_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_local_stream_socket, boost::corosio::detail::select_local_stream_acceptor, boost::corosio::local_endpoint>, boost::corosio::detail::reactor_descriptor_state, boost::corosio::local_stream_acceptor::implementation, boost::corosio::local_endpoint>::do_wait(std::__1::coroutine_handle<void>, boost::capy::executor_ref, boost::corosio::wait_type, std::__1::stop_token const&, std::__1::error_code*) :487 1x 55.0% 37.5% 53.0% boost::corosio::detail::reactor_acceptor<boost::corosio::detail::select_tcp_acceptor, boost::corosio::detail::select_tcp_acceptor_service, boost::corosio::detail::reactor_stream_base_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_tcp_socket, boost::corosio::detail::select_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_stream_accept_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_tcp_socket, boost::corosio::detail::select_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_stream_wait_op<boost::corosio::detail::select_traits, boost::corosio::detail::select_tcp_socket, boost::corosio::detail::select_tcp_acceptor, boost::corosio::endpoint>, boost::corosio::detail::reactor_descriptor_state, boost::corosio::tcp_acceptor::implementation, boost::corosio::endpoint>::do_wait(std::__1::coroutine_handle<void>, boost::capy::executor_ref, boost::corosio::wait_type, std::__1::stop_token const&, std::__1::error_code*) :487 5x 100.0% 76.0%
Line Branch TLA Hits Source Code
1 //
2 // Copyright (c) 2026 Steve Gerbino
3 //
4 // Distributed under the Boost Software License, Version 1.0. (See accompanying
5 // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
6 //
7 // Official repository: https://github.com/cppalliance/corosio
8 //
9
10 #ifndef BOOST_COROSIO_NATIVE_DETAIL_REACTOR_REACTOR_ACCEPTOR_HPP
11 #define BOOST_COROSIO_NATIVE_DETAIL_REACTOR_REACTOR_ACCEPTOR_HPP
12
13 #include <boost/corosio/tcp_acceptor.hpp>
14 #include <boost/corosio/wait_type.hpp>
15 #include <boost/corosio/detail/intrusive.hpp>
16 #include <boost/corosio/native/detail/reactor/reactor_op_base.hpp>
17 #include <boost/corosio/native/detail/reactor/reactor_descriptor_state.hpp>
18 #include <boost/corosio/native/detail/make_err.hpp>
19 #include <boost/corosio/native/detail/endpoint_convert.hpp>
20
21 #include <memory>
22 #include <mutex>
23 #include <utility>
24
25 #include <errno.h>
26 #include <netinet/in.h>
27 #include <sys/socket.h>
28 #include <unistd.h>
29
30 namespace boost::corosio::detail {
31
32 /** CRTP base for reactor-backed acceptor implementations.
33
34 Provides shared data members, trivial virtual overrides, and
35 non-virtual helper methods for cancellation and close. Concrete
36 backends inherit and add `cancel()`, `close_socket()`, and
37 `accept()` overrides that delegate to the `do_*` helpers.
38
39 @tparam Derived The concrete acceptor type (CRTP).
40 @tparam Service The backend's acceptor service type.
41 @tparam Op The backend's base op type.
42 @tparam AcceptOp The backend's accept op type.
43 @tparam WaitOp The backend's wait op type.
44 @tparam DescState The backend's descriptor_state type.
45 @tparam ImplBase The public vtable base
46 (tcp_acceptor::implementation or
47 local_stream_acceptor::implementation).
48 @tparam Endpoint The endpoint type (endpoint or local_endpoint).
49 */
50 template<
51 class Derived,
52 class Service,
53 class Op,
54 class AcceptOp,
55 class WaitOp,
56 class DescState,
57 class ImplBase = tcp_acceptor::implementation,
58 class Endpoint = endpoint>
59 class reactor_acceptor
60 : public ImplBase
61 , public std::enable_shared_from_this<Derived>
62 , public intrusive_list<Derived>::node
63 {
64 friend Derived;
65
66 protected:
67 // NOLINTNEXTLINE(bugprone-crtp-constructor-accessibility)
68 2300x explicit reactor_acceptor(Service& svc) noexcept : svc_(svc) {}
69
70 protected:
71 Service& svc_;
72 1150x int fd_ = -1;
73 Endpoint local_endpoint_;
74
75 public:
76 /// Pending accept operation slot.
77 AcceptOp acc_;
78
79 /// Pending wait-for-read operation slot.
80 WaitOp wait_rd_;
81
82 /// Pending wait-for-write operation slot.
83 WaitOp wait_wr_;
84
85 /// Pending wait-for-error operation slot.
86 WaitOp wait_er_;
87
88 /// Per-descriptor state for persistent reactor registration.
89 DescState desc_state_;
90
91 1150x ~reactor_acceptor() override = default;
92
93 /// Return the underlying file descriptor.
94 int native_handle() const noexcept
95 {
96 return fd_;
97 }
98
99 /// Return the cached local endpoint.
100 7002x Endpoint local_endpoint() const noexcept override
101 {
102 7002x return local_endpoint_;
103 }
104
105 /// Return true if the acceptor has an open file descriptor.
106 13760x bool is_open() const noexcept override
107 {
108 13760x return fd_ >= 0;
109 }
110
111 /// Set a socket option.
112 1094x std::error_code set_option(
113 int level,
114 int optname,
115 void const* data,
116 std::size_t size) noexcept override
117 {
118
4/16
✓ Branch 0 taken 104 times.
✗ Branch 1 not taken.
✗ Branch 2 not taken.
✓ Branch 3 taken 104 times.
✗ Branch 4 not taken.
✗ Branch 5 not taken.
✗ Branch 6 not taken.
✗ Branch 7 not taken.
✓ Branch 8 taken 990 times.
✗ Branch 9 not taken.
✗ Branch 10 not taken.
✓ Branch 11 taken 990 times.
✗ Branch 12 not taken.
✗ Branch 13 not taken.
✗ Branch 14 not taken.
✗ Branch 15 not taken.
1094x if (::setsockopt(
119 1094x fd_, level, optname, data, static_cast<socklen_t>(size)) != 0)
120 return make_err(errno);
121 1094x return {};
122 1094x }
123
124 /// Get a socket option.
125 std::error_code
126 4x get_option(int level, int optname, void* data, std::size_t* size)
127 const noexcept override
128 {
129 4x socklen_t len = static_cast<socklen_t>(*size);
130
4/16
✓ Branch 0 taken 2 times.
✗ Branch 1 not taken.
✗ Branch 2 not taken.
✓ Branch 3 taken 2 times.
✗ Branch 4 not taken.
✗ Branch 5 not taken.
✗ Branch 6 not taken.
✗ Branch 7 not taken.
✓ Branch 8 taken 2 times.
✗ Branch 9 not taken.
✗ Branch 10 not taken.
✓ Branch 11 taken 2 times.
✗ Branch 12 not taken.
✗ Branch 13 not taken.
✗ Branch 14 not taken.
✗ Branch 15 not taken.
4x if (::getsockopt(fd_, level, optname, data, &len) != 0)
131 return make_err(errno);
132 4x *size = static_cast<std::size_t>(len);
133 4x return {};
134 4x }
135
136 /// Cache the local endpoint.
137 1115x void set_local_endpoint(Endpoint ep) noexcept
138 {
139 1115x local_endpoint_ = std::move(ep);
140 1115x }
141
142 /// Assign the fd and initialize descriptor state for the acceptor.
143 1127x void init_acceptor_fd(int fd) noexcept
144 {
145 1127x fd_ = fd;
146 1127x desc_state_.fd = fd;
147 {
148
4/8
✓ Branch 0 taken 104 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 16 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 991 times.
✗ Branch 5 not taken.
✓ Branch 6 taken 16 times.
✗ Branch 7 not taken.
1127x std::lock_guard lock(desc_state_.mutex);
149 1127x desc_state_.read_op = nullptr;
150 1127x desc_state_.wait_read_op = nullptr;
151 1127x desc_state_.wait_write_op = nullptr;
152 1127x desc_state_.wait_error_op = nullptr;
153 1127x }
154 1127x }
155
156 /// Return a reference to the owning service.
157 5932x Service& service() noexcept
158 {
159 5932x return svc_;
160 }
161
162 10x void cancel() noexcept override { do_cancel(); }
163
164 /// Close the acceptor (non-virtual, called by the service).
165 4552x void close_socket() noexcept { do_close_socket(); }
166
167 12x std::coroutine_handle<> wait(
168 std::coroutine_handle<> h,
169 capy::executor_ref ex,
170 wait_type w,
171 std::stop_token token,
172 std::error_code* ec) override
173 {
174 12x return do_wait(h, ex, w, token, ec);
175 }
176
177 /** Wait for readiness on the listen socket.
178
179 Registers a wait op on the matching event slot. For
180 `wait_type::read`, completion signals that an incoming
181 connection is pending and a subsequent accept will
182 succeed without blocking.
183 */
184 std::coroutine_handle<> do_wait(
185 std::coroutine_handle<>,
186 capy::executor_ref,
187 wait_type,
188 std::stop_token const&,
189 std::error_code*);
190
191 /** Cancel a single pending operation.
192
193 Claims the operation from the read_op descriptor slot
194 under the mutex and posts it to the scheduler as cancelled.
195
196 @param op The operation to cancel.
197 */
198 void cancel_single_op(Op& op) noexcept;
199
200 /** Cancel the pending accept operation. */
201 void do_cancel() noexcept;
202
203 /** Close the acceptor and cancel pending operations.
204
205 Invoked by the derived class's close_socket(). The
206 derived class may add backend-specific cleanup after
207 calling this method.
208 */
209 void do_close_socket() noexcept;
210
211 /** Release the acceptor without closing the fd. */
212 native_handle_type do_release_socket() noexcept;
213
214 /** Bind the acceptor socket to an endpoint.
215
216 Caches the resolved local endpoint (including ephemeral
217 port) after a successful bind.
218
219 @param ep The endpoint to bind to.
220 @return The error code from bind(), or success.
221 */
222 std::error_code do_bind(Endpoint const& ep);
223
224 /** Start listening on the acceptor socket.
225
226 Registers the file descriptor with the reactor after
227 a successful listen() call.
228
229 @param backlog The listen backlog.
230 @return The error code from listen(), or success.
231 */
232 std::error_code do_listen(int backlog);
233 };
234
235 template<
236 class Derived,
237 class Service,
238 class Op,
239 class AcceptOp,
240 class WaitOp,
241 class DescState,
242 class ImplBase,
243 class Endpoint>
244 void
245 reactor_acceptor<Derived, Service, Op, AcceptOp, WaitOp, DescState, ImplBase, Endpoint>::
246 54x cancel_single_op(Op& op) noexcept
247 {
248 54x auto self = this->weak_from_this().lock();
249
2/8
✓ Branch 0 taken 22 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 32 times.
✗ Branch 3 not taken.
✗ Branch 4 not taken.
✗ Branch 5 not taken.
✗ Branch 6 not taken.
✗ Branch 7 not taken.
54x if (!self)
250 return;
251
252 54x op.request_cancel();
253
254 54x reactor_op_base* claimed = nullptr;
255 {
256
2/8
✓ Branch 0 taken 22 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 32 times.
✗ Branch 3 not taken.
✗ Branch 4 not taken.
✗ Branch 5 not taken.
✗ Branch 6 not taken.
✗ Branch 7 not taken.
54x std::lock_guard lock(desc_state_.mutex);
257 270x auto try_claim = [&](reactor_op_base*& slot) {
258
8/16
✓ Branch 0 taken 79 times.
✓ Branch 1 taken 9 times.
✓ Branch 2 taken 75 times.
✓ Branch 3 taken 4 times.
✓ Branch 4 taken 89 times.
✓ Branch 5 taken 39 times.
✓ Branch 6 taken 75 times.
✓ Branch 7 taken 14 times.
✗ Branch 8 not taken.
✗ Branch 9 not taken.
✗ Branch 10 not taken.
✗ Branch 11 not taken.
✗ Branch 12 not taken.
✗ Branch 13 not taken.
✗ Branch 14 not taken.
✗ Branch 15 not taken.
216x if (!claimed && slot == &op)
259 18x claimed = std::exchange(slot, nullptr);
260 216x };
261
2/8
✓ Branch 0 taken 22 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 32 times.
✗ Branch 3 not taken.
✗ Branch 4 not taken.
✗ Branch 5 not taken.
✗ Branch 6 not taken.
✗ Branch 7 not taken.
54x try_claim(desc_state_.read_op);
262
2/8
✓ Branch 0 taken 22 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 32 times.
✗ Branch 3 not taken.
✗ Branch 4 not taken.
✗ Branch 5 not taken.
✗ Branch 6 not taken.
✗ Branch 7 not taken.
54x try_claim(desc_state_.wait_read_op);
263
2/8
✓ Branch 0 taken 22 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 32 times.
✗ Branch 3 not taken.
✗ Branch 4 not taken.
✗ Branch 5 not taken.
✗ Branch 6 not taken.
✗ Branch 7 not taken.
54x try_claim(desc_state_.wait_write_op);
264
2/8
✓ Branch 0 taken 22 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 32 times.
✗ Branch 3 not taken.
✗ Branch 4 not taken.
✗ Branch 5 not taken.
✗ Branch 6 not taken.
✗ Branch 7 not taken.
54x try_claim(desc_state_.wait_error_op);
265 54x }
266
4/8
✓ Branch 0 taken 4 times.
✓ Branch 1 taken 18 times.
✓ Branch 2 taken 14 times.
✓ Branch 3 taken 18 times.
✗ Branch 4 not taken.
✗ Branch 5 not taken.
✗ Branch 6 not taken.
✗ Branch 7 not taken.
54x if (claimed)
267 {
268 18x op.impl_ptr = self;
269
2/8
✓ Branch 0 taken 4 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 14 times.
✗ Branch 3 not taken.
✗ Branch 4 not taken.
✗ Branch 5 not taken.
✗ Branch 6 not taken.
✗ Branch 7 not taken.
18x svc_.post(&op);
270 18x svc_.work_finished();
271 18x }
272 54x }
273
274 template<
275 class Derived,
276 class Service,
277 class Op,
278 class AcceptOp,
279 class WaitOp,
280 class DescState,
281 class ImplBase,
282 class Endpoint>
283 void
284 reactor_acceptor<Derived, Service, Op, AcceptOp, WaitOp, DescState, ImplBase, Endpoint>::
285 10x do_cancel() noexcept
286 {
287 10x cancel_single_op(acc_);
288 10x cancel_single_op(wait_rd_);
289 10x cancel_single_op(wait_wr_);
290 10x cancel_single_op(wait_er_);
291 10x }
292
293 template<
294 class Derived,
295 class Service,
296 class Op,
297 class AcceptOp,
298 class WaitOp,
299 class DescState,
300 class ImplBase,
301 class Endpoint>
302 void
303 reactor_acceptor<Derived, Service, Op, AcceptOp, WaitOp, DescState, ImplBase, Endpoint>::
304 4552x do_close_socket() noexcept
305 {
306 4552x auto self = this->weak_from_this().lock();
307
4/8
✗ Branch 0 not taken.
✓ Branch 1 taken 428 times.
✗ Branch 2 not taken.
✓ Branch 3 taken 75 times.
✗ Branch 4 not taken.
✓ Branch 5 taken 3974 times.
✗ Branch 6 not taken.
✓ Branch 7 taken 75 times.
4552x if (self)
308 {
309 4552x acc_.request_cancel();
310 4552x wait_rd_.request_cancel();
311 4552x wait_wr_.request_cancel();
312 4552x wait_er_.request_cancel();
313
314 4552x reactor_op_base* claimed_acc = nullptr;
315 4552x reactor_op_base* claimed_wr = nullptr;
316 4552x reactor_op_base* claimed_ww = nullptr;
317 4552x reactor_op_base* claimed_we = nullptr;
318 {
319
4/8
✓ Branch 0 taken 428 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 75 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 3974 times.
✗ Branch 5 not taken.
✓ Branch 6 taken 75 times.
✗ Branch 7 not taken.
4552x std::lock_guard lock(desc_state_.mutex);
320 4552x claimed_acc = std::exchange(desc_state_.read_op, nullptr);
321 4552x claimed_wr = std::exchange(desc_state_.wait_read_op, nullptr);
322 4552x claimed_ww = std::exchange(desc_state_.wait_write_op, nullptr);
323 4552x claimed_we = std::exchange(desc_state_.wait_error_op, nullptr);
324 4552x desc_state_.read_ready = false;
325 4552x desc_state_.write_ready = false;
326
327
4/8
✓ Branch 0 taken 428 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 75 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 3974 times.
✗ Branch 5 not taken.
✓ Branch 6 taken 75 times.
✗ Branch 7 not taken.
4552x if (desc_state_.is_enqueued_.load(std::memory_order_acquire))
328 desc_state_.impl_ref_ = self;
329 4552x }
330
331 22760x auto repost = [&](reactor_op_base* claimed, reactor_op_base& op) {
332
6/8
✓ Branch 0 taken 1710 times.
✓ Branch 1 taken 2 times.
✓ Branch 2 taken 300 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 15894 times.
✓ Branch 5 taken 2 times.
✓ Branch 6 taken 300 times.
✗ Branch 7 not taken.
18208x if (claimed)
333 {
334 4x op.impl_ptr = self;
335 4x svc_.post(&op);
336 4x svc_.work_finished();
337 4x }
338 18208x };
339
4/8
✓ Branch 0 taken 428 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 75 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 3974 times.
✗ Branch 5 not taken.
✓ Branch 6 taken 75 times.
✗ Branch 7 not taken.
4552x repost(claimed_acc, acc_);
340
4/8
✓ Branch 0 taken 428 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 75 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 3974 times.
✗ Branch 5 not taken.
✓ Branch 6 taken 75 times.
✗ Branch 7 not taken.
4552x repost(claimed_wr, wait_rd_);
341
4/8
✓ Branch 0 taken 428 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 75 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 3974 times.
✗ Branch 5 not taken.
✓ Branch 6 taken 75 times.
✗ Branch 7 not taken.
4552x repost(claimed_ww, wait_wr_);
342
4/8
✓ Branch 0 taken 428 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 75 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 3974 times.
✗ Branch 5 not taken.
✓ Branch 6 taken 75 times.
✗ Branch 7 not taken.
4552x repost(claimed_we, wait_er_);
343 4552x }
344
345
8/8
✓ Branch 0 taken 104 times.
✓ Branch 1 taken 324 times.
✓ Branch 2 taken 15 times.
✓ Branch 3 taken 60 times.
✓ Branch 4 taken 991 times.
✓ Branch 5 taken 2983 times.
✓ Branch 6 taken 15 times.
✓ Branch 7 taken 60 times.
4552x if (fd_ >= 0)
346 {
347
8/8
✓ Branch 0 taken 93 times.
✓ Branch 1 taken 11 times.
✓ Branch 2 taken 10 times.
✓ Branch 3 taken 5 times.
✓ Branch 4 taken 978 times.
✓ Branch 5 taken 13 times.
✓ Branch 6 taken 10 times.
✓ Branch 7 taken 5 times.
1125x if (desc_state_.registered_events != 0)
348
4/8
✓ Branch 0 taken 93 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 10 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 978 times.
✗ Branch 5 not taken.
✓ Branch 6 taken 10 times.
✗ Branch 7 not taken.
1091x svc_.scheduler().deregister_descriptor(fd_);
349
4/8
✓ Branch 0 taken 104 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 15 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 991 times.
✗ Branch 5 not taken.
✓ Branch 6 taken 15 times.
✗ Branch 7 not taken.
1125x ::close(fd_);
350 1125x fd_ = -1;
351 1125x }
352
353 4552x desc_state_.fd = -1;
354 4552x desc_state_.registered_events = 0;
355
356 4552x local_endpoint_ = Endpoint{};
357 4552x }
358
359 template<
360 class Derived,
361 class Service,
362 class Op,
363 class AcceptOp,
364 class WaitOp,
365 class DescState,
366 class ImplBase,
367 class Endpoint>
368 native_handle_type
369 reactor_acceptor<Derived, Service, Op, AcceptOp, WaitOp, DescState, ImplBase, Endpoint>::
370 2x do_release_socket() noexcept
371 {
372 2x auto self = this->weak_from_this().lock();
373
2/4
✗ Branch 0 not taken.
✓ Branch 1 taken 1 time.
✗ Branch 2 not taken.
✓ Branch 3 taken 1 time.
2x if (self)
374 {
375 2x acc_.request_cancel();
376 2x wait_rd_.request_cancel();
377 2x wait_wr_.request_cancel();
378 2x wait_er_.request_cancel();
379
380 2x reactor_op_base* claimed_acc = nullptr;
381 2x reactor_op_base* claimed_wr = nullptr;
382 2x reactor_op_base* claimed_ww = nullptr;
383 2x reactor_op_base* claimed_we = nullptr;
384 {
385
2/4
✓ Branch 0 taken 1 time.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 time.
✗ Branch 3 not taken.
2x std::lock_guard lock(desc_state_.mutex);
386 2x claimed_acc = std::exchange(desc_state_.read_op, nullptr);
387 2x claimed_wr = std::exchange(desc_state_.wait_read_op, nullptr);
388 2x claimed_ww = std::exchange(desc_state_.wait_write_op, nullptr);
389 2x claimed_we = std::exchange(desc_state_.wait_error_op, nullptr);
390 2x desc_state_.read_ready = false;
391 2x desc_state_.write_ready = false;
392
393
2/4
✓ Branch 0 taken 1 time.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 time.
✗ Branch 3 not taken.
2x if (desc_state_.is_enqueued_.load(std::memory_order_acquire))
394 desc_state_.impl_ref_ = self;
395 2x }
396
397 10x auto repost = [&](reactor_op_base* claimed, reactor_op_base& op) {
398
2/4
✓ Branch 0 taken 4 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 4 times.
✗ Branch 3 not taken.
8x if (claimed)
399 {
400 op.impl_ptr = self;
401 svc_.post(&op);
402 svc_.work_finished();
403 }
404 8x };
405
2/4
✓ Branch 0 taken 1 time.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 time.
✗ Branch 3 not taken.
2x repost(claimed_acc, acc_);
406
2/4
✓ Branch 0 taken 1 time.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 time.
✗ Branch 3 not taken.
2x repost(claimed_wr, wait_rd_);
407
2/4
✓ Branch 0 taken 1 time.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 time.
✗ Branch 3 not taken.
2x repost(claimed_ww, wait_wr_);
408
2/4
✓ Branch 0 taken 1 time.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 time.
✗ Branch 3 not taken.
2x repost(claimed_we, wait_er_);
409 2x }
410
411 2x native_handle_type released = fd_;
412
413
2/4
✗ Branch 0 not taken.
✓ Branch 1 taken 1 time.
✗ Branch 2 not taken.
✓ Branch 3 taken 1 time.
2x if (fd_ >= 0)
414 {
415
2/4
✓ Branch 0 taken 1 time.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 time.
✗ Branch 3 not taken.
2x if (desc_state_.registered_events != 0)
416
2/4
✓ Branch 0 taken 1 time.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 time.
✗ Branch 3 not taken.
2x svc_.scheduler().deregister_descriptor(fd_);
417 2x fd_ = -1;
418 2x }
419
420 2x desc_state_.fd = -1;
421 2x desc_state_.registered_events = 0;
422
423 2x local_endpoint_ = Endpoint{};
424
425 2x return released;
426 2x }
427
428 template<
429 class Derived,
430 class Service,
431 class Op,
432 class AcceptOp,
433 class WaitOp,
434 class DescState,
435 class ImplBase,
436 class Endpoint>
437 std::error_code
438 reactor_acceptor<Derived, Service, Op, AcceptOp, WaitOp, DescState, ImplBase, Endpoint>::
439 1123x do_bind(Endpoint const& ep)
440 {
441 1123x sockaddr_storage storage{};
442 1123x socklen_t addrlen = to_sockaddr(ep, storage);
443
8/8
✓ Branch 0 taken 100 times.
✓ Branch 1 taken 2 times.
✓ Branch 2 taken 15 times.
✓ Branch 3 taken 1 time.
✓ Branch 4 taken 985 times.
✓ Branch 5 taken 4 times.
✓ Branch 6 taken 15 times.
✓ Branch 7 taken 1 time.
1123x if (::bind(fd_, reinterpret_cast<sockaddr*>(&storage), addrlen) < 0)
444 8x return make_err(errno);
445
446 // Cache local endpoint (resolves ephemeral port / path)
447 1115x sockaddr_storage local{};
448 1115x socklen_t local_len = sizeof(local);
449
4/8
✗ Branch 0 not taken.
✓ Branch 1 taken 100 times.
✗ Branch 2 not taken.
✓ Branch 3 taken 15 times.
✗ Branch 4 not taken.
✓ Branch 5 taken 985 times.
✗ Branch 6 not taken.
✓ Branch 7 taken 15 times.
1115x if (::getsockname(fd_, reinterpret_cast<sockaddr*>(&local), &local_len) ==
450 0)
451 1115x set_local_endpoint(from_sockaddr_as(local, local_len, Endpoint{}));
452
453 1115x return {};
454 1123x }
455
456 template<
457 class Derived,
458 class Service,
459 class Op,
460 class AcceptOp,
461 class WaitOp,
462 class DescState,
463 class ImplBase,
464 class Endpoint>
465 std::error_code
466 reactor_acceptor<Derived, Service, Op, AcceptOp, WaitOp, DescState, ImplBase, Endpoint>::
467 1093x do_listen(int backlog)
468 {
469
4/8
✓ Branch 0 taken 93 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 11 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 978 times.
✗ Branch 5 not taken.
✓ Branch 6 taken 11 times.
✗ Branch 7 not taken.
1093x if (::listen(fd_, backlog) < 0)
470 return make_err(errno);
471
472 1093x svc_.scheduler().register_descriptor(fd_, &desc_state_);
473 1093x return {};
474 1093x }
475
476 template<
477 class Derived,
478 class Service,
479 class Op,
480 class AcceptOp,
481 class WaitOp,
482 class DescState,
483 class ImplBase,
484 class Endpoint>
485 std::coroutine_handle<>
486 reactor_acceptor<Derived, Service, Op, AcceptOp, WaitOp, DescState, ImplBase, Endpoint>::
487 12x do_wait(
488 std::coroutine_handle<> h,
489 capy::executor_ref ex,
490 wait_type w,
491 std::stop_token const& token,
492 std::error_code* ec)
493 {
494 // wait_type::write completes immediately (see reactor_stream_socket::do_wait).
495
4/8
✓ Branch 0 taken 4 times.
✓ Branch 1 taken 2 times.
✓ Branch 2 taken 4 times.
✓ Branch 3 taken 2 times.
✗ Branch 4 not taken.
✗ Branch 5 not taken.
✗ Branch 6 not taken.
✗ Branch 7 not taken.
12x if (w == wait_type::write)
496 {
497 2x auto& op = wait_wr_;
498 2x op.reset();
499 2x op.wait_event = reactor_event_write;
500 2x op.h = h;
501 2x op.ex = ex;
502 2x op.ec_out = ec;
503 2x op.fd = this->fd_;
504 2x op.start(token, static_cast<Derived*>(this));
505
2/4
✓ Branch 0 taken 1 time.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 time.
✗ Branch 3 not taken.
2x op.impl_ptr = this->shared_from_this();
506 2x op.complete(0, 0);
507 2x svc_.post(&op);
508 2x return std::noop_coroutine();
509 }
510
511 WaitOp* op_ptr;
512 reactor_op_base** desc_slot_ptr;
513 std::uint32_t event;
514
515
4/8
✓ Branch 0 taken 1 time.
✓ Branch 1 taken 4 times.
✓ Branch 2 taken 1 time.
✓ Branch 3 taken 4 times.
✗ Branch 4 not taken.
✗ Branch 5 not taken.
✗ Branch 6 not taken.
✗ Branch 7 not taken.
10x if (w == wait_type::read)
516 {
517 8x op_ptr = &wait_rd_;
518 8x desc_slot_ptr = &desc_state_.wait_read_op;
519 8x event = reactor_event_read;
520 8x }
521 else // wait_type::error
522 {
523 2x op_ptr = &wait_er_;
524 2x desc_slot_ptr = &desc_state_.wait_error_op;
525 2x event = reactor_event_error;
526 }
527
528 10x auto& op = *op_ptr;
529 10x op.reset();
530 10x op.wait_event = event;
531 10x op.h = h;
532 10x op.ex = ex;
533 10x op.ec_out = ec;
534 10x op.fd = this->fd_;
535 10x op.start(token, static_cast<Derived*>(this));
536
2/4
✓ Branch 0 taken 4 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 4 times.
✗ Branch 3 not taken.
10x op.impl_ptr = this->shared_from_this();
537
538 10x svc_.work_started();
539
540 10x std::lock_guard lock(desc_state_.mutex);
541
4/8
✓ Branch 0 taken 1 time.
✓ Branch 1 taken 4 times.
✓ Branch 2 taken 1 time.
✓ Branch 3 taken 4 times.
✗ Branch 4 not taken.
✗ Branch 5 not taken.
✗ Branch 6 not taken.
✗ Branch 7 not taken.
10x if (op.cancelled.load(std::memory_order_acquire))
542 {
543
2/8
✓ Branch 0 taken 1 time.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 time.
✗ Branch 3 not taken.
✗ Branch 4 not taken.
✗ Branch 5 not taken.
✗ Branch 6 not taken.
✗ Branch 7 not taken.
2x svc_.post(&op);
544 2x svc_.work_finished();
545 2x }
546 else
547 {
548 8x *desc_slot_ptr = &op;
549 }
550 10x return std::noop_coroutine();
551 12x }
552
553 } // namespace boost::corosio::detail
554
555 #endif // BOOST_COROSIO_NATIVE_DETAIL_REACTOR_REACTOR_ACCEPTOR_HPP
556