pub struct PluginContext {
pub bot: Bot,
pub message: Option<Message>,
pub callback_query: Option<CallbackQuery>,
}Fields§
§bot: Bot§message: Option<Message>§callback_query: Option<CallbackQuery>Implementations§
Source§impl PluginContext
impl PluginContext
Sourcepub fn new(
bot: Bot,
message: Option<Message>,
callback_query: Option<CallbackQuery>,
) -> Self
pub fn new( bot: Bot, message: Option<Message>, callback_query: Option<CallbackQuery>, ) -> Self
Examples found in repository?
examples/bot.rs (line 7)
5async fn handle_message(bot: Bot, msg: Message) -> ResponseResult<()> {
6 println!("message: {:?}", msg);
7 let ctx = PluginContext::new(bot.clone(), Some(msg.clone()), None);
8 let _ = dispatch(ctx).await;
9 Ok(())
10}
11
12async fn handle_callback_query(bot: Bot, cq: CallbackQuery) -> ResponseResult<()> {
13 println!("callback query: {:?}", cq);
14 let ctx = PluginContext::new(bot.clone(), None, Some(cq.clone()));
15 let _ = dispatch(ctx).await;
16 Ok(())
17}Trait Implementations§
Source§impl Clone for PluginContext
impl Clone for PluginContext
Source§fn clone(&self) -> PluginContext
fn clone(&self) -> PluginContext
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl Freeze for PluginContext
impl !RefUnwindSafe for PluginContext
impl Send for PluginContext
impl Sync for PluginContext
impl Unpin for PluginContext
impl !UnwindSafe for PluginContext
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Erasable for T
impl<T> Erasable for T
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more