Line data Source code
1 : /**
2 : * Copyright Soramitsu Co., Ltd. All Rights Reserved.
3 : * SPDX-License-Identifier: Apache-2.0
4 : */
5 :
6 : #include "backend/protobuf/commands/proto_add_peer.hpp"
7 :
8 : namespace shared_model {
9 : namespace proto {
10 :
11 : template <typename CommandType>
12 : AddPeer::AddPeer(CommandType &&command)
13 2822 : : CopyableProto(std::forward<CommandType>(command)),
14 2822 : add_peer_{proto_->add_peer()},
15 : peer_{[this] { return proto::Peer(add_peer_.peer()); }} {}
16 :
17 : template AddPeer::AddPeer(AddPeer::TransportType &);
18 : template AddPeer::AddPeer(const AddPeer::TransportType &);
19 : template AddPeer::AddPeer(AddPeer::TransportType &&);
20 :
21 : AddPeer::AddPeer(const AddPeer &o) : AddPeer(o.proto_) {}
22 :
23 : AddPeer::AddPeer(AddPeer &&o) noexcept : AddPeer(std::move(o.proto_)) {}
24 :
25 : const interface::Peer &AddPeer::peer() const {
26 1039 : return *peer_;
27 : }
28 :
29 : } // namespace proto
30 : } // namespace shared_model
|