diff options
Diffstat (limited to 'crates/shirabe/src/dependency_resolver/operation/update_operation.rs')
| -rw-r--r-- | crates/shirabe/src/dependency_resolver/operation/update_operation.rs | 33 |
1 files changed, 9 insertions, 24 deletions
diff --git a/crates/shirabe/src/dependency_resolver/operation/update_operation.rs b/crates/shirabe/src/dependency_resolver/operation/update_operation.rs index 76b17189..a06a9cdc 100644 --- a/crates/shirabe/src/dependency_resolver/operation/update_operation.rs +++ b/crates/shirabe/src/dependency_resolver/operation/update_operation.rs @@ -1,11 +1,10 @@ //! ref: composer/src/Composer/DependencyResolver/Operation/UpdateOperation.php -use crate::dependency_resolver::operation::OperationInterface; use crate::dependency_resolver::operation::SolverOperation; use crate::package::PackageInterfaceHandle; use crate::package::version::VersionParser; -#[derive(Debug)] +#[derive(Debug, Clone)] pub struct UpdateOperation { pub(crate) initial_package: PackageInterfaceHandle, pub(crate) target_package: PackageInterfaceHandle, @@ -27,6 +26,14 @@ impl UpdateOperation { self.target_package.clone() } + pub fn show(&self, lock: bool) -> String { + Self::format( + self.initial_package.clone(), + self.target_package.clone(), + lock, + ) + } + pub fn format( initial_package: PackageInterfaceHandle, target_package: PackageInterfaceHandle, @@ -78,28 +85,6 @@ impl SolverOperation for UpdateOperation { const TYPE: &'static str = "update"; } -impl OperationInterface for UpdateOperation { - 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.initial_package.clone(), - self.target_package.clone(), - lock, - ) - } - - fn as_update_operation(&self) -> Option<&UpdateOperation> { - Some(self) - } -} - impl std::fmt::Display for UpdateOperation { fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { write!(f, "{}", self.show(false)) |
