pub type Assertion(t) { Eq(a: t, b: t, meta: Option(Meta)) NotEq(a: t, b: t) }
Eq(a: t, b: t, meta: Option(Meta))
NotEq(a: t, b: t)
pub fn equal(a: a, b: a) -> Nil
pub fn equal_meta(a: a, b: a, meta: Meta) -> Nil
pub fn evaluate(assertion: Assertion(a)) -> Nil
pub fn not_equal(a: a, b: a) -> Nil