use async_trait::async_trait; use crate::api::Message; use super::{Command, Context}; pub struct Hidden(pub C); #[async_trait] impl Command for Hidden where B: Send, C: Command + Send + Sync, { fn description(&self, _ctx: &Context) -> Option { // Default implementation, repeated here for emphasis. None } async fn execute(&self, arg: &str, msg: &Message, ctx: &Context, bot: &mut B) -> Result<(), E> { self.0.execute(arg, msg, ctx, bot).await } }