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".

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

§

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

Source§

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 FoyerBuilder

Source§

impl Builder for FsBuilder

§

impl Builder for FtpBuilder

§

impl Builder for GcsBuilder

§

impl Builder for GcsGrpcBuilder

§

impl Builder for GdriveBuilder

Source§

impl Builder for GhacBuilder

§

impl Builder for GithubBuilder

Source§

impl Builder for GoosefsBuilder

§

impl Builder for GridfsBuilder

§

impl Builder for HdfsBuilder

§

impl Builder for HdfsNativeBuilder

§

impl Builder for HfBuilder

§

impl Builder for HttpBuilder

§

impl Builder for IpfsBuilder

§

impl Builder for IpmfsBuilder

§

impl Builder for KoofrBuilder

§

impl Builder for LakefsBuilder

§

impl Builder for MemcachedBuilder

§

impl Builder for MemoryBuilder

Source§

impl Builder for MiniMokaBuilder

§

impl Builder for MokaBuilder

§

impl Builder for MongodbBuilder

§

impl Builder for MonoiofsBuilder

§

impl Builder for MysqlBuilder

Source§

impl Builder for ObsBuilder

§

impl Builder for OnedriveBuilder

Source§

impl Builder for OssBuilder

§

impl Builder for PcloudBuilder

§

impl Builder for PersyBuilder

§

impl Builder for PostgresqlBuilder

Source§

impl Builder for RedbBuilder

§

impl Builder for RedisBuilder

§

impl Builder for RocksdbBuilder

§

impl Builder for S3Builder

§

impl Builder for SeafileBuilder

§

impl Builder for SftpBuilder

§

impl Builder for SledBuilder

§

impl Builder for SqliteBuilder

§

impl Builder for SurrealdbBuilder

§

impl Builder for SwiftBuilder

Source§

impl Builder for TikvBuilder

Source§

impl Builder for TosBuilder

§

impl Builder for UpyunBuilder

§

impl Builder for VercelArtifactsBuilder

§

impl Builder for VercelBlobBuilder

§

impl Builder for WebdavBuilder

§

impl Builder for WebhdfsBuilder

§

impl Builder for YandexDiskBuilder