just/src/color_display.rs

21 lines
405 B
Rust
Raw Normal View History

use super::*;
pub(crate) trait ColorDisplay {
2022-09-11 02:25:38 -07:00
fn color_display(&self, color: Color) -> Wrapper
where
Self: Sized,
{
Wrapper(self, color)
}
fn fmt(&self, f: &mut Formatter, color: Color) -> fmt::Result;
}
pub(crate) struct Wrapper<'a>(&'a dyn ColorDisplay, Color);
impl<'a> Display for Wrapper<'a> {
fn fmt(&self, f: &mut Formatter) -> fmt::Result {
self.0.fmt(f, self.1)
}
}