|
template<typename F1 , typename F2 , typename ... Fs> |
std::enable_if<(detail::is_hydra_functor< F1 >::value||detail::is_hydra_lambda< F1 >::value) &&(detail::is_hydra_functor< F2 >::value||detail::is_hydra_lambda< F2 >::value) &&detail::all_true<(detail::is_hydra_functor< Fs >::value||detail::is_hydra_lambda< Fs >::value)... >::value, Multiply< F1, F2, Fs... > >::type | hydra::multiply (F1 const &f1, F2 const &f2, Fs const &... functors) |
|
template<typename T1 , typename T2 > |
std::enable_if<(detail::is_hydra_functor< T1 >::value||detail::is_hydra_lambda< T1 >::value) &&(detail::is_hydra_functor< T2 >::value||detail::is_hydra_lambda< T2 >::value), Multiply< T1, T2 > >::type | hydra::operator* (T1 const &F1, T2 const &F2) |
|
template<typename T , typename U > |
std::enable_if<(detail::is_hydra_functor< T >::value||detail::is_hydra_lambda< T >::value) &&(std::is_arithmetic< U >::value), Multiply< Constant< U >, T > >::type | hydra::operator* (U const cte, T const &F) |
|
template<typename T , typename U > |
std::enable_if<(detail::is_hydra_functor< T >::value||detail::is_hydra_lambda< T >::value) &&(std::is_arithmetic< U >::value), Multiply< Constant< U >, T > >::type | hydra::operator* (T const &F, U cte) |
|
template<typename T , typename U > |
std::enable_if<(detail::is_hydra_functor< T >::value||detail::is_hydra_lambda< T >::value) &&(std::is_arithmetic< U >::value), Multiply< Constant< hydra::complex< U > >, T > >::type | hydra::operator* (hydra::complex< U > const &cte, T const &F) |
|
template<typename T , typename U > |
std::enable_if<(detail::is_hydra_functor< T >::value||detail::is_hydra_lambda< T >::value) &&(std::is_arithmetic< U >::value), Multiply< Constant< U >, T > >::type | hydra::operator* (T const &F, hydra::complex< U > const &cte) |
|