| Function Object | Return Value |
|---|---|
| T = plus(T, T) | x + y |
| T = minus(T, T) | x - y |
| T = times(T, T) | x * y |
| T = divide(T, T) | x / y |
| T = modulus(T, T) | x % y |
| T = negate(T) | -x |
| bool = equal_to(T, T) | x == y |
| bool = not_equal_to(T, T) | x != y |
| bool = greater(T, T) | x > y |
| bool = less(T, T) | x < y |
| bool = greater_equal(T, T) | x >= y |
| bool = less_equal(T, T) | x <= y |
| bool = logical_and(T, T) | x && y |
| bool = logical_or(T, T) | x || y |
| bool = logical_not(T) | ! x |