CRTP base class defining an EVE's Callable Object. More...
#include <eve/traits/overload/default_behaviors.hpp>
Defined in Header
All EVE Callable Object use a similar protocol to find and call proper architecture or type specific implementation. This protocol includes options checks and management and proper level of error reporting. eve::callable is the most general base class for defining such a Callable Object without having to manually handles all these details.
Func | Type of current Callable Object being implemented. |
OptionsValues | Type of stored options. |
Options | List of supported option specifications. |
Public Member Functions | |
constexpr auto | operator[] (O o) const |
Adds an option to current callable. | |
constexpr auto | options () const |
Retrieves the current options' state, including processed default. | |
Friends | |
template<template< typename > class F2, typename OV2 , typename... O2> | |
constexpr bool | operator== (callable const &, callable< F2, OV2, O2... > const &) |
Checks if two callable are instances of the same function. | |