passay-rs 0.1.0

A password validation library inspired by the Java Passay library.
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
use crate::rule::rule_result::RuleResultDetail;

/// Strategy pattern interface for resolving messages from password validation failures described
/// by a RuleResultDetail object.
pub trait MessageResolver {
    /// Resolves the message for the supplied rule result detail.
    fn resolve(&self, detail: &RuleResultDetail) -> String;
}

pub struct DebugMessageResolver;

impl MessageResolver for DebugMessageResolver {
    fn resolve(&self, detail: &RuleResultDetail) -> String {
        format!("{detail:?}")
    }
}