use crate::backend::BACKENDS;
use crate::cli::{Result, StructOpt};
use std::ops::Deref;
#[derive(StructOpt, Debug)]
pub struct Options {}
impl Options {
pub fn display(self) -> Result<()> {
use colorful::*;
for backend in BACKENDS.deref() {
println!("Backend: {}", backend.name());
let data = backend.data();
for datum in &data {
let icon = match datum.pass {
true => "✔".green(),
false => "✗".red(),
};
if let Some(info) = datum.info.as_ref() {
println!(" {} {}: {}", icon, datum.name, info);
} else {
println!(" {} {}", icon, datum.name);
}
}
for datum in &data {
if let Some(mesg) = datum.mesg.as_ref() {
println!("\n{}\n", mesg);
}
}
}
Ok(())
}
}