protected PredicateDisjunctionState PredicateDisjunctionState(PredicateBase nextPredicate, bool negate = false) { if (negate) { nextPredicate = Builder.Predicate.Predicate.Not(nextPredicate); } var disjunction = PredicateHelper.AppendOrCreateDisjunction(Predicate, nextPredicate); return(new PredicateDisjunctionState(disjunction)); }