rquant/logger/behaviors/
log_color.rs

1use crate::logger::types::log_color::LogColor;
2
3/// Implementing [`LogColor`].
4impl LogColor {
5    /// [`LogColor::RESET`] represents an escape code for the color white.
6    pub const RESET: &str = LogColor::White.get_escape_code();
7
8    /// [`LogColor::RESET`] represents an escape code for the color grey.
9    pub const GREY: &str = LogColor::Grey.get_escape_code();
10
11    /// [`LogColor::get_escape_code`] will get a hexidecimal ANSI escape code for
12    /// any [`LogColor`].
13    ///
14    /// # Example
15    /// [`LogColor::get_escape_code`] can be used to get an escape code for a [`LogColor`]:
16    /// ```rust
17    /// use rquant::logger::types::log_color::LogColor;
18    ///
19    /// fn get_red_escape_code() -> String {
20    ///     LogColor::Red.get_escape_code().to_string()
21    /// }
22    /// ```
23    pub const fn get_escape_code(&self) -> &str {
24        match self {
25            LogColor::Red => "\x1b[91m",
26            LogColor::Yellow => "\x1b[93m",
27            LogColor::Green => "\x1b[92m",
28            LogColor::Cyan => "\x1b[96m",
29            LogColor::Grey => "\x1b[90m",
30            LogColor::White => "\x1b[97m",
31        }
32    }
33}