refractr/src/common.rs

36 lines
704 B
Rust

use colored::Colorize;
pub enum ExitCode {
ParseError = 2,
FilesystemError = 3,
RepositoryError = 4,
RemoteError = 5,
PushError = 6,
FetchError = 7,
ConfigError = 8
}
pub struct ReturnData {
pub code: ExitCode,
pub msg: String,
}
pub fn error(msg: String, code: ExitCode) {
eprintln!("{} {}", "error:".red().bold(), msg);
quit::with_code(code as u8)
}
pub fn warning(msg: String) {
eprintln!("{} {}", "warning:".yellow().bold(), msg)
}
pub fn verbose(level: u8, msg_lvl: u8, msg: String) {
if level < msg_lvl { return };
let mut prefix = String::new();
for _ in 0..msg_lvl {
prefix += "=";
}
prefix += "> ";
eprintln!("{}{}", prefix.purple().bold(), msg);
}