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}