anodized 0.6.0

A common specification layer for Rust
Documentation
error: postcondition closure must have exactly one input
 --> tests/compile_fail/closure_form_errors.rs:5:14
  |
5 |     ensures: |x, y| x > 0,
  |              ^^^^^^^^^^^^

error: postcondition closure must have exactly one input
  --> tests/compile_fail/closure_form_errors.rs:13:14
   |
13 |     ensures: || true,
   |              ^^^^^^^

error[E0308]: mismatched types
  --> tests/compile_fail/closure_form_errors.rs:21:23
   |
19 | / #[spec(
20 | |     // Should fail: postcondition closures must return `bool`.
21 | |     ensures: |output| 42,
   | |                       ^^ expected `bool`, found integer
22 | | )]
   | |__- expected `bool` because of return type

error[E0308]: mismatched types
  --> tests/compile_fail/closure_form_errors.rs:31:9
   |
27 | / #[spec(
28 | |     // Should fail: cannot nest postcondition closures.
29 | |     ensures: |output| [
30 | |         output >= 42,
31 | |         |answer| answer <= 42,
   | |         ^^^^^^^^^^^^^^^^^^^^^ expected `bool`, found closure
32 | |     ],
33 | | )]
   | |__- expected `bool` because of return type
   |
   = note: expected type `bool`
           found closure `{closure@$DIR/tests/compile_fail/closure_form_errors.rs:31:9: 31:17}`
help: use parentheses to call this closure
   |
31 |         (|answer| answer <= 42)(/* value */),
   |         +                     ++++++++++++++