pub trait Builder: Default + 'static {
type Config: Configurator;
// Required method
fn build(self) -> Result<impl Access>;
}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
http_clientorcustomized_credential_load.
Usually, users don’t need to use or import this trait directly, they can use Operator API instead.
For example:
use opendal::services::Fs;
use opendal::Operator;
async fn test() -> Result<()> {
// Create fs backend builder.
let mut builder = Fs::default().root("/tmp");
// Build an `Operator` to start operating the storage.
let op: Operator = Operator::new(builder)?.finish();
Ok(())
}Required Associated Types§
Sourcetype Config: Configurator
type Config: Configurator
Associated configuration for this builder.
Required Methods§
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§
Implementors§
Source§impl Builder for AliyunDriveBuilder
Available on crate feature services-aliyun-drive only.
impl Builder for AliyunDriveBuilder
Available on crate feature
services-aliyun-drive only.type Config = AliyunDriveConfig
Source§impl Builder for AlluxioBuilder
Available on crate feature services-alluxio only.
impl Builder for AlluxioBuilder
Available on crate feature
services-alluxio only.type Config = AlluxioConfig
Source§impl Builder for AzblobBuilder
Available on crate feature services-azblob only.
impl Builder for AzblobBuilder
Available on crate feature
services-azblob only.type Config = AzblobConfig
Source§impl Builder for AzdlsBuilder
Available on crate feature services-azdls only.
impl Builder for AzdlsBuilder
Available on crate feature
services-azdls only.type Config = AzdlsConfig
Source§impl Builder for AzfileBuilder
Available on crate feature services-azfile only.
impl Builder for AzfileBuilder
Available on crate feature
services-azfile only.type Config = AzfileConfig
Source§impl Builder for CacacheBuilder
Available on crate feature services-cacache only.
impl Builder for CacacheBuilder
Available on crate feature
services-cacache only.type Config = CacacheConfig
Source§impl Builder for CloudflareKvBuilder
Available on crate feature services-cloudflare-kv only.
impl Builder for CloudflareKvBuilder
Available on crate feature
services-cloudflare-kv only.type Config = CloudflareKvConfig
Source§impl Builder for CompfsBuilder
Available on crate feature services-compfs only.
impl Builder for CompfsBuilder
Available on crate feature
services-compfs only.type Config = CompfsConfig
Source§impl Builder for CosBuilder
Available on crate feature services-cos only.
impl Builder for CosBuilder
Available on crate feature
services-cos only.Source§impl Builder for DashmapBuilder
Available on crate feature services-dashmap only.
impl Builder for DashmapBuilder
Available on crate feature
services-dashmap only.type Config = DashmapConfig
Source§impl Builder for DbfsBuilder
Available on crate feature services-dbfs only.
impl Builder for DbfsBuilder
Available on crate feature
services-dbfs only.type Config = DbfsConfig
Source§impl Builder for DropboxBuilder
Available on crate feature services-dropbox only.
impl Builder for DropboxBuilder
Available on crate feature
services-dropbox only.type Config = DropboxConfig
Source§impl Builder for EtcdBuilder
Available on crate feature services-etcd only.
impl Builder for EtcdBuilder
Available on crate feature
services-etcd only.type Config = EtcdConfig
Source§impl Builder for FoundationdbBuilder
Available on crate feature services-foundationdb only.
impl Builder for FoundationdbBuilder
Available on crate feature
services-foundationdb only.type Config = FoundationdbConfig
Source§impl Builder for FtpBuilder
Available on crate feature services-ftp only.
impl Builder for FtpBuilder
Available on crate feature
services-ftp only.Source§impl Builder for GcsBuilder
Available on crate feature services-gcs only.
impl Builder for GcsBuilder
Available on crate feature
services-gcs only.Source§impl Builder for GdriveBuilder
Available on crate feature services-gdrive only.
impl Builder for GdriveBuilder
Available on crate feature
services-gdrive only.type Config = GdriveConfig
Source§impl Builder for GhacBuilder
Available on crate feature services-ghac only.
impl Builder for GhacBuilder
Available on crate feature
services-ghac only.type Config = GhacConfig
Source§impl Builder for GithubBuilder
Available on crate feature services-github only.
impl Builder for GithubBuilder
Available on crate feature
services-github only.type Config = GithubConfig
Source§impl Builder for GridfsBuilder
Available on crate feature services-gridfs only.
impl Builder for GridfsBuilder
Available on crate feature
services-gridfs only.type Config = GridfsConfig
Source§impl Builder for HdfsBuilder
Available on crate feature services-hdfs only.
impl Builder for HdfsBuilder
Available on crate feature
services-hdfs only.type Config = HdfsConfig
Source§impl Builder for HdfsNativeBuilder
Available on crate feature services-hdfs-native only.
impl Builder for HdfsNativeBuilder
Available on crate feature
services-hdfs-native only.type Config = HdfsNativeConfig
Source§impl Builder for HttpBuilder
Available on crate feature services-http only.
impl Builder for HttpBuilder
Available on crate feature
services-http only.type Config = HttpConfig
Source§impl Builder for HuggingfaceBuilder
Available on crate feature services-huggingface only.
impl Builder for HuggingfaceBuilder
Available on crate feature
services-huggingface only.type Config = HuggingfaceConfig
Source§impl Builder for IpfsBuilder
Available on crate feature services-ipfs only.
impl Builder for IpfsBuilder
Available on crate feature
services-ipfs only.type Config = IpfsConfig
Source§impl Builder for IpmfsBuilder
Available on crate feature services-ipmfs only.
impl Builder for IpmfsBuilder
Available on crate feature
services-ipmfs only.type Config = IpmfsConfig
Source§impl Builder for KoofrBuilder
Available on crate feature services-koofr only.
impl Builder for KoofrBuilder
Available on crate feature
services-koofr only.type Config = KoofrConfig
Source§impl Builder for LakefsBuilder
Available on crate feature services-lakefs only.
impl Builder for LakefsBuilder
Available on crate feature
services-lakefs only.type Config = LakefsConfig
Source§impl Builder for MemcachedBuilder
Available on crate feature services-memcached only.
impl Builder for MemcachedBuilder
Available on crate feature
services-memcached only.type Config = MemcachedConfig
Source§impl Builder for MemoryBuilder
Available on crate feature services-memory only.
impl Builder for MemoryBuilder
Available on crate feature
services-memory only.type Config = MemoryConfig
Source§impl Builder for MiniMokaBuilder
Available on crate feature services-mini-moka only.
impl Builder for MiniMokaBuilder
Available on crate feature
services-mini-moka only.type Config = MiniMokaConfig
Source§impl Builder for MokaBuilder
Available on crate feature services-moka only.
impl Builder for MokaBuilder
Available on crate feature
services-moka only.type Config = MokaConfig
Source§impl Builder for MongodbBuilder
Available on crate feature services-mongodb only.
impl Builder for MongodbBuilder
Available on crate feature
services-mongodb only.type Config = MongodbConfig
Source§impl Builder for MonoiofsBuilder
Available on crate feature services-monoiofs only.
impl Builder for MonoiofsBuilder
Available on crate feature
services-monoiofs only.type Config = MonoiofsConfig
Source§impl Builder for MysqlBuilder
Available on crate feature services-mysql only.
impl Builder for MysqlBuilder
Available on crate feature
services-mysql only.type Config = MysqlConfig
Source§impl Builder for ObsBuilder
Available on crate feature services-obs only.
impl Builder for ObsBuilder
Available on crate feature
services-obs only.Source§impl Builder for OnedriveBuilder
Available on crate feature services-onedrive only.
impl Builder for OnedriveBuilder
Available on crate feature
services-onedrive only.type Config = OnedriveConfig
Source§impl Builder for OssBuilder
Available on crate feature services-oss only.
impl Builder for OssBuilder
Available on crate feature
services-oss only.Source§impl Builder for PcloudBuilder
Available on crate feature services-pcloud only.
impl Builder for PcloudBuilder
Available on crate feature
services-pcloud only.type Config = PcloudConfig
Source§impl Builder for PersyBuilder
Available on crate feature services-persy only.
impl Builder for PersyBuilder
Available on crate feature
services-persy only.type Config = PersyConfig
Source§impl Builder for PostgresqlBuilder
Available on crate feature services-postgresql only.
impl Builder for PostgresqlBuilder
Available on crate feature
services-postgresql only.type Config = PostgresqlConfig
Source§impl Builder for RedbBuilder
Available on crate feature services-redb only.
impl Builder for RedbBuilder
Available on crate feature
services-redb only.type Config = RedbConfig
Source§impl Builder for RedisBuilder
Available on crate feature services-redis only.
impl Builder for RedisBuilder
Available on crate feature
services-redis only.type Config = RedisConfig
Source§impl Builder for RocksdbBuilder
Available on crate feature services-rocksdb only.
impl Builder for RocksdbBuilder
Available on crate feature
services-rocksdb only.type Config = RocksdbConfig
Source§impl Builder for SeafileBuilder
Available on crate feature services-seafile only.
impl Builder for SeafileBuilder
Available on crate feature
services-seafile only.type Config = SeafileConfig
Source§impl Builder for SftpBuilder
Available on crate feature services-sftp only.
impl Builder for SftpBuilder
Available on crate feature
services-sftp only.type Config = SftpConfig
Source§impl Builder for SledBuilder
Available on crate feature services-sled only.
impl Builder for SledBuilder
Available on crate feature
services-sled only.type Config = SledConfig
Source§impl Builder for SqliteBuilder
Available on crate feature services-sqlite only.
impl Builder for SqliteBuilder
Available on crate feature
services-sqlite only.type Config = SqliteConfig
Source§impl Builder for SurrealdbBuilder
Available on crate feature services-surrealdb only.
impl Builder for SurrealdbBuilder
Available on crate feature
services-surrealdb only.type Config = SurrealdbConfig
Source§impl Builder for SwiftBuilder
Available on crate feature services-swift only.
impl Builder for SwiftBuilder
Available on crate feature
services-swift only.type Config = SwiftConfig
Source§impl Builder for TikvBuilder
Available on crate feature services-tikv only.
impl Builder for TikvBuilder
Available on crate feature
services-tikv only.type Config = TikvConfig
Source§impl Builder for UpyunBuilder
Available on crate feature services-upyun only.
impl Builder for UpyunBuilder
Available on crate feature
services-upyun only.type Config = UpyunConfig
Source§impl Builder for VercelArtifactsBuilder
Available on crate feature services-vercel-artifacts only.
impl Builder for VercelArtifactsBuilder
Available on crate feature
services-vercel-artifacts only.Source§impl Builder for VercelBlobBuilder
Available on crate feature services-vercel-blob only.
impl Builder for VercelBlobBuilder
Available on crate feature
services-vercel-blob only.type Config = VercelBlobConfig
Source§impl Builder for WebdavBuilder
Available on crate feature services-webdav only.
impl Builder for WebdavBuilder
Available on crate feature
services-webdav only.type Config = WebdavConfig
Source§impl Builder for WebhdfsBuilder
Available on crate feature services-webhdfs only.
impl Builder for WebhdfsBuilder
Available on crate feature
services-webhdfs only.type Config = WebhdfsConfig
Source§impl Builder for YandexDiskBuilder
Available on crate feature services-yandex-disk only.
impl Builder for YandexDiskBuilder
Available on crate feature
services-yandex-disk only.