#[path = "platform_gate.rs"]
mod platform_gate;
#[cfg(all(windows, target_arch = "x86_64", target_env = "msvc"))]
mod api;
#[cfg(all(windows, target_arch = "x86_64", target_env = "msvc"))]
mod config;
#[cfg(all(windows, target_arch = "x86_64", target_env = "msvc"))]
mod error;
#[cfg(all(windows, target_arch = "x86_64", target_env = "msvc"))]
pub mod evaluation;
#[cfg(all(windows, target_arch = "x86_64", target_env = "msvc"))]
mod exports;
#[cfg(all(windows, target_arch = "x86_64", target_env = "msvc"))]
mod formula;
#[cfg(all(windows, target_arch = "x86_64", target_env = "msvc"))]
mod input;
#[cfg(all(windows, target_arch = "x86_64", target_env = "msvc"))]
mod model_registry;
#[cfg(all(windows, target_arch = "x86_64", target_env = "msvc"))]
mod model_set;
#[cfg(all(windows, target_arch = "x86_64", target_env = "msvc"))]
mod model_source;
#[cfg(all(windows, target_arch = "x86_64", target_env = "msvc"))]
mod model_store;
#[cfg(all(windows, target_arch = "x86_64", target_env = "msvc"))]
mod model_verify;
#[cfg(all(windows, target_arch = "x86_64", target_env = "msvc"))]
mod ocr;
#[cfg(all(windows, target_arch = "x86_64", target_env = "msvc"))]
mod output;
#[cfg(all(windows, target_arch = "x86_64", target_env = "msvc"))]
mod runtime;
#[cfg(all(windows, target_arch = "x86_64", target_env = "msvc"))]
mod table;
#[cfg(all(windows, target_arch = "x86_64", target_env = "msvc", test))]
mod test_support;
#[cfg(all(windows, target_arch = "x86_64", target_env = "msvc"))]
mod vision;
#[cfg(all(windows, target_arch = "x86_64", target_env = "msvc"))]
pub use exports::*;
#[cfg(test)]
mod platform_tests {
const _: () = {
assert!(
cfg!(all(windows, target_arch = "x86_64", target_env = "msvc")),
"rapid-structure-rs only supports x86_64-pc-windows-msvc; this test suite is being built \
for a different target"
);
};
#[test]
fn the_test_suite_runs_on_the_gated_target() {
assert_eq!(
std::env::consts::OS,
"windows",
"the only supported platform is Windows x64 + MSVC ABI"
);
assert_eq!(
std::env::consts::ARCH,
"x86_64",
"the only supported platform is Windows x64 + MSVC ABI"
);
assert_eq!(
std::env::consts::FAMILY,
"windows",
"the crate targets the Windows family"
);
eprintln!(
"target: os={} arch={} family={} (the compile-time predicate also requires \
target_env = \"msvc\")",
std::env::consts::OS,
std::env::consts::ARCH,
std::env::consts::FAMILY
);
}
}