E.V.E  0.1-beta
Decorators

Detailed Description

Decorators are higher-order functions that modify the behavior of other functions. Every decorators returns a new callable object that will behave as the callable passed as parameters but with different computation scheme (e.g more precision, more speed, etc...).

Convenience header:

#include <eve/function/decorator.hpp>

Variables

constexpr diff_type< 1 > const eve::diff = {}
 Higher-order Callable Object imbuing derivative semantics onto other Callable Objects. More...
 
constexpr diff_type< 1 > const eve::diff_1st = {}
 Higher-order Callable Object imbuing derivative semantics onto other Callable Objects. More...
 
constexpr diff_type< 2 > const eve::diff_2nd = {}
 Higher-order Callable Object imbuing derivative semantics onto other Callable Objects. More...
 
constexpr diff_type< 3 > const eve::diff_3rd = {}
 Higher-order Callable Object imbuing derivative semantics onto other Callable Objects. More...
 
template<auto N>
constexpr diff_type< N > const eve::diff_nth = diff_type<N>{}
 Higher-order Callable Object imbuing derivative semantics onto other Callable Objects. More...
 
constexpr almost_type const eve::almost = {}
 Higher-order Callable Object imbuing a tolerant to little errors semantic onto other Callable Objects. More...
 
constexpr definitely_type const eve::definitely = {}
 Higher-order Callable Object imbuing a tolerant to small errors semantic onto other Callable Objects. More...
 
constexpr tolerant_type const eve::tolerant = {}
 Higher-order Callable Object imbuing a less strict semantic onto other Callable Objects. More...
 
constexpr numeric_type const eve::numeric = {}
 Higher-order Callable Object imbuing non invalid return preference semantic onto other Callable Objects. More...
 
constexpr p_kind_type const eve::p_kind = {}
 Higher-order Callable Object imbuing p_kind behaviour onto other Callable Objects. More...
 
constexpr pedantic_type const eve::pedantic = {}
 Higher-order Callable Object imbuing more standard semantic onto other Callable Objects. More...
 
constexpr q_kind_type const eve::q_kind = {}
 Higher-order Callable Object imbuing q_kind behaviour onto other Callable Objects. More...
 
constexpr raw_type const eve::raw = {}
 Higher-order Callable Object imbuing quick and dirty behaviour onto other Callable Objects. More...
 
constexpr regular_type const eve::regular = {}
 Higher-order Callable Object having identity semantic onto other Callable Objects. More...
 
constexpr upward_type const eve::upward = {}
 Higher-order Callable Object imbuing upward rounding semantic onto other Callable Objects. More...
 
constexpr downward_type const eve::downward = {}
 Higher-order Callable Object imbuing rounding downard semantic onto other Callable Objects. More...
 
constexpr to_nearest_type const eve::to_nearest = {}
 Higher-order Callable Object imbuing rounding to nearest semantic onto other Callable Objects. More...
 
constexpr toward_zero_type const eve::toward_zero = {}
 Higher-order Callable Object imbuing rounding toward zero semantic onto other Callable Objects. More...
 
constexpr saturated_type const eve::saturated = {}
 Higher-order Callable Object imbuing saturation semantic onto other Callable Objects. More...
 
constexpr splat_type const eve::splat = {}
 Higher-order Callable Object allowing reduction to generate wide results instead of scalars. More...
 
constexpr successor_type const eve::successor = {}
 Higher-order Callable Object imbuing incrementation behaviour onto other Callable Objects. More...