Builder

Trait Builder 

Source
pub trait Builder: Default + 'static {
    type Config: Configurator;

    // Required method
    fn build(self) -> Result<impl Access, Error>;
}
Expand description

Builder is used to set up underlying services.

This trait allows the developer to define a builder struct that can:

  • build a service via builder style API.
  • configure in-memory options like customized_credential_load.

Usually, users don’t need to use or import this trait directly, they can use Operator API instead.

For example:

use opendal_core::services::Memory;
use opendal_core::Operator;
async fn test() -> Result<()> {
    // Create memory backend builder.
    let builder = Memory::default();

    // Build an `Operator` to start operating the storage.
    let op: Operator = Operator::new(builder)?.finish();

    Ok(())
}

Required Associated Types§

Source

type Config: Configurator

Associated configuration for this builder.

Required Methods§

Source

fn build(self) -> Result<impl Access, Error>

Consume the accessor builder to build a service.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementations on Foreign Types§

Source§

impl Builder for ()

Dummy implementation of builder

Implementors§

§

impl Builder for AliyunDriveBuilder

§

impl Builder for AlluxioBuilder

§

impl Builder for AzblobBuilder

§

impl Builder for AzdlsBuilder

§

impl Builder for AzfileBuilder

§

impl Builder for B2Builder

§

impl Builder for CacacheBuilder

§

impl Builder for CloudflareKvBuilder

§

impl Builder for CompfsBuilder

§

impl Builder for CosBuilder

§

impl Builder for D1Builder

§

impl Builder for DashmapBuilder

§

impl Builder for DbfsBuilder

§

impl Builder for DropboxBuilder

§

impl Builder for EtcdBuilder

§

impl Builder for FoundationdbBuilder

§

impl Builder for FsBuilder

§

impl Builder for FtpBuilder

§

impl Builder for GcsBuilder

Source§

impl Builder for GdriveBuilder

§

impl Builder for GhacBuilder

§

impl Builder for GithubBuilder

Source§

impl Builder for GridfsBuilder

Source§

impl Builder for HdfsBuilder

§

impl Builder for HdfsNativeBuilder

§

impl Builder for HttpBuilder

§

impl Builder for HuggingfaceBuilder

§

impl Builder for IpfsBuilder

Source§

impl Builder for IpmfsBuilder

§

impl Builder for KoofrBuilder

§

impl Builder for LakefsBuilder

§

impl Builder for MemcachedBuilder

Source§

impl Builder for MemoryBuilder

§

impl Builder for MiniMokaBuilder

§

impl Builder for MokaBuilder

Source§

impl Builder for MongodbBuilder

Source§

impl Builder for MonoiofsBuilder

§

impl Builder for MysqlBuilder

§

impl Builder for ObsBuilder

§

impl Builder for OnedriveBuilder

§

impl Builder for OssBuilder

§

impl Builder for PcloudBuilder

§

impl Builder for PersyBuilder

§

impl Builder for PostgresqlBuilder

§

impl Builder for RedbBuilder

Source§

impl Builder for RedisBuilder

Source§

impl Builder for RocksdbBuilder

§

impl Builder for S3Builder

§

impl Builder for SeafileBuilder

Source§

impl Builder for SftpBuilder

§

impl Builder for SledBuilder

§

impl Builder for SqliteBuilder

§

impl Builder for SurrealdbBuilder

§

impl Builder for SwiftBuilder

§

impl Builder for TikvBuilder

§

impl Builder for UpyunBuilder

§

impl Builder for VercelBlobBuilder

Source§

impl Builder for WebdavBuilder

Source§

impl Builder for WebhdfsBuilder

§

impl Builder for YandexDiskBuilder