macro_rules! And { ($rule1:ty, $rule2:ty) => { ... }; ($rule1:ty, $($rule2: ty), +) => { ... }; }
Expand description
A macro to generate a Rule that combines multiple rules
ยงExample
use refined_type::rule::{NonEmptyStringRule, Rule, EmailRule};
use refined_type::And;
type NonEmptyAlphabetString = And![EmailRule<String>, NonEmptyStringRule, EmailRule<String>];
let actual = NonEmptyAlphabetString::validate("sample@example.com".to_string());
assert!(actual.is_ok());