|
template<template< typename... > class Monad, typename... Args, typename V > |
auto | LC::Util::Return (const V &v) |
|
template<template< typename... > class Monad, typename... Args1, typename... Args2> |
constexpr bool | LC::Util::detail::IsCompatibleMonadImpl (const Monad< Args1... > *, const Monad< Args2... > *, int) |
|
template<typename T1 , typename T2 > |
constexpr bool | LC::Util::detail::IsCompatibleMonadImpl (const T1 *, const T2 *,...) |
|
template<typename T > |
constexpr T * | LC::Util::detail::declptr () noexcept |
|
template<typename T1 , typename T2 > |
constexpr bool | LC::Util::detail::IsCompatibleMonad () |
|
template<typename MV , typename F > |
BindResult_t< MV, F > | LC::Util::Bind (const MV &value, const F &f) |
|
template<typename MV , typename F > |
auto | LC::Util::operator>> (const MV &value, const F &f) -> decltype(Bind(value, f)) |
|
template<typename MV > |
auto | LC::Util::Do (const MV &value) |
|
template<typename MV , typename FHead , typename... FArgs> |
auto | LC::Util::Do (const MV &value, const FHead &fHead, const FArgs &... fArgs) |
|