Struct tbot::contexts::Shipping[][src]

#[non_exhaustive]
pub struct Shipping { pub bot: Bot, pub id: Id, pub from: User, pub invoice_payload: String, pub shipping_address: Address, }

The context for shipping 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: Bot

A bot for calling API without information inference.

id: Id

The ID of the query.

from: User

The user who sent the query.

invoice_payload: String

The invoice payload sent previously by the bot.

shipping_address: Address

The shipping address specified by the user.

Implementations

impl Shipping[src]

pub fn answer(
    &self,
    result: Result<impl Into<Vec<Option>>, impl Into<String>>
) -> AnswerShippingQuery<'_>
[src]

Reports if shipping 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, options: impl Into<Vec<Option>>) -> AnswerShippingQuery<'_>[src]

Reports that shipping is possible and shows possible shipping options.

pub fn err(&self, err: impl Into<String>) -> AnswerShippingQuery<'_>[src]

Reports that shipping is impossible and shows the error message.

Trait Implementations

impl Clone for Shipping[src]

impl Context for Shipping[src]

impl Debug for Shipping[src]

Auto Trait Implementations

impl !RefUnwindSafe for Shipping

impl Send for Shipping

impl Sync for Shipping

impl Unpin for Shipping

impl !UnwindSafe for Shipping

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> Same<T> for T

type Output = T

Should always be Self

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.