From af017fa7983e6730b2f8fb6acee221dd39c02b7a Mon Sep 17 00:00:00 2001 From: Felix Morgner Date: Tue, 14 Jul 2026 15:27:49 +0200 Subject: kstd: extract result helper alias --- libs/kstd/kstd/result.hpp | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 libs/kstd/kstd/result.hpp (limited to 'libs/kstd') diff --git a/libs/kstd/kstd/result.hpp b/libs/kstd/kstd/result.hpp new file mode 100644 index 00000000..7b027a8d --- /dev/null +++ b/libs/kstd/kstd/result.hpp @@ -0,0 +1,35 @@ +#ifndef KSTD_RESULT_HPP +#define KSTD_RESULT_HPP + +#include + +#include +#include +#include + +namespace kstd +{ + + template + using result = std::expected; + + template + requires(!std::is_void_v) + constexpr auto inline success(SuccessType && value) -> result> + { + return result>{std::in_place, std::forward(value)}; + } + + constexpr auto inline success() -> result + { + return result{std::in_place}; + } + + constexpr auto inline failure(error_code error) -> std::unexpected + { + return std::unexpected(error); + } + +} // namespace kstd + +#endif \ No newline at end of file -- cgit v1.2.3