operator

Operators as Functions

Functions

FunctionDescription
op_addAddition.
op_subSubtraction.
op_mulMultiplication.
op_divDivision (integer). Returns 0 if b is 0.
op_modModulo. Returns 0 if b is 0.
op_negNegation.
op_absAbsolute value.
op_minMinimum.
op_maxMaximum.
op_eqEquality: 1 if a == b, 0 otherwise.
op_neNot equal: 1 if a != b, 0 otherwise.
op_ltLess than: 1 if a < b.
op_leLess than or equal: 1 if a <= b.
op_gtGreater than: 1 if a > b.
op_geGreater than or equal: 1 if a >= b.
op_andBitwise AND.
op_orBitwise OR.
op_xorBitwise XOR.
op_notBitwise NOT.
op_shlLeft shift.
op_shrRight shift.
op_clampClamp value to range [lo, hi].
op_signSign: -1, 0, or 1.

Details

op_add

fn op_add(a: i64, b: i64) -> i64

Addition.

op_sub

fn op_sub(a: i64, b: i64) -> i64

Subtraction.

op_mul

fn op_mul(a: i64, b: i64) -> i64

Multiplication.

op_div

fn op_div(a: i64, b: i64) -> i64

Division (integer). Returns 0 if b is 0.

op_mod

fn op_mod(a: i64, b: i64) -> i64

Modulo. Returns 0 if b is 0.

op_neg

fn op_neg(a: i64) -> i64

Negation.

op_abs

fn op_abs(a: i64) -> i64

Absolute value.

op_min

fn op_min(a: i64, b: i64) -> i64

Minimum.

op_max

fn op_max(a: i64, b: i64) -> i64

Maximum.

op_eq

fn op_eq(a: i64, b: i64) -> i64

Equality: 1 if a == b, 0 otherwise.

op_ne

fn op_ne(a: i64, b: i64) -> i64

Not equal: 1 if a != b, 0 otherwise.

op_lt

fn op_lt(a: i64, b: i64) -> i64

Less than: 1 if a < b.

op_le

fn op_le(a: i64, b: i64) -> i64

Less than or equal: 1 if a <= b.

op_gt

fn op_gt(a: i64, b: i64) -> i64

Greater than: 1 if a > b.

op_ge

fn op_ge(a: i64, b: i64) -> i64

Greater than or equal: 1 if a >= b.

op_and

fn op_and(a: i64, b: i64) -> i64

Bitwise AND.

op_or

fn op_or(a: i64, b: i64) -> i64

Bitwise OR.

op_xor

fn op_xor(a: i64, b: i64) -> i64

Bitwise XOR.

op_not

fn op_not(a: i64) -> i64

Bitwise NOT.

op_shl

fn op_shl(a: i64, b: i64) -> i64

Left shift.

op_shr

fn op_shr(a: i64, b: i64) -> i64

Right shift.

op_clamp

fn op_clamp(val: i64, lo: i64, hi: i64) -> i64

Clamp value to range [lo, hi].

op_sign

fn op_sign(a: i64) -> i64

Sign: -1, 0, or 1.