29 template<
typename LeftSig,
typename RightSig>
32 using Left_f = std::function<LeftSig>;
33 using Right_f = std::function<RightSig>;
51 template<
typename L,
typename R>
65 explicit operator bool ()
const
67 return Left_ && Right_;
83 template<
typename... Args>
84 auto Left (Args&&... args)
const
86 return Left_ (std::forward<Args> (args)...);
102 template<
typename... Args>
103 auto Right (Args&&... args)
const
105 return Right_ (std::forward<Args> (args)...);