hyperledger/iroha
Iroha - A simple, decentralized ledger http://iroha.tech
compare_and_set_account_detail.hpp
Go to the documentation of this file.
1 
6 #ifndef IROHA_SHARED_MODEL_COMPARE_AND_SET_ACCOUNT_DETAIL_HPP
7 #define IROHA_SHARED_MODEL_COMPARE_AND_SET_ACCOUNT_DETAIL_HPP
8 
9 #include <optional>
11 
13 
14 namespace shared_model {
15  namespace interface {
16 
22  : public ModelPrimitive<CompareAndSetAccountDetail> {
23  public:
27  virtual const types::AccountIdType &accountId() const = 0;
28 
32  virtual const types::AccountDetailKeyType &key() const = 0;
33 
37  virtual const types::AccountDetailValueType &value() const = 0;
38 
43  virtual bool checkEmpty() const = 0;
44 
48  virtual const std::optional<types::AccountDetailValueType> oldValue()
49  const = 0;
50 
51  std::string toString() const override;
52 
53  bool operator==(const ModelType &rhs) const override;
54  };
55  } // namespace interface
56 } // namespace shared_model
57 
58 #endif // IROHA_SHARED_MODEL_COMPARE_AND_SET_ACCOUNT_DETAIL_HPP
Definition: compare_and_set_account_detail.hpp:21
CompareAndSetAccountDetail ModelType
Definition: model_primitive.hpp:27
virtual const types::AccountDetailValueType & value() const =0
virtual const types::AccountIdType & accountId() const =0
std::string AccountDetailKeyType
Type of account detail key.
Definition: types.hpp:81
virtual const std::optional< types::AccountDetailValueType > oldValue() const =0
std::string toString() const override
Definition: compare_and_set_account_detail.cpp:11
std::string AccountIdType
Type of account id.
Definition: types.hpp:38
virtual const types::AccountDetailKeyType & key() const =0
Definition: model_primitive.hpp:22
std::string AccountDetailValueType
Type of account detail value.
Definition: types.hpp:83
Definition: command_executor.hpp:13
bool operator==(const ModelType &rhs) const override
Definition: compare_and_set_account_detail.cpp:22