#![warn(missing_docs)]
#![warn(clippy::all)]
#![warn(clippy::pedantic)]
#![allow(clippy::module_name_repetitions)]
pub mod builder;
pub mod catalogue;
pub mod construct;
#[cfg(feature = "doe")]
pub mod doe;
pub mod error;
pub mod gf;
pub mod oa;
#[cfg(feature = "python")]
pub mod python;
pub mod utils;
#[cfg(feature = "parallel")]
pub mod parallel;
pub mod prelude {
pub use crate::builder::{OABuilder, build_oa};
pub use crate::construct::{
AddelmanKempthorne, Bose, BoseBush, Bush, Constructor, HadamardPaley, HadamardSylvester,
RaoHamming,
};
pub use crate::error::{Error, Result};
pub use crate::gf::{
DynamicGf, GF2, GF3, GF5, GF7, GF11, GF13, GaloisField, GfElement, available_field_orders,
get_irreducible_poly, has_irreducible_poly,
};
pub use crate::oa::{BalanceReport, OA, OAParams, compute_strength, verify_strength};
pub use crate::utils::{factor_prime_power, is_prime, is_prime_power, smallest_prime_factor};
#[cfg(feature = "parallel")]
pub use crate::parallel::{
ParAddelmanKempthorne, ParBose, ParBush, ParHadamardSylvester, par_build_oa,
};
#[cfg(feature = "doe")]
pub use crate::doe::{
ANOVAConfig, ANOVAEntry, ANOVAResult, AnalysisConfig, ConfidenceInterval, DOEAnalysis,
MainEffect, OptimalSettings, OptimizationType, SNRatioEffect, analyze,
};
}
pub use builder::{OABuilder, available_constructions, build_oa};
pub use catalogue::get_by_name as get_standard_oa;
pub use error::{Error, Result};
pub use oa::{compute_strength, verify_strength};
pub use utils::{is_prime, is_prime_power};
#[cfg(feature = "parallel")]
pub use parallel::{ParAddelmanKempthorne, ParBose, ParBush, ParHadamardSylvester, par_build_oa};