1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
//! Assert macros for Ok(_) items.
//!
//! These macros help compare Ok(…) items, such as `std::Result::Ok` or similar.
//!
//! Assert expression is Ok(_):
//!
//! * [`assert_ok!(a)`](macro@crate::assert_ok)
//!   ≈ a is Ok(_)
//!
//! Compare Ok(…) to another Ok(…):
//!
//! * [`assert_ok_eq!(a, b)`](macro@crate::assert_ok_eq)
//!   ≈ (a ⇒ Ok(a̅) ⇒ a̅) = (b ⇒ Ok(b̅) ⇒ b̅)
//!
//! * [`assert_ok_ne!(a, b)`](macro@crate::assert_ok_ne)
//!   ≈ (a ⇒ Ok(a̅) ⇒ a̅) ≠ (b ⇒ Ok(b̅) ⇒ b̅)
//!
//! Compare Ok(…) to an expression:
//!
//! * [`assert_ok_eq_expr!(a, expr)`](macro@crate::assert_ok_eq_expr)
//!   ≈ (a ⇒ Ok(a̅) ⇒ a̅) = b
//!
//! * [`assert_ok_ne_expr!(a, b)`](macro@crate::assert_ok_ne_expr)
//!   ≈ (a ⇒ Ok(a̅) ⇒ a̅) ≠ b
//! 
//! # Example
//!
//! ```rust
//! use assertables::*;
//! 
//! # fn main() {
//! let a: Result<(), i8> = Ok(());
//! assert_ok!(a);
//! # }
//! ```

// Verify Ok(_)
pub mod assert_ok;

// Compare with another
pub mod assert_ok_eq;
pub mod assert_ok_ne;

// Compare with expression
pub mod assert_ok_eq_expr;
pub mod assert_ok_ne_expr;