ModuleSetup returns a concrete type via a generic type parameter
This commit is contained in:
parent
863f48604c
commit
7019a0a071
4 changed files with 12 additions and 12 deletions
|
|
@ -53,8 +53,8 @@ impl Module<PackageArgs, (), PackageError> for PackageModule<Box<dyn SpecificPac
|
|||
}
|
||||
}
|
||||
|
||||
impl ModuleSetup<PackageArgs, (), PackageError> for PackageModule<NoManager> {
|
||||
fn with_facts(self, facts: &Facts) -> Box<dyn Module<PackageArgs, (), PackageError>> {
|
||||
impl ModuleSetup<PackageModule<Box<dyn SpecificPackageManager>>, PackageArgs, (), PackageError> for PackageModule<NoManager> {
|
||||
fn with_facts(self, facts: &Facts) -> PackageModule<Box<dyn SpecificPackageManager>> {
|
||||
let Self { args, .. } = self;
|
||||
|
||||
let manager: Box<dyn SpecificPackageManager> = match facts.os.family() {
|
||||
|
|
@ -62,10 +62,10 @@ impl ModuleSetup<PackageArgs, (), PackageError> for PackageModule<NoManager> {
|
|||
OsFamily::Archlinux => Box::new(ArchlinuxPackageManager),
|
||||
};
|
||||
|
||||
Box::new(PackageModule {
|
||||
PackageModule {
|
||||
args,
|
||||
manager,
|
||||
})
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue