diff options
author | Determinant <ted.sybil@gmail.com> | 2018-07-16 04:13:57 -0400 |
---|---|---|
committer | Determinant <ted.sybil@gmail.com> | 2018-07-16 04:13:57 -0400 |
commit | efd49718dfbb6c1f329e72026770b07a67348168 (patch) | |
tree | 4f29a41480c6ad42ad0fcf2b861c7acc7368b937 /src/type.h |
init
Diffstat (limited to 'src/type.h')
-rw-r--r-- | src/type.h | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/src/type.h b/src/type.h new file mode 100644 index 0000000..4665979 --- /dev/null +++ b/src/type.h @@ -0,0 +1,46 @@ +#ifndef _HOTSTUFF_TYPE_H +#define _HOTSTUFF_TYPE_H + +#include "salticidae/stream.h" +#include "salticidae/type.h" +#include "salticidae/util.h" + +namespace hotstuff { + +using salticidae::uint256_t; +using salticidae::DataStream; +using salticidae::htole; +using salticidae::letoh; +using salticidae::get_hex; +using salticidae::from_hex; +using salticidae::bytearray_t; + +inline std::string get_hex10(const uint256_t &x) { + return get_hex(x).substr(0, 10); +} + +class HotStuffError: public salticidae::SalticidaeError { + public: + template<typename... Args> + HotStuffError(Args... args): salticidae::SalticidaeError(args...) {} +}; + +class HotStuffInvalidEntity: public HotStuffError { + public: + template<typename... Args> + HotStuffInvalidEntity(Args... args): HotStuffError(args...) {} +}; + +using salticidae::Serializable; + +class Cloneable { + public: + virtual ~Cloneable() = default; + virtual Cloneable *clone() = 0; +}; + +using ReplicaID = uint16_t; + +} + +#endif |