diff options
-rw-r--r-- | include/odhtdb/Hash.hpp | 3 | ||||
-rw-r--r-- | src/Hash.cpp | 12 |
2 files changed, 15 insertions, 0 deletions
diff --git a/include/odhtdb/Hash.hpp b/include/odhtdb/Hash.hpp index c1212ec..05e85d2 100644 --- a/include/odhtdb/Hash.hpp +++ b/include/odhtdb/Hash.hpp @@ -38,6 +38,9 @@ namespace odhtdb size_t operator()() const; bool operator==(const Hash &other) const; + bool operator!=(const Hash &other) const; + + bool isEmpty() const; std::string toString() const; private: diff --git a/src/Hash.cpp b/src/Hash.cpp index 364cddd..4b045a4 100644 --- a/src/Hash.cpp +++ b/src/Hash.cpp @@ -17,6 +17,8 @@ namespace odhtdb static SodiumInitializer __sodiumInitializer; + static const Hash EMPTY_HASH; + Hash::Hash() { memset(data, 0, HASH_BYTE_SIZE); @@ -44,8 +46,18 @@ namespace odhtdb return memcmp(data, other.data, HASH_BYTE_SIZE) == 0; } + bool Hash::operator!=(const Hash &other) const + { + return !operator==(other); + } + std::string Hash::toString() const { return bin2hex(data, HASH_BYTE_SIZE); } + + bool Hash::isEmpty() const + { + return *this == EMPTY_HASH; + } } |