private ActionJoinBuilder <T, TProperty> AddRuleAndReturnActionJoin(RuleValidator specRule) { if (OrNextRule) { if (NextRuleIsConditional) { _propertyValidator.ConditionalOrRule(specRule); } else { _propertyValidator.OrRule(specRule); } } else { if (NextRuleIsConditional) { _propertyValidator.ConditionalAndRule(specRule); } else { _propertyValidator.AndRule(specRule); } } return(new ActionJoinBuilder <T, TProperty>(_propertyValidator)); }