LeechCraft  0.6.70-10870-g558588d6ec
Modular cross-platform feature rich live environment.
either.h File Reference
#include <type_traits>
#include <boost/variant.hpp>
#include "functor.h"
#include "applicative.h"
#include "monad.h"
#include "visitor.h"
+ Include dependency graph for either.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  LeechCraft::Util::Either< L, R >
 
struct  LeechCraft::Util::InstanceFunctor< Either< L, R > >
 
struct  LeechCraft::Util::InstanceApplicative< Either< L, R > >
 
struct  LeechCraft::Util::InstanceApplicative< Either< L, R > >::GSLResult< typename >
 
struct  LeechCraft::Util::InstanceApplicative< Either< L, R > >::GSLResult< Either< L, V > >
 
struct  LeechCraft::Util::InstanceMonad< Either< L, R > >
 

Namespaces

 LeechCraft
 
 LeechCraft::Util
 

Functions

template<typename L , typename R , typename F , typename = std::result_of_t<F ()>>
LeechCraft::Util::RightOr (const Either< L, R > &either, F &&f)
 
template<typename L , typename R >
LeechCraft::Util::RightOr (const Either< L, R > &either, const R &r)
 
template<template< typename > class Cont, typename L , typename R >
std::pair< Cont< L >, Cont< R > > LeechCraft::Util::PartitionEithers (const Cont< Either< L, R >> &eithers)
 
template<typename Left , typename Right , typename... Args>
auto LeechCraft::Util::Visit (const Either< Left, Right > &either, Args &&... args)