namespace XFESystem.Core;
public readonly record struct WorkspaceEntry(string Path, bool IsDirectory, long Length)
{
public string Name => SystemPaths.Name(Path);
}
/// <summary>Every operation addresses the guest namespace. Implementations must never implicitly fall back to host files.</summary>
public interface IWorkspaceStorage
{
bool IsPersistent { get; }
bool Exists(string path);
void CreateDirectory(string path);
WorkspaceEntry[] List(string directory);
string ReadText(string path);
void WriteText(string path, string content);
void Delete(string path);
void Move(string source, string destination);
}
namespace XFESystem.Core;
public readonly record struct WorkspaceEntry(string Path, bool IsDirectory, long Length)
{
public string Name => SystemPaths.Name(Path);
}
/// <summary>Every operation addresses the guest namespace. Implementations must never implicitly fall back to host files.</summary>
public interface IWorkspaceStorage
{
bool IsPersistent { get; }
bool Exists(string path);
void CreateDirectory(string path);
WorkspaceEntry[] List(string directory);
string ReadText(string path);
void WriteText(string path, string content);
void Delete(string path);
void Move(string source, string destination);
}