pub trait BackendContextBuilder: Clone + Send + Sync {
    type Context: BackendContext;

Show 22 methods // Required method fn build<'async_trait>( self ) -> Pin<Box<dyn Future<Output = AnyResult<Self::Context>> + Send + 'async_trait>> where Self: 'async_trait; // Provided methods fn check_up(&self) -> Option<BackendFeature<Self::Context, dyn CheckUp>> { ... } fn add_folder(&self) -> Option<BackendFeature<Self::Context, dyn AddFolder>> { ... } fn list_folders( &self ) -> Option<BackendFeature<Self::Context, dyn ListFolders>> { ... } fn expunge_folder( &self ) -> Option<BackendFeature<Self::Context, dyn ExpungeFolder>> { ... } fn purge_folder( &self ) -> Option<BackendFeature<Self::Context, dyn PurgeFolder>> { ... } fn delete_folder( &self ) -> Option<BackendFeature<Self::Context, dyn DeleteFolder>> { ... } fn get_envelope( &self ) -> Option<BackendFeature<Self::Context, dyn GetEnvelope>> { ... } fn list_envelopes( &self ) -> Option<BackendFeature<Self::Context, dyn ListEnvelopes>> { ... } fn watch_envelopes( &self ) -> Option<BackendFeature<Self::Context, dyn WatchEnvelopes>> { ... } fn add_flags(&self) -> Option<BackendFeature<Self::Context, dyn AddFlags>> { ... } fn set_flags(&self) -> Option<BackendFeature<Self::Context, dyn SetFlags>> { ... } fn remove_flags( &self ) -> Option<BackendFeature<Self::Context, dyn RemoveFlags>> { ... } fn add_message( &self ) -> Option<BackendFeature<Self::Context, dyn AddMessage>> { ... } fn send_message( &self ) -> Option<BackendFeature<Self::Context, dyn SendMessage>> { ... } fn peek_messages( &self ) -> Option<BackendFeature<Self::Context, dyn PeekMessages>> { ... } fn get_messages( &self ) -> Option<BackendFeature<Self::Context, dyn GetMessages>> { ... } fn copy_messages( &self ) -> Option<BackendFeature<Self::Context, dyn CopyMessages>> { ... } fn move_messages( &self ) -> Option<BackendFeature<Self::Context, dyn MoveMessages>> { ... } fn delete_messages( &self ) -> Option<BackendFeature<Self::Context, dyn DeleteMessages>> { ... } fn remove_messages( &self ) -> Option<BackendFeature<Self::Context, dyn RemoveMessages>> { ... } fn try_to_sync_cache_builder( &self, account_config: &AccountConfig ) -> Result<MaildirContextBuilder, Error> where Self: SyncHash { ... }
}
Expand description

The backend context builder.

This trait defines how a context should be built. It also defines default backend features implemented by the context itself.

Required Associated Types§

source

type Context: BackendContext

The type of the context being built by this builder.

Required Methods§

source

fn build<'async_trait>( self ) -> Pin<Box<dyn Future<Output = AnyResult<Self::Context>> + Send + 'async_trait>>
where Self: 'async_trait,

Build the final context used by the backend.

Provided Methods§

source

fn check_up(&self) -> Option<BackendFeature<Self::Context, dyn CheckUp>>

Define the given backend feature.

source

fn add_folder(&self) -> Option<BackendFeature<Self::Context, dyn AddFolder>>

Define the given backend feature.

source

fn list_folders(&self) -> Option<BackendFeature<Self::Context, dyn ListFolders>>

Define the given backend feature.

source

fn expunge_folder( &self ) -> Option<BackendFeature<Self::Context, dyn ExpungeFolder>>

Define the given backend feature.

source

fn purge_folder(&self) -> Option<BackendFeature<Self::Context, dyn PurgeFolder>>

Define the given backend feature.

source

fn delete_folder( &self ) -> Option<BackendFeature<Self::Context, dyn DeleteFolder>>

Define the given backend feature.

source

fn get_envelope(&self) -> Option<BackendFeature<Self::Context, dyn GetEnvelope>>

Define the given backend feature.

source

fn list_envelopes( &self ) -> Option<BackendFeature<Self::Context, dyn ListEnvelopes>>

Define the given backend feature.

source

fn watch_envelopes( &self ) -> Option<BackendFeature<Self::Context, dyn WatchEnvelopes>>

Define the given backend feature.

source

fn add_flags(&self) -> Option<BackendFeature<Self::Context, dyn AddFlags>>

Define the given backend feature.

source

fn set_flags(&self) -> Option<BackendFeature<Self::Context, dyn SetFlags>>

Define the given backend feature.

source

fn remove_flags(&self) -> Option<BackendFeature<Self::Context, dyn RemoveFlags>>

Define the given backend feature.

source

fn add_message(&self) -> Option<BackendFeature<Self::Context, dyn AddMessage>>

Define the given backend feature.

source

fn send_message(&self) -> Option<BackendFeature<Self::Context, dyn SendMessage>>

Define the given backend feature.

source

fn peek_messages( &self ) -> Option<BackendFeature<Self::Context, dyn PeekMessages>>

Define the given backend feature.

source

fn get_messages(&self) -> Option<BackendFeature<Self::Context, dyn GetMessages>>

Define the given backend feature.

source

fn copy_messages( &self ) -> Option<BackendFeature<Self::Context, dyn CopyMessages>>

Define the given backend feature.

source

fn move_messages( &self ) -> Option<BackendFeature<Self::Context, dyn MoveMessages>>

Define the given backend feature.

source

fn delete_messages( &self ) -> Option<BackendFeature<Self::Context, dyn DeleteMessages>>

Define the given backend feature.

source

fn remove_messages( &self ) -> Option<BackendFeature<Self::Context, dyn RemoveMessages>>

Define the given backend feature.

source

fn try_to_sync_cache_builder( &self, account_config: &AccountConfig ) -> Result<MaildirContextBuilder, Error>
where Self: SyncHash,

Object Safety§

This trait is not object safe.

Implementors§