1use console::Style;
2
3use crate::syscall_info::RetCode;
4
5#[derive(Clone, Debug)]
6pub struct StyleConfig {
7 pub pid: Style,
8 pub syscall: Style,
9 pub success: Style,
10 pub error: Style,
11 pub result: Style,
12 pub use_colors: bool,
13}
14
15impl Default for StyleConfig {
16 fn default() -> Self {
17 Self {
18 pid: Style::new().bold().blue(),
19 syscall: Style::new().bold(),
20 success: Style::new().green().bold(),
21 error: Style::new().red().bold(),
22 result: Style::new().yellow().bold(),
23 use_colors: true,
24 }
25 }
26}
27
28impl StyleConfig {
29 pub fn from_ret_code(&self, ret_code: RetCode) -> Style {
30 match ret_code {
31 RetCode::Ok(_) => self.success.clone(),
32 RetCode::Err(_) => self.error.clone(),
33 RetCode::Address(_) => self.result.clone(),
34 }
35 }
36}