|
template<typename ValueType , typename ... Args> |
auto | construct (Args &&... args) -> std::enable_if_t< expr_detail::are_any_observable< Args ... >::value, expression_node< ValueType >> |
| Construct an object. More...
|
|
template<typename To , typename From > |
auto | static_expr_cast (From &&from) -> std::enable_if_t< expr_detail::is_observable< From >::value, expression_node< To >> |
| Cast an expression node to another type using static_cast. More...
|
|
template<typename To , typename From > |
auto | reinterpret_expr_cast (From &&from) -> std::enable_if_t< expr_detail::is_observable< From >::value, expression_node< To >> |
| Cast an expression node to another type using reinterpret_cast. More...
|
|
template<typename Cond , typename TrueVal , typename FalseVal > |
auto | select (Cond &&cond, TrueVal &&true_val, FalseVal &&false_val) |
| Select between two values based on a condition. More...
|
|
template<typename ... Values> |
auto | min (Values ... values) |
| Return the argument with the minimum value. More...
|
|
template<typename ... Values> |
auto | max (Values ... values) |
| Return the argument with the maximum value. More...
|
|
template<typename ... Values> |
auto | mean (Values ... values) |
| Return the mean of the arguments. More...
|
|
template<typename Val , typename Low , typename High > |
auto | clamp (Val &&val, Low &&low, High &&high) |
| Keep a value between a minimum and maximum. More...
|
|
template<typename ... Args> |
auto | zip (Args &&... args) |
| Convert a number of arguments to a tuple containing the arguments. More...
|
|
template<typename T > |
auto | abs (T &&val) |
| Compute the absolute value of an integral expression. More...
|
|
template<typename X , typename Y > |
auto | div (X &&x, Y &&y) |
| Compute both the quotient and the remainder of the division of the numerator x by the denominator y. More...
|
|
template<typename T > |
auto | exp (T &&v) |
| Computes e (Euler's number) raised to the given power. More...
|
|
template<typename T > |
auto | exp2 (T &&v) |
| Computes 2 raised to the given power. More...
|
|
template<typename T > |
auto | log (T &&v) |
| Computes the the natural (base e) logarithm of the provided argument. More...
|
|
template<typename T > |
auto | log10 (T &&v) |
| Computes the common (base-10) logarithm of the provided argument. More...
|
|
template<typename T > |
auto | log2 (T &&v) |
| Computes the binary (base-2) logarithm of the provided argument. More...
|
|
template<typename B , typename E > |
auto | pow (B &&b, E &&e) |
| Computes the value of the provided base raised to the power of the provided exponent. More...
|
|
template<typename T > |
auto | sqrt (T &&v) |
| Computes the square root of the provided argument. More...
|
|
template<typename T > |
auto | cbrt (T &&v) |
| Computes the cubic root of the provided argument. More...
|
|
template<typename X , typename Y > |
auto | hypot (X &&x, Y &&y) |
| Computes the square root of the sum of the squares of x and y, without undue overflow or underflow at intermediate stages of the computation. More...
|
|
template<typename T > |
auto | sin (T &&v) |
| Computes the sine of the provided argument (measured in radians). More...
|
|
template<typename T > |
auto | cos (T &&v) |
| Computes the cosine of the provided argument (measured in radians). More...
|
|
template<typename T > |
auto | tan (T &&v) |
| Computes the tangent of the provided argument (measured in radians). More...
|
|
template<typename T > |
auto | asin (T &&v) |
| Computes the arc sine of the provided argument. More...
|
|
template<typename T > |
auto | acos (T &&v) |
| Computes the arc cosine of the provided argument. More...
|
|
template<typename T > |
auto | atan (T &&v) |
| Computes the arc tangent of the provided argument. More...
|
|
template<typename Y , typename X > |
auto | atan2 (Y &&y, X &&x) |
| Computes the arc tangent of y / x using the signs of arguments to determine the correct quadrant. More...
|
|
template<typename T > |
auto | ceil (T &&v) |
| Nearest integer not less than the given value. More...
|
|
template<typename T > |
auto | floor (T &&v) |
| Nearest integer not greater than the given value. More...
|
|
template<typename T > |
auto | trunc (T &&v) |
| Nearest integer not greater in magnitude than the given value. More...
|
|
template<typename T > |
auto | round (T &&v) |
| Nearest integer, rounding away from zero in halfway cases. More...
|
|