pub struct AuthorizationFlow<E, R>where
    E: Endpoint<R>,
    R: WebRequest,{ /* private fields */ }
Expand description

All relevant methods for handling authorization code requests.

Implementations§

source§

impl<E, R> AuthorizationFlow<E, R>where E: Endpoint<R>, R: WebRequest,

source

pub fn prepare(endpoint: E) -> Result<Self, E::Error>

Check that the endpoint supports the necessary operations for handling requests.

Binds the endpoint to a particular type of request that it supports, for many implementations this is probably single type anyways.

Panics

Indirectly execute may panic when this flow is instantiated with an inconsistent endpoint, for details see the documentation of Endpoint. For consistent endpoints, the panic is instead caught as an error here.

source

pub fn execute(&mut self, request: R) -> Result<R::Response, E::Error>

Use the checked endpoint to execute the authorization flow for a request.

In almost all cases this is followed by executing finish on the result but some users may instead want to inspect the partial result.

Panics

When the registrar or the authorizer returned by the endpoint is suddenly None when previously it was Some(_).

Auto Trait Implementations§

§

impl<E, R> RefUnwindSafe for AuthorizationFlow<E, R>where E: RefUnwindSafe, R: RefUnwindSafe,

§

impl<E, R> Send for AuthorizationFlow<E, R>where E: Send, R: Send,

§

impl<E, R> Sync for AuthorizationFlow<E, R>where E: Sync, R: Sync,

§

impl<E, R> Unpin for AuthorizationFlow<E, R>where E: Unpin, R: Unpin,

§

impl<E, R> UnwindSafe for AuthorizationFlow<E, R>where E: UnwindSafe, R: UnwindSafe,

Blanket Implementations§

source§

impl<T> Any for Twhere T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for Twhere T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for Twhere T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for Twhere U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T> Same<T> for T

§

type Output = T

Should always be Self
source§

impl<T, U> TryFrom<U> for Twhere U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for Twhere U: TryFrom<T>,

§

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

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
§

impl<V, T> VZip<V> for Twhere V: MultiLane<T>,

§

fn vzip(self) -> V