aboutsummaryrefslogtreecommitdiffhomepage
path: root/crates/shirabe/src/dependency_resolver/operation
diff options
context:
space:
mode:
authornsfisis <nsfisis@gmail.com>2026-06-06 15:36:28 +0900
committernsfisis <nsfisis@gmail.com>2026-06-06 15:36:28 +0900
commit44e82cc7d937d49593c6f436d03a38f3371b6873 (patch)
tree227a7aac9d6b39c92108ffb78c0945cb7737d27c /crates/shirabe/src/dependency_resolver/operation
parent165b77b169fbb13a984b6d80f610e3aaa33334e6 (diff)
downloadphp-shirabe-44e82cc7d937d49593c6f436d03a38f3371b6873.tar.gz
php-shirabe-44e82cc7d937d49593c6f436d03a38f3371b6873.tar.zst
php-shirabe-44e82cc7d937d49593c6f436d03a38f3371b6873.zip
refactor(operation,link): port __toString to Display
Move __toString ports to std::fmt::Display: convert Link's inherent to_string() and make OperationInterface require Display instead of a to_string() method, with each operation implementing Display. Also fix the operation __toString output to use show(false), matching SolverOperation::__toString() (was show(true)). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Diffstat (limited to 'crates/shirabe/src/dependency_resolver/operation')
-rw-r--r--crates/shirabe/src/dependency_resolver/operation/install_operation.rs10
-rw-r--r--crates/shirabe/src/dependency_resolver/operation/mark_alias_installed_operation.rs6
-rw-r--r--crates/shirabe/src/dependency_resolver/operation/mark_alias_uninstalled_operation.rs6
-rw-r--r--crates/shirabe/src/dependency_resolver/operation/operation_interface.rs4
-rw-r--r--crates/shirabe/src/dependency_resolver/operation/uninstall_operation.rs10
-rw-r--r--crates/shirabe/src/dependency_resolver/operation/update_operation.rs10
6 files changed, 27 insertions, 19 deletions
diff --git a/crates/shirabe/src/dependency_resolver/operation/install_operation.rs b/crates/shirabe/src/dependency_resolver/operation/install_operation.rs
index 1331591..ca3286c 100644
--- a/crates/shirabe/src/dependency_resolver/operation/install_operation.rs
+++ b/crates/shirabe/src/dependency_resolver/operation/install_operation.rs
@@ -45,11 +45,13 @@ impl OperationInterface for InstallOperation {
Self::format(self.package.clone(), lock)
}
- fn to_string(&self) -> String {
- self.show(true)
- }
-
fn as_install_operation(&self) -> Option<&InstallOperation> {
Some(self)
}
}
+
+impl std::fmt::Display for InstallOperation {
+ fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
+ write!(f, "{}", self.show(false))
+ }
+}
diff --git a/crates/shirabe/src/dependency_resolver/operation/mark_alias_installed_operation.rs b/crates/shirabe/src/dependency_resolver/operation/mark_alias_installed_operation.rs
index f5cb825..ab07b6a 100644
--- a/crates/shirabe/src/dependency_resolver/operation/mark_alias_installed_operation.rs
+++ b/crates/shirabe/src/dependency_resolver/operation/mark_alias_installed_operation.rs
@@ -44,8 +44,10 @@ impl OperationInterface for MarkAliasInstalledOperation {
.get_full_pretty_version(true, crate::package::DisplayMode::SourceRefIfDev),
)
}
+}
- fn to_string(&self) -> String {
- self.show(true)
+impl std::fmt::Display for MarkAliasInstalledOperation {
+ fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
+ write!(f, "{}", self.show(false))
}
}
diff --git a/crates/shirabe/src/dependency_resolver/operation/mark_alias_uninstalled_operation.rs b/crates/shirabe/src/dependency_resolver/operation/mark_alias_uninstalled_operation.rs
index f8314f5..1b107f0 100644
--- a/crates/shirabe/src/dependency_resolver/operation/mark_alias_uninstalled_operation.rs
+++ b/crates/shirabe/src/dependency_resolver/operation/mark_alias_uninstalled_operation.rs
@@ -44,8 +44,10 @@ impl OperationInterface for MarkAliasUninstalledOperation {
.get_full_pretty_version(true, crate::package::DisplayMode::SourceRefIfDev),
)
}
+}
- fn to_string(&self) -> String {
- self.show(true)
+impl std::fmt::Display for MarkAliasUninstalledOperation {
+ fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
+ write!(f, "{}", self.show(false))
}
}
diff --git a/crates/shirabe/src/dependency_resolver/operation/operation_interface.rs b/crates/shirabe/src/dependency_resolver/operation/operation_interface.rs
index 51b150c..30ed8eb 100644
--- a/crates/shirabe/src/dependency_resolver/operation/operation_interface.rs
+++ b/crates/shirabe/src/dependency_resolver/operation/operation_interface.rs
@@ -4,15 +4,13 @@ use crate::dependency_resolver::operation::InstallOperation;
use crate::dependency_resolver::operation::UninstallOperation;
use crate::dependency_resolver::operation::UpdateOperation;
-pub trait OperationInterface: std::fmt::Debug {
+pub trait OperationInterface: std::fmt::Display + std::fmt::Debug {
fn as_any(&self) -> &dyn std::any::Any;
fn get_operation_type(&self) -> String;
fn show(&self, lock: bool) -> String;
- fn to_string(&self) -> String;
-
fn as_install_operation(&self) -> Option<&InstallOperation> {
None
}
diff --git a/crates/shirabe/src/dependency_resolver/operation/uninstall_operation.rs b/crates/shirabe/src/dependency_resolver/operation/uninstall_operation.rs
index 465297d..efb3610 100644
--- a/crates/shirabe/src/dependency_resolver/operation/uninstall_operation.rs
+++ b/crates/shirabe/src/dependency_resolver/operation/uninstall_operation.rs
@@ -44,11 +44,13 @@ impl OperationInterface for UninstallOperation {
Self::format(self.package.clone(), lock)
}
- fn to_string(&self) -> String {
- self.show(true)
- }
-
fn as_uninstall_operation(&self) -> Option<&UninstallOperation> {
Some(self)
}
}
+
+impl std::fmt::Display for UninstallOperation {
+ fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
+ write!(f, "{}", self.show(false))
+ }
+}
diff --git a/crates/shirabe/src/dependency_resolver/operation/update_operation.rs b/crates/shirabe/src/dependency_resolver/operation/update_operation.rs
index 0bf3e35..76b1718 100644
--- a/crates/shirabe/src/dependency_resolver/operation/update_operation.rs
+++ b/crates/shirabe/src/dependency_resolver/operation/update_operation.rs
@@ -95,11 +95,13 @@ impl OperationInterface for UpdateOperation {
)
}
- fn to_string(&self) -> String {
- self.show(true)
- }
-
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))
+ }
+}