Commit bfa136e8 authored by tqcq's avatar tqcq
Browse files

feat set default value

parent 2268a7e4
Loading
Loading
Loading
Loading
+2 −1
Original line number Diff line number Diff line
#ifndef SLED_FUTURES_FUTURE_H
#define SLED_FUTURES_FUTURE_H

#include <exception>
#pragma once
#include "sled/exec/detail/invoke_result.h"
#include "sled/futures/internal/failure_handling.h"
@@ -59,7 +60,7 @@ struct FutureData {

//

template<typename T, typename FailureT>
template<typename T, typename FailureT = std::exception>
class Future {
    static_assert(!std::is_same<T, void>::value, "Future<void, _> is not allowed. Use Future<bool, _> instead");
    static_assert(!std::is_same<FailureT, void>::value, "Future<_, void> is not allowed. Use Future<_, bool> instead");
+2 −2
Original line number Diff line number Diff line
@@ -10,8 +10,8 @@ namespace sled {
template<typename T, typename FailureT>
class Future;

template<typename T, typename FailureT>
class Promise {
template<typename T, typename FailureT = std::exception>
class Promise final {
    static_assert(!std::is_same<T, void>::value, "Promise<void, _> is not allowed. Use Promise<bool, _> instead");
    static_assert(!std::is_same<FailureT, void>::value,
                  "Promise<_, void> is not allowed. Use Promise<_, bool> instead");