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_create_asset.hpp"
7 :
8 : namespace shared_model {
9 : namespace proto {
10 :
11 : template <typename CommandType>
12 : CreateAsset::CreateAsset(CommandType &&command)
13 4213 : : CopyableProto(std::forward<CommandType>(command)),
14 4221 : create_asset_{proto_->create_asset()},
15 4221 : precision_{
16 4221 : static_cast<const PrecisionType>(create_asset_.precision())} {}
17 :
18 : template CreateAsset::CreateAsset(CreateAsset::TransportType &);
19 : template CreateAsset::CreateAsset(const CreateAsset::TransportType &);
20 : template CreateAsset::CreateAsset(CreateAsset::TransportType &&);
21 :
22 : CreateAsset::CreateAsset(const CreateAsset &o) : CreateAsset(o.proto_) {}
23 :
24 : CreateAsset::CreateAsset(CreateAsset &&o) noexcept
25 4221 : : CreateAsset(std::move(o.proto_)) {}
26 :
27 : const interface::types::AssetNameType &CreateAsset::assetName() const {
28 1707 : return create_asset_.asset_name();
29 : }
30 :
31 : const interface::types::DomainIdType &CreateAsset::domainId() const {
32 1718 : return create_asset_.domain_id();
33 : }
34 :
35 : const CreateAsset::PrecisionType &CreateAsset::precision() const {
36 1713 : return precision_;
37 : }
38 :
39 : } // namespace proto
40 : } // namespace shared_model
|