19#ifndef PYSTON_FUNCTORS_H
20#define PYSTON_FUNCTORS_H
47template <
typename R,
typename T, R (*wrapped)(T)>
50 return wrapped(value);
65template <
typename R,
typename T, R (*wrapped)(T, T)>
68 return wrapped(left, right);
UnaryWrapper< T, T, std::sqrt > Sqrt
Wraps the square root function.
UnaryWrapper< T, T, std::atan > ArcTan
Wraps the arctan function.
UnaryWrapper< T, T, std::exp2 > Exp2
Wraps the exponential, base 2, function.
UnaryWrapper< T, T, std::asin > ArcSin
Wraps the arcsin function.
UnaryWrapper< T, T, std::sin > Sin
Wraps the sin function.
UnaryWrapper< T, T, std::acosh > ArcCosh
Wraps the hyperbolic arccos function.
UnaryWrapper< T, T, std::atanh > ArcTanh
Wraps the hyperbolic arctan function.
UnaryWrapper< T, T, std::cosh > Cosh
Wraps the hyperbolic cos function.
UnaryWrapper< T, T, std::abs > Abs
Wraps the abs function.
UnaryWrapper< T, T, std::tan > Tan
Wraps the tan function.
UnaryWrapper< T, T, std::log2 > Log2
Wraps the log, base 2, function.
UnaryWrapper< T, T, std::round > Round
Wraps the round function.
UnaryWrapper< T, T, std::acos > ArcCos
Wraps the arcos function.
UnaryWrapper< T, T, std::log > Log
Wraps the log function.
UnaryWrapper< T, T, std::cos > Cos
Wraps the cos function.
UnaryWrapper< T, T, std::sinh > Sinh
Wraps the hyperbolic sin function.
BinaryWrapper< T, T, std::pow > Pow
Wraps the power function.
UnaryWrapper< T, T, std::exp > Exp
Wraps the exponential function.
BinaryWrapper< T, T, std::fmod > Fmod
Wraps fmod.
UnaryWrapper< T, T, std::log10 > Log10
Wraps the log, base 10, function.
BinaryWrapper< T, T, std::atan2 > ArcTan2
Wraps atan2.
UnaryWrapper< T, T, std::tanh > Tanh
Wraps the hyperbolic tan function.
UnaryWrapper< T, T, std::asinh > ArcSinh
Wraps the hyperbolic arcsin function.
R operator()(T left, T right) const
T operator()(T value) const
R operator()(T value) const