aboutsummaryrefslogtreecommitdiff
path: root/src/framework
diff options
context:
space:
mode:
authorthelearnerofcode <[email protected]>2017-11-07 14:51:57 -0800
committerthelearnerofcode <[email protected]>2017-11-07 14:51:57 -0800
commite5a6f3a8ed367bd3d780fd23a0a27f8a80567879 (patch)
tree9b51a6cd25ec63f8a0b2143827e675b04f9bb1af /src/framework
parentInto<String> -> Display (diff)
downloadserenity-e5a6f3a8ed367bd3d780fd23a0a27f8a80567879.tar.xz
serenity-e5a6f3a8ed367bd3d780fd23a0a27f8a80567879.zip
Add Debug derives to more public types
Diffstat (limited to 'src/framework')
-rw-r--r--src/framework/standard/command.rs21
-rw-r--r--src/framework/standard/create_command.rs1
2 files changed, 22 insertions, 0 deletions
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<Command>;
pub type PrefixCheck = Fn(&mut Context, &Message) -> Option<String> + 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<String>,
pub commands: HashMap<String, CommandOrAlias>,
@@ -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 {