#![cfg_attr(docsrs, feature(doc_cfg))]
macro_rules! print {
($($arg:tt)*) => {{
$crate::output::write_stdout(format_args!($($arg)*), false)
}};
}
macro_rules! println {
() => {{
$crate::output::write_stdout(format_args!(""), true)
}};
($($arg:tt)*) => {{
$crate::output::write_stdout(format_args!($($arg)*), true)
}};
}
pub mod backup;
pub mod benchmark;
pub(crate) mod build_script;
pub(crate) mod cache;
pub mod cargo;
pub(crate) mod change_detection;
pub mod commands;
pub mod compiler;
pub mod config;
pub mod error;
pub(crate) mod executable;
pub mod git;
pub mod graph;
#[doc(hidden)]
pub mod instrumentation;
pub mod mutation;
pub mod output;
pub(crate) mod planning;
pub mod release;
pub(crate) mod remote_cache;
pub mod source;
pub mod split;
pub(crate) mod surface;
pub mod sync;
pub mod targets;
pub mod toml;
pub mod utils;
#[expect(unsafe_code, reason = "this audited module is the sole Win32 FFI boundary")]
#[cfg(windows)]
pub(crate) mod windows_fs;
pub mod workspace;
pub use error::{RailError, RailResult};