Go to the source code of this file.
|
| #define | binary_operator(_name, _op) |
| |
| #define | binary_operator_fun(_name, _op) |
| |
| #define | unary_operator(_name, _op) |
| |
◆ binary_operator
| #define binary_operator |
( |
|
_name, |
|
|
|
_op |
|
) |
| |
Value:struct _name \
{ \
template<typename nt_larg, typename nt_rarg, \
nt_out operator()(const nt_larg &larg, const nt_rarg &rarg) const \
{ return static_cast<nt_out>(larg) _op static_cast<nt_out>(rarg); } \
static constexpr const char *name(){ return #_op; } \
};
◆ binary_operator_fun
| #define binary_operator_fun |
( |
|
_name, |
|
|
|
_op |
|
) |
| |
Value:struct _name \
{ \
template<typename nt_larg, typename nt_rarg, \
nt_out operator()(const nt_larg &larg, const nt_rarg &rarg) const \
{ return _op(static_cast<nt_out>(larg), static_cast<nt_out>(rarg)); } \
static constexpr const char *name(){ return #_op; } \
};
◆ unary_operator
| #define unary_operator |
( |
|
_name, |
|
|
|
_op |
|
) |
| |
Value:struct _name \
{ \
template<typename nt_arg> \
nt_arg operator()(const nt_arg &arg) const \
{ return static_cast<nt_arg>(_op arg); } \
static constexpr const char *name(){ return #_op; } \
};