pub trait RuleState {
// Required method
fn get_rule_state(&self) -> &RuleStateBase;
// Provided methods
fn severity(&self) -> i32 { ... }
fn related_rules(&self) -> HashMap<&String, &Vec<String>> { ... }
fn related_unique_ids(&self) -> HashMap<&String, &Vec<String>> { ... }
}
Expand description
A trait representing a possible state of a Rule
.
A Rule
can have multiple states that affect agent behavior. This trait
provides a common interface for accessing the properties shared by all
rule states, such as severity and related rules.
This trait is implemented by specific state types like DiscreteValue
and Range
.
§Implementors
When implementing this trait, you must provide an implementation for the
[get_rule_state()
] method, which gives access to the underlying
RuleStateBase
data. The other methods have default implementations.
Required Methods§
Sourcefn get_rule_state(&self) -> &RuleStateBase
fn get_rule_state(&self) -> &RuleStateBase
Gets the underlying RuleStateBase
that contains common state properties.
§Returns
A reference to the RuleStateBase
that contains the severity, related rules,
and related unique ids for the rule state.
Provided Methods§
Sourcefn severity(&self) -> i32
fn severity(&self) -> i32
Returns the severity of the rule state.
§Returns
An i32
representing the severity of the rule state.
The severity is a numeric value that indicates the importance or urgency of the rule. The lower the value, the more strictly the rule is enforced.
Returns a map of related rules ids. The key is the group name and the value is a vector of rule ids.
§Returns
A map of related rules where the key is the group name and the value is a vector of rule ids.
Returns a map of related unique ids. The key is the group name and the value is a vector of unique ids.
§Returns
A map of related unique ids where the key is the group name and the value is a vector of unique ids.