macro_rules! i31 { ($val:literal) => { ... }; }
Returns a i31 checked at compile time.
i31
let x = i31!(0); assert_eq!(x.repr(), 0);