private static IValidatorRule Parse( IEnumerable <ExtensibleType_Type_Group> rules, Dictionary <string, object> objectStorage, Enumerations.JunctionEnum junctionEnum) // throws CertificateValidationException { List <IValidatorRule> ruleList = new List <IValidatorRule>(); foreach (ExtensibleType_Type_Group rule in rules) { ruleList.Add(Parse(rule, objectStorage)); if (junctionEnum == Enumerations.JunctionEnum.AND) { return(Junction.And(ruleList.ToArray())); } if (junctionEnum == Enumerations.JunctionEnum.OR) { return(Junction.Or(ruleList.ToArray())); } // if (junctionEnum == JunctionEnum.XOR) return(Junction.Xor(ruleList.ToArray())); } throw new InvalidOperationException("Rules list cannot be empty"); }