Lexical.FileProviders.Utils
Lexical.FileProviders.Utils is a namespace that introduces extension methods.
Extension method .ListAllPaths() visits IFileProvider and returns all subpaths. This method uses one thread.
// Scan all subpaths
foreach (string subpath in fileProvider.ListAllPaths())
Console.WriteLine(subpath);
Extension method .ListAll() visits IFileProvider and returns all IFileInfos.
// Scan all file infos
foreach (IFileInfo fi in fileProvider.ListAll())
Console.WriteLine(fi.Name);
Extension method .ListAllFileInfoAndPath() visits IFileProvider and returns both subpath and IFileInfo in a tuple.
// Scan all file infos and their full subpaths
foreach ((IFileInfo, String) pair in fileProvider.ListAllFileInfoAndPath().OrderBy(pair => pair.Item2))
Console.WriteLine(pair.Item2 + (pair.Item1.IsDirectory ? "/" : ""));