public static IEnumerable <FPath> EnumerateParents(this FPath path) { while (true) { var oldPath = path; path = path.Up(); if (path == oldPath) { break; } yield return(path); } }
public static IEnumerable <FPath> EnumerateParents(this FPath path, bool includeIfDir) { if (path.IsDirectory && includeIfDir) { yield return(path); } while (true) { var oldPath = path; path = path.Up(); if (path == oldPath) { break; } yield return(path); } }