#[macro_export] macro_rules! edit_reply { ($ctx:expr, $handle:expr, $($arg:tt)*) => {{ let content = format!($($arg)*); let edited = CreateReply::default() .reply(true) .content(content); $handle.edit($ctx, edited) }}; } #[macro_export] macro_rules! get_user { ($ctx:expr) => {{ crate::reply_errors!($ctx, crate::user::User::from_context($ctx).await) }}; } #[macro_export] macro_rules! assert_is_pookie { ($ctx:expr, $user:expr) => {{ if !$user.is_pookie { $ctx.reply("This feature is reserved for my pookies. Sowwy :3") .await?; return Ok(()); } }}; } #[macro_export] macro_rules! reply_errors { ($ctx:expr, $value:expr) => { match $value { Ok(v) => v, Err(err) => { $ctx.reply(format!("{err}")).await?; return Ok(()); } } }; }