From e5a6f3a8ed367bd3d780fd23a0a27f8a80567879 Mon Sep 17 00:00:00 2001 From: thelearnerofcode Date: Tue, 7 Nov 2017 14:51:57 -0800 Subject: Add Debug derives to more public types --- src/framework/standard/command.rs | 21 +++++++++++++++++++++ src/framework/standard/create_command.rs | 1 + 2 files changed, 22 insertions(+) (limited to 'src/framework') diff --git a/src/framework/standard/command.rs b/src/framework/standard/command.rs index be7ec2a..8afb583 100644 --- a/src/framework/standard/command.rs +++ b/src/framework/standard/command.rs @@ -17,6 +17,7 @@ pub type AfterHook = Fn(&mut Context, &Message, &str, Result<(), Error>) + Send pub(crate) type InternalCommand = Arc; pub type PrefixCheck = Fn(&mut Context, &Message) -> Option + Send + Sync + 'static; +#[derive(Debug)] pub enum CommandOrAlias { Alias(String), Command(InternalCommand), @@ -41,6 +42,7 @@ pub enum CommandType { WithCommands(Help), } +#[derive(Debug)] pub struct CommandGroup { pub prefix: Option, pub commands: HashMap, @@ -98,6 +100,25 @@ impl Command { } } +impl fmt::Debug for Command { + // TODO: add Command::checks somehow? + fn fmt(&self, fmt: &mut fmt::Formatter) -> fmt::Result { + fmt.debug_struct("Command") + .field("bucket", &self.bucket) + .field("desc", &self.desc) + .field("example", &self.example) + .field("usage", &self.usage) + .field("min_args", &self.min_args) + .field("required_permissions", &self.required_permissions) + .field("allowed_roles", &self.allowed_roles) + .field("help_available", &self.help_available) + .field("dm_only", &self.dm_only) + .field("guild_only", &self.guild_only) + .field("owners_only", &self.owners_only) + .finish() + } +} + impl Default for Command { fn default() -> Command { Command { diff --git a/src/framework/standard/create_command.rs b/src/framework/standard/create_command.rs index c1558ce..4788a05 100644 --- a/src/framework/standard/create_command.rs +++ b/src/framework/standard/create_command.rs @@ -5,6 +5,7 @@ use std::sync::Arc; use client::Context; use model::{Message, Permissions}; +#[derive(Debug)] pub struct CreateCommand(pub Command); impl CreateCommand { -- cgit v1.2.3