main
 1using System.Collections.Generic;
 2
 3namespace gorilla.commons.utility
 4{
 5    static public class VisitorExtensions
 6    {
 7        static public Result return_value_from_visiting_all_with<Result, T>(this IEnumerable<T> items, ValueReturningVisitor<Result, T> visitor)
 8        {
 9            visitor.reset();
10            items.vist_all_with(visitor);
11            return visitor.value;
12        }
13
14        static public void vist_all_with<T>(this IEnumerable<T> items, Visitor<T> visitor)
15        {
16            items.each(visitor.visit);
17        }
18    }
19}