diff options
Diffstat (limited to 'crates/shirabe/src/package')
6 files changed, 26 insertions, 6 deletions
diff --git a/crates/shirabe/src/package/complete_alias_package.rs b/crates/shirabe/src/package/complete_alias_package.rs index 9e1f1f6..54b4486 100644 --- a/crates/shirabe/src/package/complete_alias_package.rs +++ b/crates/shirabe/src/package/complete_alias_package.rs @@ -153,4 +153,8 @@ impl CompletePackageInterface for CompleteAliasPackage { fn set_archive_excludes(&mut self, excludes: Vec<String>) { self.alias_of.set_archive_excludes(excludes); } + + fn as_package_interface(&self) -> &dyn crate::package::PackageInterface { + self + } } diff --git a/crates/shirabe/src/package/complete_package.rs b/crates/shirabe/src/package/complete_package.rs index 033db9b..56d50d5 100644 --- a/crates/shirabe/src/package/complete_package.rs +++ b/crates/shirabe/src/package/complete_package.rs @@ -156,6 +156,10 @@ impl CompletePackageInterface for CompletePackage { fn get_archive_excludes(&self) -> Vec<String> { self.archive_excludes.clone() } + + fn as_package_interface(&self) -> &dyn PackageInterface { + self + } } impl PackageInterface for CompletePackage { diff --git a/crates/shirabe/src/package/complete_package_interface.rs b/crates/shirabe/src/package/complete_package_interface.rs index 549aeb4..8a7ee25 100644 --- a/crates/shirabe/src/package/complete_package_interface.rs +++ b/crates/shirabe/src/package/complete_package_interface.rs @@ -56,7 +56,5 @@ pub trait CompletePackageInterface: PackageInterface { fn set_archive_excludes(&mut self, excludes: Vec<String>); - fn as_package_interface(&self) -> &dyn crate::package::PackageInterface { - todo!() - } + fn as_package_interface(&self) -> &dyn crate::package::PackageInterface; } diff --git a/crates/shirabe/src/package/root_alias_package.rs b/crates/shirabe/src/package/root_alias_package.rs index 9f987eb..140c96d 100644 --- a/crates/shirabe/src/package/root_alias_package.rs +++ b/crates/shirabe/src/package/root_alias_package.rs @@ -146,6 +146,10 @@ impl RootPackageInterface for RootAliasPackage { fn set_extra(&mut self, extra: IndexMap<String, PhpMixed>) { self.alias_of.set_extra(extra); } + + fn as_package_interface(&self) -> &dyn crate::package::PackageInterface { + self + } } impl CompletePackageInterface for RootAliasPackage { @@ -248,4 +252,8 @@ impl CompletePackageInterface for RootAliasPackage { fn set_archive_excludes(&mut self, excludes: Vec<String>) { self.inner.set_archive_excludes(excludes); } + + fn as_package_interface(&self) -> &dyn crate::package::PackageInterface { + self + } } diff --git a/crates/shirabe/src/package/root_package.rs b/crates/shirabe/src/package/root_package.rs index fc04d25..9cdc6e2 100644 --- a/crates/shirabe/src/package/root_package.rs +++ b/crates/shirabe/src/package/root_package.rs @@ -129,6 +129,10 @@ impl RootPackageInterface for RootPackage { fn set_extra(&mut self, extra: IndexMap<String, PhpMixed>) { self.inner.inner.set_extra(extra); } + + fn as_package_interface(&self) -> &dyn PackageInterface { + self + } } impl CompletePackageInterface for RootPackage { @@ -231,6 +235,10 @@ impl CompletePackageInterface for RootPackage { fn set_archive_excludes(&mut self, excludes: Vec<String>) { CompletePackageInterface::set_archive_excludes(&mut self.inner, excludes) } + + fn as_package_interface(&self) -> &dyn PackageInterface { + self + } } impl std::fmt::Display for RootPackage { diff --git a/crates/shirabe/src/package/root_package_interface.rs b/crates/shirabe/src/package/root_package_interface.rs index aa2534a..d597555 100644 --- a/crates/shirabe/src/package/root_package_interface.rs +++ b/crates/shirabe/src/package/root_package_interface.rs @@ -51,7 +51,5 @@ pub trait RootPackageInterface: CompletePackageInterface { fn set_extra(&mut self, extra: IndexMap<String, PhpMixed>); - fn as_package_interface(&self) -> &dyn PackageInterface { - todo!() - } + fn as_package_interface(&self) -> &dyn PackageInterface; } |
