pub(crate) fn assert_invariants<'a, FEN: FoundryEvmNetwork>(
invariant_contract: &InvariantContract<'a>,
invariant_config: &InvariantConfig,
targeted_contracts: &FuzzRunIdentifiedContracts,
executor: &Executor<FEN>,
calldata: &[BasicTxDetails],
invariant_failures: &mut InvariantFailures,
) -> Result<Option<&'a Function>>Expand description
Given the executor state, asserts that no invariant has been broken. Otherwise, it fills the
external invariant_failures.failed_invariant map.
Returns the first newly-broken invariant in declaration order (if any), so callers can
attribute the failure event without re-scanning invariant_failures.errors afterwards.