///|
suberror MoonforgeError {
ConfigError(String)
CacheError(String)
MissingTask(String)
CycleDetected(String)
ExecutionError(String)
} derive(@debug.Debug)
///|
fn[T] config_error(message : String) -> T raise MoonforgeError {
raise ConfigError(message)
}
///|
fn[T] cache_error(message : String) -> T raise MoonforgeError {
raise CacheError(message)
}
///|
fn[T] execution_error(message : String) -> T raise MoonforgeError {
raise ExecutionError(message)
}