main
 1namespace gorilla.commons.utility
 2{
 3    public class OrSpecification<T> : Specification<T>
 4    {
 5        readonly Specification<T> left;
 6        readonly Specification<T> right;
 7
 8        public OrSpecification(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}