#include <boost/optional.hpp>
#include "oldcppkludges.h"
#include "typelist.h"
#include "applicative.h"
Go to the source code of this file.
|
template<template< typename... > class Monad, typename... Args, typename V > |
Monad< Args..., V > | LeechCraft::Util::Return (const V &v) |
|
template<template< typename... > class Monad, typename... Args1, typename... Args2> |
constexpr bool | LeechCraft::Util::detail::IsCompatibleMonadImpl (const Monad< Args1... > *, const Monad< Args2... > *, int) |
|
template<typename T1 , typename T2 > |
constexpr bool | LeechCraft::Util::detail::IsCompatibleMonadImpl (const T1 *, const T2 *,...) |
|
template<typename T > |
constexpr T * | LeechCraft::Util::detail::declptr () noexcept |
|
template<typename T1 , typename T2 > |
constexpr bool | LeechCraft::Util::detail::IsCompatibleMonad () |
|
template<typename MV , typename F > |
BindResult_t< MV, F > | LeechCraft::Util::Bind (const MV &value, const F &f) |
|
template<typename MV , typename F > |
auto | LeechCraft::Util::operator>> (const MV &value, const F &f) -> decltype(Bind(value, f)) |
|