use std::env;
pub fn get_op() -> Option<EngineOperation> {
let var = match env::var("PERSEUS_ENGINE_OPERATION").ok() {
Some(var) => var,
None => {
return {
if cfg!(debug_assertions) {
None
} else {
Some(EngineOperation::Serve)
}
};
}
};
match var.as_str() {
"serve" => Some(EngineOperation::Serve),
"build" => Some(EngineOperation::Build),
"export" => Some(EngineOperation::Export),
"export_error_page" => Some(EngineOperation::ExportErrorPage),
"tinker" => Some(EngineOperation::Tinker),
_ => {
if cfg!(debug_assertions) {
None
} else {
Some(EngineOperation::Serve)
}
}
}
}
#[derive(Debug, Clone, Copy)]
pub enum EngineOperation {
Serve,
Build,
Export,
ExportErrorPage,
Tinker,
}