[][src]Struct tbot::contexts::PreCheckout

#[non_exhaustive]pub struct PreCheckout {
    pub bot: Arc<Bot>,
    pub id: Id,
    pub from: User,
    pub currency: String,
    pub total_amount: u32,
    pub invoice_payload: String,
    pub shipping_option_id: Option<String>,
    pub order_info: Option<OrderInfo>,
}

The context for pre_checkout handlers.

Fields (Non-exhaustive)

Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.
bot: Arc<Bot>

A bot for calling API without information inference.

id: Id

The ID of the query.

from: User

The user who sent the query.

currency: String

The currency of of the invoice.

total_amount: u32

The total price.

invoice_payload: String

The invoice payload sent previously by the bot.

shipping_option_id: Option<String>

The ID of the chosen shipping option.

order_info: Option<OrderInfo>

The order information.

Methods

impl PreCheckout[src]

pub fn answer<'a>(
    &'a self,
    result: Result<(), &'a str>
) -> AnswerPreCheckoutQuery<'a>
[src]

Reports if the checkout is possible.

Note that this method suits better when you already deal with an Option. You might also want to use the ok and err methods from this context.

pub fn ok(&self) -> AnswerPreCheckoutQuery[src]

Reports that shipping is possible and shows possible shipping options.

pub fn err<'a>(&'a self, err: &'a str) -> AnswerPreCheckoutQuery<'a>[src]

Reports that shipping is impossible and shows the error message.

Trait Implementations

impl Clone for PreCheckout[src]

impl Context for PreCheckout[src]

impl Debug for PreCheckout[src]

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T> Instrument for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<T> WithSubscriber for T[src]