public static PersistenceSpecification <T> CheckProperty <T, TProperty>(this PersistenceSpecification <T> spec,
                                                                         Expression <Func <T, TProperty> > expression,
                                                                         TProperty propertyValue,
                                                                         Action <T, TProperty> propertySetter)
 {
     return(spec.CheckProperty(expression, propertyValue, null, propertySetter));
 }
 public static PersistenceSpecification <T> CheckProperty <T, TListElement>(this PersistenceSpecification <T> spec,
                                                                            Expression <Func <T, Array> > expression,
                                                                            IEnumerable <TListElement> propertyValue)
 {
     return(spec.CheckProperty(expression, propertyValue, null));
 }
 public static PersistenceSpecification <T> CheckProperty <T>(this PersistenceSpecification <T> spec,
                                                              Expression <Func <T, object> > expression, object propertyValue)
 {
     return(spec.CheckProperty(expression, propertyValue, (IEqualityComparer)null));
 }