diff options
author | Steven Le Rouzic <steven.lerouzic@gmail.com> | 2025-03-14 18:53:37 +0100 |
---|---|---|
committer | Steven Le Rouzic <steven.lerouzic@gmail.com> | 2025-03-14 18:53:37 +0100 |
commit | 4630cb5237aea7749ac9938c738146c798e305cb (patch) | |
tree | 38ba9e41c3bf8408df97b7548ef112e2af61cd13 | |
parent | dce2c187ec96aedcfa703ffec9c4c91f0a49ca69 (diff) |
Add missing is_empty methods
-rw-r--r-- | asl/containers/buffer.hpp | 2 | ||||
-rw-r--r-- | asl/containers/hash_map.hpp | 2 | ||||
-rw-r--r-- | asl/containers/hash_set.hpp | 2 | ||||
-rw-r--r-- | asl/strings/string.hpp | 3 |
4 files changed, 9 insertions, 0 deletions
diff --git a/asl/containers/buffer.hpp b/asl/containers/buffer.hpp index 0cad78f..bb32f89 100644 --- a/asl/containers/buffer.hpp +++ b/asl/containers/buffer.hpp @@ -273,6 +273,8 @@ public: return decode_size(load_size_encoded()); } + [[nodiscard]] constexpr bool is_empty() const { return size() == 0; } + [[nodiscard]] constexpr isize_t capacity() const { if constexpr (kInlineCapacity == 0) diff --git a/asl/containers/hash_map.hpp b/asl/containers/hash_map.hpp index cf2f0b2..8c201a9 100644 --- a/asl/containers/hash_map.hpp +++ b/asl/containers/hash_map.hpp @@ -96,6 +96,8 @@ public: using Base::size; + using Base::is_empty; + using Base::remove; using Base::contains; diff --git a/asl/containers/hash_set.hpp b/asl/containers/hash_set.hpp index 5422d5e..6e6f851 100644 --- a/asl/containers/hash_set.hpp +++ b/asl/containers/hash_set.hpp @@ -386,6 +386,8 @@ public: [[nodiscard]] constexpr isize_t size() const { return m_size; } + [[nodiscard]] constexpr bool is_empty() const { return m_size == 0; } + template<typename... Args> void insert(Args&&... args) requires constructible_from<T, Args&&...> diff --git a/asl/strings/string.hpp b/asl/strings/string.hpp index 7254762..c95e151 100644 --- a/asl/strings/string.hpp +++ b/asl/strings/string.hpp @@ -45,6 +45,9 @@ public: constexpr string& operator=(string&&) = default; [[nodiscard]] constexpr isize_t size() const { return m_buffer.size(); } + + [[nodiscard]] constexpr bool is_empty() const { return m_buffer.is_empty(); } + [[nodiscard]] constexpr const char* data() const { return m_buffer.data(); } // NOLINTNEXTLINE(*explicit*) |