public void Collect(IList list, Predicate predicate) { if (null == list) { throw new ArgumentNullException("list"); } if (null == predicate) { throw new ArgumentNullException("predicate"); } InnerCollect(list, predicate); }