diff options
| author | nsfisis <nsfisis@gmail.com> | 2026-05-17 17:44:03 +0900 |
|---|---|---|
| committer | nsfisis <nsfisis@gmail.com> | 2026-05-17 17:44:03 +0900 |
| commit | 1fe1cd3fe9da3f34d8529a0c4cc89fdc61af5065 (patch) | |
| tree | 1303e9577e4fc580805fc9ab435bb8f90801233e /crates/shirabe/src/dependency_resolver/rule_set.rs | |
| parent | cb2adb32c90b4150c96518ec5be152be70bcb792 (diff) | |
| download | php-shirabe-1fe1cd3fe9da3f34d8529a0c4cc89fdc61af5065.tar.gz php-shirabe-1fe1cd3fe9da3f34d8529a0c4cc89fdc61af5065.tar.zst php-shirabe-1fe1cd3fe9da3f34d8529a0c4cc89fdc61af5065.zip | |
fix(compile): add dyn keyword to all trait object usages (E0782)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Diffstat (limited to 'crates/shirabe/src/dependency_resolver/rule_set.rs')
| -rw-r--r-- | crates/shirabe/src/dependency_resolver/rule_set.rs | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/crates/shirabe/src/dependency_resolver/rule_set.rs b/crates/shirabe/src/dependency_resolver/rule_set.rs index 4fc7928..8d33abf 100644 --- a/crates/shirabe/src/dependency_resolver/rule_set.rs +++ b/crates/shirabe/src/dependency_resolver/rule_set.rs @@ -11,10 +11,10 @@ use crate::repository::repository_set::RepositorySet; #[derive(Debug)] pub struct RuleSet { - pub rule_by_id: IndexMap<i64, Rule>, - pub(crate) rules: IndexMap<i64, Vec<Rule>>, + pub rule_by_id: IndexMap<i64, Box<dyn Rule>>, + pub(crate) rules: IndexMap<i64, Vec<Box<dyn Rule>>>, pub(crate) next_rule_id: i64, - pub(crate) rules_by_hash: IndexMap<String, Vec<Rule>>, + pub(crate) rules_by_hash: IndexMap<String, Vec<Box<dyn Rule>>>, } impl RuleSet { @@ -47,7 +47,7 @@ impl RuleSet { Self::types().into_keys().collect() } - pub fn add(&mut self, rule: Rule, r#type: i64) -> anyhow::Result<()> { + pub fn add(&mut self, rule: Box<dyn Rule>, r#type: i64) -> anyhow::Result<()> { let types = Self::types(); if !types.contains_key(&r#type) { return Err(OutOfBoundsException { @@ -88,11 +88,11 @@ impl RuleSet { self.next_rule_id } - pub fn rule_by_id(&self, id: i64) -> &Rule { - &self.rule_by_id[&id] + pub fn rule_by_id(&self, id: i64) -> &dyn Rule { + &*self.rule_by_id[&id] } - pub fn get_rules(&self) -> &IndexMap<i64, Vec<Rule>> { + pub fn get_rules(&self) -> &IndexMap<i64, Vec<Box<dyn Rule>>> { &self.rules } |
