diff options
Diffstat (limited to 'src/libutil/result.hh')
-rw-r--r-- | src/libutil/result.hh | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/src/libutil/result.hh b/src/libutil/result.hh new file mode 100644 index 000000000..b01766fe4 --- /dev/null +++ b/src/libutil/result.hh @@ -0,0 +1,24 @@ +#pragma once +/// @file + +#include <boost/outcome/std_outcome.hpp> +#include <boost/outcome/std_result.hpp> +#include <boost/outcome/success_failure.hpp> +#include <exception> + +namespace nix { + +template<typename T, typename E = std::exception_ptr> +using Result = boost::outcome_v2::std_result<T, E>; + +template<typename T, typename D, typename E = std::exception_ptr> +using Outcome = boost::outcome_v2::std_outcome<T, D, E>; + +namespace result { + +using boost::outcome_v2::success; +using boost::outcome_v2::failure; + +} + +} |