extra-safe 0.1.1

A trait hierarchy to help make the SAFE API return errors at compile time.
Documentation
1
2
3
4
5
6
7
8
9
10
error[E0277]: the trait bound `Cons<extra_safe::traits::Absorb<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>>, Nil>: Same<Cons<extra_safe::traits::Absorb<UInt<UInt<UTerm, B1>, B0>>, Cons<extra_safe::traits::Absorb<UInt<UInt<UInt<UTerm, B1>, B1>, B0>>, Nil>>>` is not satisfied
  --> src/unit_tests/compilation/normalize_complex.rs:7:5
   |
7  | /     assert_type_eq!(
8  | |         Norm<iopat![Absorb<U2>, Squeeze<U0>, Absorb<U3>, Absorb<U3>]>,
9  | |         iopat![Absorb<U2>, Absorb<U6>]
10 | |     );
   | |_____^ the trait `Same<Cons<extra_safe::traits::Absorb<UInt<UInt<UTerm, B1>, B0>>, Cons<extra_safe::traits::Absorb<UInt<UInt<UInt<UTerm, B1>, B1>, B0>>, Nil>>>` is not implemented for `Cons<extra_safe::traits::Absorb<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>>, Nil>`
   |
   = note: this error originates in the macro `assert_type_eq` (in Nightly builds, run with -Z macro-backtrace for more info)