ledger-core
Address.hpp
1 // AUTOGENERATED FILE - DO NOT MODIFY!
2 // This file generated by Djinni from wallet.djinni
3 
4 #ifndef DJINNI_GENERATED_ADDRESS_HPP
5 #define DJINNI_GENERATED_ADDRESS_HPP
6 
7 #include "../utils/optional.hpp"
8 #include <memory>
9 #include <string>
10 #ifndef LIBCORE_EXPORT
11  #if defined(_MSC_VER)
12  #include <libcore_export.h>
13  #else
14  #define LIBCORE_EXPORT
15  #endif
16 #endif
17 
18 namespace ledger { namespace core { namespace api {
19 
20 class BitcoinLikeAddress;
21 struct Currency;
22 
23 class LIBCORE_EXPORT Address {
24 public:
25  virtual ~Address() {}
26 
31  virtual std::experimental::optional<std::string> getDerivationPath() = 0;
32 
37  virtual std::string toString() = 0;
38 
39  virtual std::shared_ptr<BitcoinLikeAddress> asBitcoinLikeAddress() = 0;
40 
41  virtual bool isInstanceOfBitcoinLikeAddress() = 0;
42 
43  virtual Currency getCurrency() = 0;
44 
52  static std::shared_ptr<Address> parse(const std::string & address, const Currency & currency);
53 
60  static bool isValid(const std::string & address, const Currency & currency);
61 };
62 
63 } } } // namespace ledger::core::api
64 #endif //DJINNI_GENERATED_ADDRESS_HPP
Definition: Address.hpp:23
Definition: Currency.hpp:23
Definition: Account.cpp:8