#![allow(clippy::print_stderr)]
use rand::{Rng, SeedableRng};
use vyre::VyreBackend;
use vyre_primitives::graph::program_graph::ProgramGraphShape;
use weir::test_harness::{
csr_factory::CsrFactory, dominator_fixture::DominatorFixture, fake_backend::FakeResidentBackend,
};
fn record_case() {}
fn fake_dispatch_borrowed(
backend: &FakeResidentBackend,
) -> impl Fn(&vyre::ir::Program, &[&[u8]], Option<[u32; 3]>) -> Result<Vec<Vec<u8>>, String> + '_ {
move |program, inputs, grid| {
let owned: Vec<Vec<u8>> = inputs.iter().map(|s| s.to_vec()).collect();
let mut config = vyre::backend::DispatchConfig::default();
config.grid_override = grid;
backend
.dispatch(program, &owned, &config)
.map_err(|e| e.to_string())
}
}
#[path = "parameterized_analysis_matrix/reaching_contracts.rs"]
mod reaching_contracts;
#[path = "parameterized_analysis_matrix/live_contracts.rs"]
mod live_contracts;
#[path = "parameterized_analysis_matrix/points_to_contracts.rs"]
mod points_to_contracts;
#[path = "parameterized_analysis_matrix/slice_contracts.rs"]
mod slice_contracts;
#[path = "parameterized_analysis_matrix/dominator_contracts.rs"]
mod dominator_contracts;
#[path = "parameterized_analysis_matrix/range_callgraph_contracts.rs"]
mod range_callgraph_contracts;
#[path = "parameterized_analysis_matrix/query_contracts.rs"]
mod query_contracts;