From 2eaa2875f0f2523439beb623fc63146ef295c8cc Mon Sep 17 00:00:00 2001 From: Dominick Allen Date: Wed, 9 Oct 2024 17:28:35 -0500 Subject: Use const references and constexpr as applicable. --- include/fud_result.hpp | 11 +++++------ include/fud_status.hpp | 8 ++++---- include/libfud.hpp | 4 ++-- 3 files changed, 11 insertions(+), 12 deletions(-) (limited to 'include') diff --git a/include/fud_result.hpp b/include/fud_result.hpp index 74954df..dae084a 100644 --- a/include/fud_result.hpp +++ b/include/fud_result.hpp @@ -18,7 +18,6 @@ #ifndef FUD_RESULT_HPP #define FUD_RESULT_HPP -#include #include namespace fud { @@ -58,22 +57,22 @@ class [[nodiscard]] Result { return (m_value.index() == 1); } - [[nodiscard]] T getOkay() const + [[nodiscard]] const T& getOkay() const& { return std::get(m_value); } - [[nodiscard]] E getError() const + [[nodiscard]] const E& getError() const& { return std::get(m_value); } - [[nodiscard]] T&& getOkay() + [[nodiscard]] const T&& getOkay() const&& { return std::move(std::get(m_value)); } - [[nodiscard]] E&& getError() + [[nodiscard]] const E&& getError() const&& { return std::move(std::get(m_value)); } @@ -91,7 +90,7 @@ class [[nodiscard]] Result { { } - explicit Result(T&& value) : m_value{std::move(value)} + explicit Result(T&& value): m_value{std::move(value)} { } diff --git a/include/fud_status.hpp b/include/fud_status.hpp index 6a9d653..f8f7687 100644 --- a/include/fud_status.hpp +++ b/include/fud_status.hpp @@ -42,7 +42,7 @@ enum class [[nodiscard]] FudStatus NotSupported }; -static inline const char* FudStatusToString(FudStatus status) +constexpr const char* FudStatusToString(FudStatus status) { switch (status) { case FudStatus::Success: @@ -86,19 +86,19 @@ static inline const char* FudStatusToString(FudStatus status) } } -static inline bool anyAreNull() +constexpr bool anyAreNull() { return false; } template -bool anyAreNull(const T* pointer) +constexpr bool anyAreNull(const T* pointer) { return pointer == nullptr; } template -bool anyAreNull(T pointer, Ts... pointers) +constexpr bool anyAreNull(T pointer, Ts... pointers) { if (pointer == nullptr) { return true; diff --git a/include/libfud.hpp b/include/libfud.hpp index c670ed4..5bc1630 100644 --- a/include/libfud.hpp +++ b/include/libfud.hpp @@ -51,8 +51,8 @@ FUD fud(); Result getEnv(const char* name); template -concept CStringRepr = requires(T a) { - { a.c_str() } -> std::convertible_to; +concept CStringRepr = requires(T strObj) { + { strObj.c_str() } -> std::convertible_to; }; template -- cgit v1.2.3