use std::io::Result; use super::available_commands; use crate::configuration::Configuration; pub struct Help; impl Help { pub fn new() -> Self { Help } } impl super::Command for Help { fn before_dependencies(&self) -> Vec> { vec![] } fn execute(&self, _: Option<&String>, _: &Configuration, _: &String) -> Result<()> { let commands = available_commands(); println!("Usage:"); println!(""); for command in commands { print!("blog {} ", command.command()); println!("{}", command.help()); } return Ok(()) } fn after_dependencies(&self) -> Vec> { vec![] } fn command(&self) -> &'static str { "help" } fn help(&self) -> &'static str { "\t\t\t\tPrints this help" } }