From 07c1ef1aea3a0c60484fdada89de7c5a3b7cf7c6 Mon Sep 17 00:00:00 2001 From: nsfisis Date: Sun, 17 May 2026 20:36:04 +0900 Subject: fix(compile): make Rule trait dyn-compatible by extracting RuleBase Removed the static fn new() from the Rule trait (which prevented dyn compatibility) and moved it into a new RuleBase struct. --- crates/shirabe/src/dependency_resolver/multi_conflict_rule.rs | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'crates/shirabe/src/dependency_resolver/multi_conflict_rule.rs') diff --git a/crates/shirabe/src/dependency_resolver/multi_conflict_rule.rs b/crates/shirabe/src/dependency_resolver/multi_conflict_rule.rs index 33ba3ca..d198a27 100644 --- a/crates/shirabe/src/dependency_resolver/multi_conflict_rule.rs +++ b/crates/shirabe/src/dependency_resolver/multi_conflict_rule.rs @@ -4,12 +4,13 @@ use shirabe_php_shim::PhpMixed; use crate::dependency_resolver::generic_rule::RuleLiterals; use crate::dependency_resolver::request::Request; -use crate::dependency_resolver::rule::{ReasonData, Rule}; +use crate::dependency_resolver::rule::{ReasonData, Rule, RuleBase}; use anyhow::Result; use shirabe_php_shim::{PHP_VERSION_ID, RuntimeException, hash_raw}; #[derive(Debug)] pub struct MultiConflictRule { + inner: RuleBase, pub(crate) literals: Vec, } @@ -31,7 +32,7 @@ impl MultiConflictRule { literals.sort(); Ok(Self { - inner: Rule::new(reason, reason_data), + inner: RuleBase::new(reason, reason_data), literals, }) } -- cgit v1.3.1