LeechCraft  0.6.70-15082-g543737046d
Modular cross-platform feature rich live environment.
LC::Util::InstanceFunctor< std::optional< T > > Struct Template Reference

Implementation of the Functor class for std::optional. More...

#include "functor.h"

Public Types

template<typename F >
using FmapResult_t = std::optional< detail::WrapVoidResult_t< std::decay_t< std::result_of_t< F(T)> >> >
 

Static Public Member Functions

template<typename F >
static FmapResult_t< F > Apply (const std::optional< T > &t, const F &f)
 

Detailed Description

template<typename T>
struct LC::Util::InstanceFunctor< std::optional< T > >

Implementation of the Functor class for std::optional.

The implementation applies the function to the contents of the std::optional if it's not empty, otherwise it just leaves an empty std::optional.

This is analogous to the Maybe type.

Template Parameters
TThe element type contained inside the std::optional.

Definition at line 226 of file functor.h.

Member Typedef Documentation

◆ FmapResult_t

template<typename T >
template<typename F >
using LC::Util::InstanceFunctor< std::optional< T > >::FmapResult_t = std::optional<detail::WrapVoidResult_t<std::decay_t<std::result_of_t<F (T)> >> >

Definition at line 229 of file functor.h.

Member Function Documentation

◆ Apply()

template<typename T >
template<typename F >
static FmapResult_t<F> LC::Util::InstanceFunctor< std::optional< T > >::Apply ( const std::optional< T > &  t,
const F &  f 
)
inlinestatic

Definition at line 232 of file functor.h.


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