mpc
Haskell-like feature supports in C++
mpc::applicatives::detail::liftA2_op Struct Reference

liftA2 :: (a -> b -> c) -> f a -> f b -> f c More...

#include <applicative.hpp>

Public Member Functions

template<class Fn , class Fa , class Fb >
constexpr auto operator() (Fn &&fn, Fa &&fa, Fb &&fb) const noexcept(noexcept(mpc::seq_apply(mpc::fmap(std::forward< Fn >(fn), std::forward< Fa >(fa)), std::forward< Fb >(fb)))) -> decltype(mpc::seq_apply(mpc::fmap(std::forward< Fn >(fn), std::forward< Fa >(fa)), std::forward< Fb >(fb)))
 

Detailed Description

liftA2 :: (a -> b -> c) -> f a -> f b -> f c

liftA2 f x y = f `fmap` x `seq_apply` y
constexpr partial< detail::liftA2_op > liftA2
liftA2 :: (a -> b -> c) -> f a -> f b -> f c
Definition: applicative.hpp:173
constexpr auto seq_apply
seq_apply :: f (a -> b) -> f a -> f b
Definition: applicative.hpp:170
constexpr partial< detail::fmap_op > fmap
fmap :: (a -> b) -> f a -> f b
Definition: applicative.hpp:161

The documentation for this struct was generated from the following file: