Pastie now auto-senses if line-wrap is a bad or good idea. Feedback?
## mark a section (Learn more)
public interface IDirectoryVisitor{ public void Visit(DirectoryInfo directory); } public class DirectoryMiner{ private IList<IDirectoryVisitor> _visitors = new List<IDirectoryVisitor>(); public void Accept(IDirectoryVisitor visitor){ _visitors.Add(visitor); } public void MineDirectory(DirectoryInfo directory){ _visitors.Each(v => v.Visit(directory)); directory.GetDirectories().Each(dir=>MineDirectory(dir)); } } public static EachExtension { public static void Each<T>(this IEnumerable<T> list, Action<T> action){ foreach( var item in list){ action(item); } } }
This paste will be private.
From the Design Piracy series on my blog: