diff options
Diffstat (limited to 'crates/shirabe/src/dependency_resolver/operation/install_operation.rs')
| -rw-r--r-- | crates/shirabe/src/dependency_resolver/operation/install_operation.rs | 29 |
1 files changed, 5 insertions, 24 deletions
diff --git a/crates/shirabe/src/dependency_resolver/operation/install_operation.rs b/crates/shirabe/src/dependency_resolver/operation/install_operation.rs index ef492393..05349c2d 100644 --- a/crates/shirabe/src/dependency_resolver/operation/install_operation.rs +++ b/crates/shirabe/src/dependency_resolver/operation/install_operation.rs @@ -1,10 +1,9 @@ //! ref: composer/src/Composer/DependencyResolver/Operation/InstallOperation.php -use crate::dependency_resolver::operation::OperationInterface; use crate::dependency_resolver::operation::SolverOperation; use crate::package::PackageInterfaceHandle; -#[derive(Debug)] +#[derive(Debug, Clone)] pub struct InstallOperation { pub(crate) package: PackageInterfaceHandle, } @@ -18,6 +17,10 @@ impl InstallOperation { self.package.clone() } + pub fn show(&self, lock: bool) -> String { + Self::format(self.package.clone(), lock) + } + pub fn format(package: PackageInterfaceHandle, lock: bool) -> String { format!( "{}<info>{}</info> (<comment>{}</comment>)", @@ -32,28 +35,6 @@ impl SolverOperation for InstallOperation { const TYPE: &'static str = "install"; } -impl OperationInterface for InstallOperation { - fn as_any(&self) -> &dyn std::any::Any { - self - } - - fn get_operation_type(&self) -> String { - Self::TYPE.to_string() - } - - fn show(&self, lock: bool) -> String { - Self::format(self.package.clone(), lock) - } - - fn as_install_operation(&self) -> Option<&InstallOperation> { - Some(self) - } - - fn get_package(&self) -> PackageInterfaceHandle { - self.package.clone() - } -} - impl std::fmt::Display for InstallOperation { fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { write!(f, "{}", self.show(false)) |
