1mod command;
2mod output;
3mod platform;
4
5#[derive(Debug, thiserror::Error)]
6#[non_exhaustive]
7pub enum Error {
8 #[error("invalid home directory")]
9 InvalidHomeDirectory,
10 #[error("platform standard does not define requested directory")]
11 NotDefinedByPlatformStandard,
12 #[error("path contains invalid unicode: {0}")]
13 InvalidUnicode(#[from] camino::FromPathBufError),
14 #[cfg(feature = "json")]
15 #[error("json error: {0}")]
16 JsonError(#[from] serde_json::Error),
17 #[cfg(feature = "yaml")]
18 #[error("yaml error: {0}")]
19 YamlError(#[from] serde_yaml::Error),
20}
21
22pub type Result<T> = std::result::Result<T, Error>;
23
24pub use command::Command;
25pub use platform::{Base, Project, ProjectOptions, User};