aboutsummaryrefslogtreecommitdiffhomepage
path: root/crates/shirabe/src/dependency_resolver/operation/install_operation.rs
diff options
context:
space:
mode:
Diffstat (limited to 'crates/shirabe/src/dependency_resolver/operation/install_operation.rs')
-rw-r--r--crates/shirabe/src/dependency_resolver/operation/install_operation.rs29
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))