datasources 0.1.5

Async datasource interfaces, middleware, registry, and test doubles
Documentation
1
2
3
4
5
6
7
8
9
10
use crate::driver::Driver;
use crate::registry_state::{registry, FactoryPair};
use std::collections::HashMap;
use std::sync::Arc;

pub fn register(provider: impl Into<String>, driver: Arc<dyn Driver>) {
    let mut guard = registry();
    let map = guard.get_or_insert_with(HashMap::new);
    map.insert(provider.into(), FactoryPair { driver });
}