1#![forbid(unsafe_code)]
22#![deny(clippy::unwrap_used, clippy::expect_used, clippy::panic)]
24#![allow(
26 clippy::module_name_repetitions,
27 clippy::similar_names,
28 clippy::cast_precision_loss,
29 clippy::cast_possible_truncation,
30 clippy::cast_sign_loss,
31 clippy::suspicious_operation_groupings, clippy::imprecise_flops, clippy::no_effect_underscore_binding,
34 clippy::missing_const_for_fn, clippy::needless_range_loop, clippy::manual_midpoint, clippy::manual_is_multiple_of, )]
39#![cfg_attr(
41 test,
42 allow(
43 clippy::unwrap_used,
44 clippy::expect_used,
45 clippy::panic,
46 clippy::unreadable_literal,
47 clippy::default_constructed_unit_structs,
48 clippy::map_unwrap_or,
49 clippy::single_char_pattern,
50 clippy::needless_collect,
51 clippy::missing_docs_in_private_items,
52 )
53)]
54
55#[macro_use]
56#[allow(unused_macros)]
57mod generated_contracts;
58
59pub mod cli;
60pub mod config;
61pub mod demos;
62pub mod discovery;
63pub mod domains;
64pub mod edd;
65pub mod engine;
66pub mod error;
67pub mod falsification;
68pub mod orbit;
69pub mod renderers;
70pub mod replay;
71pub mod scenarios;
72#[cfg(feature = "tui")]
73pub mod tui;
74pub mod visualization;
75
76pub mod prelude {
78 pub use crate::config::{SimConfig, SimConfigBuilder};
79 pub use crate::engine::jidoka::{JidokaGuard, JidokaViolation};
80 pub use crate::engine::rng::SimRng;
81 pub use crate::engine::{SimEngine, SimState, SimTime};
82 pub use crate::error::{SimError, SimResult};
83 pub use crate::falsification::{FalsifiableHypothesis, NHSTResult};
84}
85
86pub use error::{SimError, SimResult};