use std::path::{Path, PathBuf};
pub mod change_analyzer;
pub mod context;
pub mod files;
pub mod snapshot;
pub mod view;
pub use change_analyzer::ChangeImpact;
pub use context::{CargoState, GitState, WorkspaceContext};
pub use snapshot::{
LockedPackageIdentity, LockfileSnapshot, SnapshotFile, SnapshotId, SnapshotPackage, WorkspaceSnapshot,
};
pub use view::{CrateInfo, WorkspaceView};
pub(crate) fn cargo_rail_state_root(workspace_root: &Path) -> PathBuf {
workspace_root.join("target").join("cargo-rail")
}