LeechCraft
0.6.70-15082-g543737046d
Modular cross-platform feature rich live environment.
|
The Functor class is used for types that can be mapped over. More...
#include "functor.h"
Public Types | |
using | UndefinedTag = void |
template<typename F > | |
using | FmapResult_t = detail::ImplementationType |
The type of the functor after its elements were mapped by the function F. More... | |
Static Public Member Functions | |
template<typename F > | |
static FmapResult_t< F > | Apply (const T &functor, const F &function) |
Applies the function to the each of the elements inside the functor. More... | |
The Functor class is used for types that can be mapped over.
Minimal complete definition:
For a reference imolementation please see InstanceFunctor<std::optional<T>>.
T | The functor type instantiated with some concrete containee type. |
using LC::Util::InstanceFunctor< T >::FmapResult_t = detail::ImplementationType |
The type of the functor after its elements were mapped by the function F.
This type should correspond to the return type of the Apply() function when passed this functor and a function of type F.
F | The type of the function to apply to the elements inside this functor. |
using LC::Util::InstanceFunctor< T >::UndefinedTag = void |
|
static |
Applies the function to the each of the elements inside the functor.
[in] | functor | The functor whose values are subject to function. |
[in] | function | The function that should be applied to the values in the functor. |
F | The type of the function to apply to the elements in the function. |
Referenced by LC::Util::IsFunctor().