assertables

Module assert_infix

Source
Expand description

Assert a infix operator, such as assert_infix!(a == b).

Pseudocode:
a infix b

Compare values via infix value operator:

  • assert_infix!(a == b) ≈ a == b

  • assert_infix!(a != b) ≈ a ≠ b

  • assert_infix!(a < b) ≈ a < b

  • assert_infix!(a <= b) ≈ a ≤ b

  • assert_infix!(a > b) ≈ a > b

  • assert_infix!(a >= b) ≈ a ≥ b

Relate values via infix logical operator:

  • assert_infix!(a & b) ≈ a ∧ b ≈ a AND b

  • assert_infix!(a | b) ≈ a ∨ b ≈ a OR b

  • assert_infix!(a ^ b) ≈ a ⊻ b ≈ a XOR b

  • assert_infix!(a && b) ≈ a …∧ b ≈ a lazy AND b

  • assert_infix!(a || b) ≈ a …∨ b ≈ a lazy OR b

§Example

use assertables::*;

let a = 1;
let b = 1;
assert_infix!(a == b);

§Infix operators

For values:

  • == equal
  • != not equal
  • < less than
  • <= less than or equal to
  • > greater than
  • >= greater than or equal to

For booleans:

  • ^ logical XOR
  • ! logical NOT
  • & logical AND
  • | logical OR
  • && logical lazy AND
  • || logical lazy OR

§Module macros