Add more utility functions to VFS

This commit is contained in:
duckdoom4
2023-09-06 00:08:53 +02:00
parent ddc35df319
commit 01ed02e507
10 changed files with 136 additions and 63 deletions

View File

@@ -56,24 +56,24 @@ protected MountPoint GetMountPoint(FileSystemPath path)
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
public IEnumerable<FileSystemPath> GetEntityPaths(FileSystemPath path)
public IEnumerable<FileSystemPath> GetEntityPaths(FileSystemPath path, Func<FileSystemPath, bool>? filter = null)
{
var mount = GetMountPoint(path);
return mount.FileSystem.GetEntityPaths(path);
return mount.FileSystem.GetEntityPaths(path, filter);
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
public IEnumerable<FileSystemPath> GetDirectoryPaths(FileSystemPath path)
public IEnumerable<FileSystemPath> GetDirectoryPaths(FileSystemPath path, Func<FileSystemPath, bool>? filter = null)
{
var mount = GetMountPoint(path);
return mount.FileSystem.GetDirectoryPaths(path);
return mount.FileSystem.GetDirectoryPaths(path, filter);
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
public IEnumerable<FileSystemPath> GetFilePaths(FileSystemPath path)
public IEnumerable<FileSystemPath> GetFilePaths(FileSystemPath path, Func<FileSystemPath, bool>? filter = null)
{
var mount = GetMountPoint(path);
return mount.FileSystem.GetFilePaths(path);
return mount.FileSystem.GetFilePaths(path, filter);
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]