public IValidationRule <TType> AddPredicate(IValidationPredicate <TType> predicate) { predicate.ThrowIfNull(); m_predicates.Add(predicate); return(this); }
public IValidationTarget <TType> Or(IValidationPredicate <TType> predicate) { predicate.ThrowIfNull(); m_rules.Add(new ValidationRule <TType>(this).AddPredicate(predicate)); return(this); }
public IValidationTarget <TType> And(IValidationPredicate <TType> predicate) { predicate.ThrowIfNull(); m_rules.CurrentRule.AddPredicate(predicate); return(this); }
public override void Add(IValidationPredicate <TType> item) { item.ThrowIfNull(); if (item.Rule is null || item.Rule != m_rule) { item.WithRule(m_rule); } base.Add(item); }