aboutsummaryrefslogtreecommitdiffhomepage
path: root/crates/shirabe/src/dependency_resolver/generic_rule.rs
diff options
context:
space:
mode:
Diffstat (limited to 'crates/shirabe/src/dependency_resolver/generic_rule.rs')
-rw-r--r--crates/shirabe/src/dependency_resolver/generic_rule.rs39
1 files changed, 22 insertions, 17 deletions
diff --git a/crates/shirabe/src/dependency_resolver/generic_rule.rs b/crates/shirabe/src/dependency_resolver/generic_rule.rs
index 23d1e3c..1c7f5f4 100644
--- a/crates/shirabe/src/dependency_resolver/generic_rule.rs
+++ b/crates/shirabe/src/dependency_resolver/generic_rule.rs
@@ -62,23 +62,6 @@ impl GenericRule {
pub fn is_assertion(&self) -> bool {
self.literals.len() == 1
}
-
- pub fn to_string(&self) -> String {
- let prefix = if self.inner.is_disabled() {
- "disabled("
- } else {
- "("
- };
- let mut result = prefix.to_string();
- for (i, literal) in self.literals.iter().enumerate() {
- if i != 0 {
- result.push('|');
- }
- result.push_str(&literal.to_string());
- }
- result.push(')');
- result
- }
}
pub trait RuleLiterals {
@@ -139,3 +122,25 @@ impl Rule for GenericRule {
todo!()
}
}
+
+impl std::fmt::Display for GenericRule {
+ fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
+ write!(
+ f,
+ "{}",
+ if self.inner.is_disabled() {
+ "disabled("
+ } else {
+ "("
+ }
+ )?;
+
+ for (i, literal) in self.literals.iter().enumerate() {
+ if i != 0 {
+ write!(f, "|")?;
+ }
+ write!(f, "{}", literal)?;
+ }
+ write!(f, ")")
+ }
+}