public NotSpecification(RootSpecification <T> specification) { _specification = specification; }
public OrSpecification(IRootSpecification <T> left, IRootSpecification <T> right) { _right = right as RootSpecification <T> ?? throw new InvalidCastException(nameof(right)); _left = left as RootSpecification <T> ?? throw new InvalidCastException(nameof(left));; }
public AndSpecification(IRootSpecification <T> left, IRootSpecification <T> right) { _right = right as RootSpecification <T>; _left = left as RootSpecification <T>; }