Skip to content

Commit 5014228

Browse files
committed
Move default level style to a public function
1 parent 561c9fb commit 5014228

File tree

2 files changed

+16
-11
lines changed

2 files changed

+16
-11
lines changed

src/fmt.rs

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,7 @@ use std::error::Error;
4242
use std::cell::RefCell;
4343
use std::time::SystemTime;
4444

45+
use log::Level;
4546
use termcolor::{self, ColorSpec, ColorChoice, Buffer, BufferWriter, WriteColor};
4647
use atty;
4748
use humantime::{format_rfc3339_seconds, format_rfc3339_nanos};
@@ -449,6 +450,19 @@ impl Formatter {
449450
}
450451
}
451452

453+
/// Get the default [`Style`] for the given level.
454+
pub fn default_level_style(&self, level: Level) -> Style {
455+
let mut level_style = self.style();
456+
match level {
457+
Level::Trace => level_style.set_color(Color::White),
458+
Level::Debug => level_style.set_color(Color::Blue),
459+
Level::Info => level_style.set_color(Color::Green),
460+
Level::Warn => level_style.set_color(Color::Yellow),
461+
Level::Error => level_style.set_color(Color::Red).set_bold(true),
462+
};
463+
level_style
464+
}
465+
452466
/// Get a [`Timestamp`] for the current date and time in UTC.
453467
///
454468
/// # Examples

src/lib.rs

Lines changed: 2 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -226,7 +226,7 @@ use std::io;
226226
use std::mem;
227227
use std::cell::RefCell;
228228

229-
use log::{Log, LevelFilter, Level, Record, SetLoggerError, Metadata};
229+
use log::{Log, LevelFilter, Record, SetLoggerError, Metadata};
230230

231231
pub mod filter;
232232
pub mod fmt;
@@ -320,16 +320,7 @@ impl Format {
320320
Box::new(move |buf, record| {
321321
let write_level = if self.default_format_level {
322322
let level = record.level();
323-
let mut level_style = buf.style();
324-
325-
match level {
326-
Level::Trace => level_style.set_color(Color::White),
327-
Level::Debug => level_style.set_color(Color::Blue),
328-
Level::Info => level_style.set_color(Color::Green),
329-
Level::Warn => level_style.set_color(Color::Yellow),
330-
Level::Error => level_style.set_color(Color::Red).set_bold(true),
331-
};
332-
323+
let level_style = buf.default_level_style(level);
333324
write!(buf, "{:>5} ", level_style.value(level))
334325
} else {
335326
Ok(())

0 commit comments

Comments
 (0)