pub trait AuthAction {
type AuthCallback: Send;
type AuthToken: Send;
type AuthUser;
// Required methods
fn authorize<'life0, 'async_trait, S>(
&'life0 self,
state: S,
) -> Pin<Box<dyn Future<Output = Result<String>> + Send + 'async_trait>>
where S: 'async_trait + Into<String> + Send,
Self: 'async_trait,
'life0: 'async_trait;
fn get_access_token<'life0, 'async_trait>(
&'life0 self,
callback: Self::AuthCallback,
) -> Pin<Box<dyn Future<Output = Result<Self::AuthToken>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn get_user_info<'life0, 'async_trait>(
&'life0 self,
token: Self::AuthToken,
) -> Pin<Box<dyn Future<Output = Result<Self::AuthUser>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
// Provided method
fn login<'life0, 'async_trait>(
&'life0 self,
callback: Self::AuthCallback,
) -> Pin<Box<dyn Future<Output = Result<Self::AuthUser>> + Send + 'async_trait>>
where Self: Sync + 'async_trait,
'life0: 'async_trait { ... }
}Required Associated Types§
Required Methods§
fn get_access_token<'life0, 'async_trait>(
&'life0 self,
callback: Self::AuthCallback,
) -> Pin<Box<dyn Future<Output = Result<Self::AuthToken>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_user_info<'life0, 'async_trait>(
&'life0 self,
token: Self::AuthToken,
) -> Pin<Box<dyn Future<Output = Result<Self::AuthUser>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Provided Methods§
fn login<'life0, 'async_trait>(
&'life0 self,
callback: Self::AuthCallback,
) -> Pin<Box<dyn Future<Output = Result<Self::AuthUser>> + Send + 'async_trait>>where
Self: Sync + 'async_trait,
'life0: 'async_trait,
Object Safety§
This trait is not object safe.