LCOV - code coverage report
Current view: top level - src - select_context.cpp (source / functions) Coverage Total Hit
Test: coverage_filtered.info Lines: 100.0 % 15 15
Test Date: 2026-02-06 05:04:16 Functions: 100.0 % 3 3

            Line data    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              : #include <boost/corosio/select_context.hpp>
      11              : 
      12              : #if BOOST_COROSIO_HAS_SELECT
      13              : 
      14              : #include "src/detail/select/scheduler.hpp"
      15              : #include "src/detail/select/sockets.hpp"
      16              : #include "src/detail/select/acceptors.hpp"
      17              : 
      18              : #include <thread>
      19              : 
      20              : namespace boost::corosio {
      21              : 
      22          120 : select_context::
      23          120 : select_context()
      24          120 :     : select_context(std::thread::hardware_concurrency())
      25              : {
      26          120 : }
      27              : 
      28          120 : select_context::
      29              : select_context(
      30          120 :     unsigned concurrency_hint)
      31              : {
      32          240 :     sched_ = &make_service<detail::select_scheduler>(
      33          120 :         static_cast<int>(concurrency_hint));
      34              : 
      35              :     // Install socket/acceptor services.
      36              :     // These use socket_service and acceptor_service as key_type,
      37              :     // enabling runtime polymorphism.
      38          120 :     make_service<detail::select_socket_service>();
      39          120 :     make_service<detail::select_acceptor_service>();
      40          120 : }
      41              : 
      42          120 : select_context::
      43              : ~select_context()
      44              : {
      45          120 :     shutdown();
      46          120 :     destroy();
      47          120 : }
      48              : 
      49              : } // namespace boost::corosio
      50              : 
      51              : #endif // BOOST_COROSIO_HAS_SELECT
        

Generated by: LCOV version 2.3