Skip to main content

Builder

Trait Builder 

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

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

OpenDAL uses Builder to set up a service.

A Builder allows developers to:

  • Build a service through a builder-style API.
  • Configure in-memory options, such as customized_credential_load.

Users can usually use the Operator API instead of importing and using Builder directly. For example:

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

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

    Ok(())
}

Required Associated Types§

type Config: Configurator

Associated configuration.

Required Methods§

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

Consume the 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§

§

impl Builder for ()

Dummy implementation of builder

§

type Config = ()

§

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

Implementors§

§

impl Builder for AliyunDriveBuilder

Source§

impl Builder for AlluxioBuilder

Source§

impl Builder for AzblobBuilder

Source§

impl Builder for AzdlsBuilder

Source§

impl Builder for AzfileBuilder

Source§

impl Builder for B2Builder

Source§

impl Builder for CacacheBuilder

Source§

impl Builder for CloudflareKvBuilder

Source§

impl Builder for CompfsBuilder

Source§

impl Builder for CosBuilder

§

impl Builder for D1Builder

Source§

impl Builder for DashmapBuilder

Source§

impl Builder for DbfsBuilder

Source§

impl Builder for DropboxBuilder

Source§

impl Builder for EtcdBuilder

Source§

impl Builder for FoundationdbBuilder

Source§

impl Builder for FoyerBuilder

Source§

impl Builder for FsBuilder

Source§

impl Builder for FtpBuilder

Source§

impl Builder for GcsBuilder

Source§

impl Builder for GdriveBuilder

Source§

impl Builder for GhacBuilder

Source§

impl Builder for GithubBuilder

Source§

impl Builder for GoosefsBuilder

Source§

impl Builder for GridfsBuilder

Source§

impl Builder for HdfsBuilder

Source§

impl Builder for HdfsNativeBuilder

Source§

impl Builder for HfBuilder

Source§

impl Builder for HttpBuilder

Source§

impl Builder for IpfsBuilder

Source§

impl Builder for IpmfsBuilder

Source§

impl Builder for KoofrBuilder

Source§

impl Builder for LakefsBuilder

Source§

impl Builder for MemcachedBuilder

§

impl Builder for MemoryBuilder

Source§

impl Builder for MiniMokaBuilder

Source§

impl Builder for MokaBuilder

Source§

impl Builder for MongodbBuilder

Source§

impl Builder for MonoiofsBuilder

Source§

impl Builder for MysqlBuilder

Source§

impl Builder for ObsBuilder

Source§

impl Builder for OnedriveBuilder

Source§

impl Builder for OssBuilder

Source§

impl Builder for PcloudBuilder

Source§

impl Builder for PersyBuilder

Source§

impl Builder for PostgresqlBuilder

Source§

impl Builder for RedbBuilder

Source§

impl Builder for RedisBuilder

Source§

impl Builder for RocksdbBuilder

Source§

impl Builder for S3Builder

Source§

impl Builder for SeafileBuilder

Source§

impl Builder for SftpBuilder

Source§

impl Builder for SledBuilder

Source§

impl Builder for SqliteBuilder

Source§

impl Builder for SurrealdbBuilder

Source§

impl Builder for SwiftBuilder

Source§

impl Builder for TikvBuilder

Source§

impl Builder for TosBuilder

Source§

impl Builder for UpyunBuilder

Source§

impl Builder for VercelArtifactsBuilder

Source§

impl Builder for VercelBlobBuilder

Source§

impl Builder for WebdavBuilder

Source§

impl Builder for WebhdfsBuilder

Source§

impl Builder for YandexDiskBuilder