| Crates.io | equator |
| lib.rs | equator |
| version | 0.4.2 |
| created_at | 2023-11-19 21:43:12.636185+00 |
| updated_at | 2024-12-21 15:25:59.069005+00 |
| description | Composable assertion library |
| homepage | |
| repository | https://github.com/sarah-ek/equator/ |
| max_upload_size | |
| id | 1041530 |
| size | 62,923 |
equator is an assertion library that aims to provide helpful diagnostics when
multiple conditions need to be asserted at once, without short-circuiting.
Valid assertions must be of the form:
cond for testing a single condition,all(...) for testing that multiple conditions all hold simultaneously,any(...) for testing that at least one condition holds.all and any may be arbitrarily nested.
let x = 0;
let y = 1;
let a = 4;
let b = 2;
// `equator::debug_assert!` is also available for debug-only assertions
equator::assert!(all(x == y, a < b));
This should panic with an error message like
Assertion failed at path/main.rs:8:1
Assertion failed: x == y
- x = 0
- y = 1
Assertion failed: a < b
- a = 4
- b = 2