main
 1namespace jive
 2{
 3  public class AndSpecification<T> : Specification<T>
 4  {
 5    readonly Specification<T> left;
 6    readonly Specification<T> right;
 7
 8    public AndSpecification(Specification<T> left, Specification<T> right)
 9    {
10      this.left = left;
11      this.right = right;
12    }
13
14    public bool is_satisfied_by(T item)
15    {
16      return left.is_satisfied_by(item) && right.is_satisfied_by(item);
17    }
18  }
19}