Skip to main content

passay_rs/rule/
message_resolver.rs

1use crate::rule::rule_result::RuleResultDetail;
2
3/// Strategy pattern interface for resolving messages from password validation failures described
4/// by a RuleResultDetail object.
5pub trait MessageResolver {
6    /// Resolves the message for the supplied rule result detail.
7    fn resolve(&self, detail: &RuleResultDetail) -> String;
8}
9
10pub struct DebugMessageResolver;
11
12impl MessageResolver for DebugMessageResolver {
13    fn resolve(&self, detail: &RuleResultDetail) -> String {
14        format!("{detail:?}")
15    }
16}