in core/src/types/scheme.rs [140:181]
fn from_str(s: &str) -> Result<Self, Self::Err> {
let s = s.to_lowercase();
match s.as_str() {
"azblob" => Ok(Scheme::Azblob),
"azdfs" => Ok(Scheme::Azdfs),
"cacache" => Ok(Scheme::Cacache),
"cos" => Ok(Scheme::Cos),
"dashmap" => Ok(Scheme::Dashmap),
"dropbox" => Ok(Scheme::Dropbox),
"etcd" => Ok(Scheme::Etcd),
"fs" => Ok(Scheme::Fs),
"gcs" => Ok(Scheme::Gcs),
"gdrive" => Ok(Scheme::Gdrive),
"ghac" => Ok(Scheme::Ghac),
"hdfs" => Ok(Scheme::Hdfs),
"http" | "https" => Ok(Scheme::Http),
"ftp" | "ftps" => Ok(Scheme::Ftp),
"ipfs" | "ipns" => Ok(Scheme::Ipfs),
"ipmfs" => Ok(Scheme::Ipmfs),
"memcached" => Ok(Scheme::Memcached),
"memory" => Ok(Scheme::Memory),
"mini_moka" => Ok(Scheme::MiniMoka),
"moka" => Ok(Scheme::Moka),
"obs" => Ok(Scheme::Obs),
"onedrive" => Ok(Scheme::Onedrive),
"persy" => Ok(Scheme::Persy),
"redb" => Ok(Scheme::Redb),
"redis" => Ok(Scheme::Redis),
"rocksdb" => Ok(Scheme::Rocksdb),
"s3" => Ok(Scheme::S3),
"sftp" => Ok(Scheme::Sftp),
"sled" => Ok(Scheme::Sled),
"supabase" => Ok(Scheme::Supabase),
"oss" => Ok(Scheme::Oss),
"vercel_artifacts" => Ok(Scheme::VercelArtifacts),
"wasabi" => Ok(Scheme::Wasabi),
"webdav" => Ok(Scheme::Webdav),
"webhdfs" => Ok(Scheme::Webhdfs),
"tikv" => Ok(Scheme::Tikv),
_ => Ok(Scheme::Custom(Box::leak(s.into_boxed_str()))),
}
}