margo_fetch/
source_resolver.rs

1#[cfg(feature = "source_resolver_remote_registry")]
2mod remote_registry;
3#[cfg(feature = "source_resolver_remote_registry")]
4pub use self::remote_registry::RemoteRegistrySourceResolver;
5
6use futures::future::Future as StdFuture;
7
8use crate::Crate;
9
10#[allow(dead_code)]
11type Error = ();
12
13#[allow(dead_code)]
14type Future<T> = Box<dyn StdFuture<Item = T, Error = Error> + Send>;
15
16pub trait SourceResolver {
17    type F: StdFuture<Item = String, Error = ()> + Send;
18
19    fn resolve_crate(&self, _crate: &Crate) -> Self::F;
20}