• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

STEllAR-GROUP / hpx / #882

31 Aug 2023 07:44PM UTC coverage: 41.798% (-44.7%) from 86.546%
#882

push

19442 of 46514 relevant lines covered (41.8%)

126375.38 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

32.14
/libs/full/async_distributed/src/base_lco.cpp
1
//  Copyright (c) 2007-2021 Hartmut Kaiser
2
//  Copyright (c)      2011 Bryce Lelbach
3
//
4
//  SPDX-License-Identifier: BSL-1.0
5
//  Distributed under the Boost Software License, Version 1.0. (See accompanying
6
//  file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
7

8
#include <hpx/actions/transfer_action.hpp>
9
#include <hpx/actions_base/basic_action.hpp>
10
#include <hpx/async_distributed/base_lco.hpp>
11
#include <hpx/async_distributed/transfer_continuation_action.hpp>
12
#include <hpx/components_base/component_type.hpp>
13
#include <hpx/components_base/server/component_heap.hpp>
14
#include <hpx/naming_base/id_type.hpp>
15

16
#include <cstddef>
17
#include <exception>
18

19
namespace hpx { namespace lcos {
20

21
    void base_lco::set_exception(std::exception_ptr const& e)
×
22
    {
23
        // just rethrow the exception
24
        std::rethrow_exception(e);
×
25
    }
26

27
    void base_lco::connect(hpx::id_type const&) {}
×
28

29
    void base_lco::disconnect(hpx::id_type const&) {}
×
30

31
    components::component_type base_lco::get_component_type() noexcept
×
32
    {
33
        return components::get_component_type<base_lco>();
×
34
    }
35
    void base_lco::set_component_type(components::component_type type)
×
36
    {
37
        components::set_component_type<base_lco>(type);
38
    }
×
39

40
    base_lco::~base_lco() = default;
40,741✔
41

42
    void base_lco::set_event_nonvirt()
99✔
43
    {
44
        set_event();
99✔
45
    }
99✔
46

47
    void base_lco::set_exception_nonvirt(std::exception_ptr const& e)
×
48
    {
49
        set_exception(e);
×
50
    }
×
51

52
    void base_lco::connect_nonvirt(hpx::id_type const& id)
×
53
    {
54
        connect(id);
×
55
    }
×
56

57
    void base_lco::disconnect_nonvirt(hpx::id_type const& id)
×
58
    {
59
        disconnect(id);
×
60
    }
×
61
}}    // namespace hpx::lcos
62

63
///////////////////////////////////////////////////////////////////////////////
64
HPX_ACTION_USES_MESSAGE_COALESCING_NOTHROW_DEFINITION(
65
    hpx::lcos::base_lco::set_event_action, "lco_set_value_action",
66
    std::size_t(-1), std::size_t(-1))
67
HPX_ACTION_USES_MESSAGE_COALESCING_NOTHROW_DEFINITION(
68
    hpx::lcos::base_lco::set_exception_action, "lco_set_value_action",
69
    std::size_t(-1), std::size_t(-1))
70

71
///////////////////////////////////////////////////////////////////////////////
72
// Serialization support for the base LCO actions
73
HPX_REGISTER_ACTION_ID(hpx::lcos::base_lco::set_event_action,
198✔
74
    base_set_event_action, hpx::actions::base_set_event_action_id)
75
HPX_REGISTER_ACTION_ID(hpx::lcos::base_lco::set_exception_action,
192✔
76
    base_set_exception_action, hpx::actions::base_set_exception_action_id)
77
HPX_REGISTER_ACTION_ID(hpx::lcos::base_lco::connect_action, base_connect_action,
192✔
78
    hpx::actions::base_connect_action_id)
79
HPX_REGISTER_ACTION_ID(hpx::lcos::base_lco::disconnect_action,
192✔
80
    base_disconnect_action, hpx::actions::base_disconnect_action_id)
81

82
HPX_REGISTER_COMPONENT_HEAP(
×
83
    hpx::components::managed_component<hpx::lcos::base_lco>)
84

85
///////////////////////////////////////////////////////////////////////////////
86
HPX_DEFINE_COMPONENT_NAME(hpx::lcos::base_lco, hpx_lcos_base_lco)
×
87
HPX_DEFINE_GET_COMPONENT_TYPE_STATIC(
39✔
88
    hpx::lcos::base_lco, to_int(hpx::components::component_enum_type::base_lco))
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2025 Coveralls, Inc