Coverage Report

Created: 2025-06-10 13:21

next uncovered line (L), next uncovered region (R), next uncovered branch (B)
/bitcoin/src/netmessagemaker.h
Line
Count
Source
1
// Copyright (c) 2009-2010 Satoshi Nakamoto
2
// Copyright (c) 2009-2020 The Bitcoin Core developers
3
// Distributed under the MIT software license, see the accompanying
4
// file COPYING or http://www.opensource.org/licenses/mit-license.php.
5
6
#ifndef BITCOIN_NETMESSAGEMAKER_H
7
#define BITCOIN_NETMESSAGEMAKER_H
8
9
#include <net.h>
10
#include <serialize.h>
11
12
namespace NetMsg {
13
    template <typename... Args>
14
    CSerializedNetMsg Make(std::string msg_type, Args&&... args)
15
12.9M
    {
16
12.9M
        CSerializedNetMsg msg;
17
12.9M
        msg.m_type = std::move(msg_type);
18
12.9M
        VectorWriter{msg.data, 0, std::forward<Args>(args)...};
19
12.9M
        return msg;
20
12.9M
    }
CSerializedNetMsg NetMsg::Make<bool, unsigned long const&>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bool&&, unsigned long const&)
Line
Count
Source
15
102k
    {
16
102k
        CSerializedNetMsg msg;
17
102k
        msg.m_type = std::move(msg_type);
18
102k
        VectorWriter{msg.data, 0, std::forward<Args>(args)...};
19
102k
        return msg;
20
102k
    }
CSerializedNetMsg NetMsg::Make<CBlockHeaderAndShortTxIDs const&>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, CBlockHeaderAndShortTxIDs const&)
Line
Count
Source
15
2.40k
    {
16
2.40k
        CSerializedNetMsg msg;
17
2.40k
        msg.m_type = std::move(msg_type);
18
2.40k
        VectorWriter{msg.data, 0, std::forward<Args>(args)...};
19
2.40k
        return msg;
20
2.40k
    }
CSerializedNetMsg NetMsg::Make<std::vector<CInv, std::allocator<CInv> >&>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::vector<CInv, std::allocator<CInv> >&)
Line
Count
Source
15
9.98M
    {
16
9.98M
        CSerializedNetMsg msg;
17
9.98M
        msg.m_type = std::move(msg_type);
18
9.98M
        VectorWriter{msg.data, 0, std::forward<Args>(args)...};
19
9.98M
        return msg;
20
9.98M
    }
CSerializedNetMsg NetMsg::Make<int const&, unsigned long&, long const&, unsigned long&, ParamsWrapper<CNetAddr::SerParams, CService>, unsigned long&, ParamsWrapper<CNetAddr::SerParams, CService>, unsigned long&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, int const&, bool const&>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int const&, unsigned long&, long const&, unsigned long&, ParamsWrapper<CNetAddr::SerParams, CService>&&, unsigned long&, ParamsWrapper<CNetAddr::SerParams, CService>&&, unsigned long&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, int const&, bool const&)
Line
Count
Source
15
88.7k
    {
16
88.7k
        CSerializedNetMsg msg;
17
88.7k
        msg.m_type = std::move(msg_type);
18
88.7k
        VectorWriter{msg.data, 0, std::forward<Args>(args)...};
19
88.7k
        return msg;
20
88.7k
    }
CSerializedNetMsg NetMsg::Make<>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)
Line
Count
Source
15
399k
    {
16
399k
        CSerializedNetMsg msg;
17
399k
        msg.m_type = std::move(msg_type);
18
399k
        VectorWriter{msg.data, 0, std::forward<Args>(args)...};
19
399k
        return msg;
20
399k
    }
CSerializedNetMsg NetMsg::Make<unsigned int const&, unsigned long const&>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned int const&, unsigned long const&)
Line
Count
Source
15
88.7k
    {
16
88.7k
        CSerializedNetMsg msg;
17
88.7k
        msg.m_type = std::move(msg_type);
18
88.7k
        VectorWriter{msg.data, 0, std::forward<Args>(args)...};
19
88.7k
        return msg;
20
88.7k
    }
Unexecuted instantiation: CSerializedNetMsg NetMsg::Make<std::array<std::byte, 168ul> const&>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::array<std::byte, 168ul> const&)
CSerializedNetMsg NetMsg::Make<CBlockLocator const&, uint256>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, CBlockLocator const&, uint256&&)
Line
Count
Source
15
91.6k
    {
16
91.6k
        CSerializedNetMsg msg;
17
91.6k
        msg.m_type = std::move(msg_type);
18
91.6k
        VectorWriter{msg.data, 0, std::forward<Args>(args)...};
19
91.6k
        return msg;
20
91.6k
    }
CSerializedNetMsg NetMsg::Make<ParamsWrapper<TransactionSerParams, CTransaction const> >(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, ParamsWrapper<TransactionSerParams, CTransaction const>&&)
Line
Count
Source
15
2.07k
    {
16
2.07k
        CSerializedNetMsg msg;
17
2.07k
        msg.m_type = std::move(msg_type);
18
2.07k
        VectorWriter{msg.data, 0, std::forward<Args>(args)...};
19
2.07k
        return msg;
20
2.07k
    }
CSerializedNetMsg NetMsg::Make<std::span<unsigned char, 18446744073709551615ul> >(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::span<unsigned char, 18446744073709551615ul>&&)
Line
Count
Source
15
2.00k
    {
16
2.00k
        CSerializedNetMsg msg;
17
2.00k
        msg.m_type = std::move(msg_type);
18
2.00k
        VectorWriter{msg.data, 0, std::forward<Args>(args)...};
19
2.00k
        return msg;
20
2.00k
    }
CSerializedNetMsg NetMsg::Make<ParamsWrapper<TransactionSerParams, CBlock const> >(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, ParamsWrapper<TransactionSerParams, CBlock const>&&)
Line
Count
Source
15
3.31k
    {
16
3.31k
        CSerializedNetMsg msg;
17
3.31k
        msg.m_type = std::move(msg_type);
18
3.31k
        VectorWriter{msg.data, 0, std::forward<Args>(args)...};
19
3.31k
        return msg;
20
3.31k
    }
Unexecuted instantiation: CSerializedNetMsg NetMsg::Make<CMerkleBlock&>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, CMerkleBlock&)
CSerializedNetMsg NetMsg::Make<CBlockHeaderAndShortTxIDs&>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, CBlockHeaderAndShortTxIDs&)
Line
Count
Source
15
526
    {
16
526
        CSerializedNetMsg msg;
17
526
        msg.m_type = std::move(msg_type);
18
526
        VectorWriter{msg.data, 0, std::forward<Args>(args)...};
19
526
        return msg;
20
526
    }
Unexecuted instantiation: CSerializedNetMsg NetMsg::Make<BlockTransactions&>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, BlockTransactions&)
Unexecuted instantiation: CSerializedNetMsg NetMsg::Make<std::vector<CBlockHeader, std::allocator<CBlockHeader> > >(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::vector<CBlockHeader, std::allocator<CBlockHeader> >&&)
CSerializedNetMsg NetMsg::Make<ParamsWrapper<TransactionSerParams, std::vector<CBlock, std::allocator<CBlock> > > >(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, ParamsWrapper<TransactionSerParams, std::vector<CBlock, std::allocator<CBlock> > >&&)
Line
Count
Source
15
103
    {
16
103
        CSerializedNetMsg msg;
17
103
        msg.m_type = std::move(msg_type);
18
103
        VectorWriter{msg.data, 0, std::forward<Args>(args)...};
19
103
        return msg;
20
103
    }
Unexecuted instantiation: CSerializedNetMsg NetMsg::Make<BlockTransactionsRequest&>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, BlockTransactionsRequest&)
CSerializedNetMsg NetMsg::Make<unsigned long&>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned long&)
Line
Count
Source
15
2.10M
    {
16
2.10M
        CSerializedNetMsg msg;
17
2.10M
        msg.m_type = std::move(msg_type);
18
2.10M
        VectorWriter{msg.data, 0, std::forward<Args>(args)...};
19
2.10M
        return msg;
20
2.10M
    }
Unexecuted instantiation: CSerializedNetMsg NetMsg::Make<BlockFilter const&>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, BlockFilter const&)
Unexecuted instantiation: CSerializedNetMsg NetMsg::Make<unsigned char&, uint256, uint256&, std::vector<uint256, std::allocator<uint256> >&>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned char&, uint256&&, uint256&, std::vector<uint256, std::allocator<uint256> >&)
Unexecuted instantiation: CSerializedNetMsg NetMsg::Make<unsigned char&, uint256, std::vector<uint256, std::allocator<uint256> >&>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned char&, uint256&&, std::vector<uint256, std::allocator<uint256> >&)
CSerializedNetMsg NetMsg::Make<ParamsWrapper<CAddress::SerParams, std::vector<CAddress, std::allocator<CAddress> > > >(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, ParamsWrapper<CAddress::SerParams, std::vector<CAddress, std::allocator<CAddress> > >&&)
Line
Count
Source
15
145
    {
16
145
        CSerializedNetMsg msg;
17
145
        msg.m_type = std::move(msg_type);
18
145
        VectorWriter{msg.data, 0, std::forward<Args>(args)...};
19
145
        return msg;
20
145
    }
CSerializedNetMsg NetMsg::Make<long&>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, long&)
Line
Count
Source
15
88.7k
    {
16
88.7k
        CSerializedNetMsg msg;
17
88.7k
        msg.m_type = std::move(msg_type);
18
88.7k
        VectorWriter{msg.data, 0, std::forward<Args>(args)...};
19
88.7k
        return msg;
20
88.7k
    }
21
} // namespace NetMsg
22
23
#endif // BITCOIN_NETMESSAGEMAKER_H