(&mut self, provider: Arc<dyn Provider>)
| 307 | } |
| 308 | |
| 309 | pub fn register_arc(&mut self, provider: Arc<dyn Provider>) { |
| 310 | let id = provider.id().to_string(); |
| 311 | let models = provider.models(); |
| 312 | let info = ProviderInfo { |
| 313 | id: id.clone(), |
| 314 | name: provider.name().to_string(), |
| 315 | models: models.into_iter().map(|m| (m.id.clone(), m)).collect(), |
| 316 | source: "bundled".to_string(), |
| 317 | options: HashMap::new(), |
| 318 | }; |
| 319 | self.provider_info.insert(id.clone(), info); |
| 320 | self.providers.insert(id, provider); |
| 321 | } |
| 322 | |
| 323 | pub fn get(&self, id: &str) -> Option<Arc<dyn Provider>> { |
| 324 | self.providers.get(id).cloned() |
no test coverage detected