mirror of
				https://git.suyu.dev/suyu/suyu
				synced 2025-11-04 00:49:02 -06:00 
			
		
		
		
	FileSys: Updated backend code to use FileSys::Path instead of string for paths.
This commit is contained in:
		@@ -129,12 +129,12 @@ public:
 | 
			
		||||
class File : public Object {
 | 
			
		||||
public:
 | 
			
		||||
    std::string GetTypeName() const override { return "File"; }
 | 
			
		||||
    std::string GetName() const override { return path; }
 | 
			
		||||
    std::string GetName() const override { return path.DebugStr(); }
 | 
			
		||||
 | 
			
		||||
    static Kernel::HandleType GetStaticHandleType() { return HandleType::File; }
 | 
			
		||||
    Kernel::HandleType GetHandleType() const override { return HandleType::File; }
 | 
			
		||||
 | 
			
		||||
    std::string path; ///< Path of the file
 | 
			
		||||
    FileSys::Path path; ///< Path of the file
 | 
			
		||||
    std::unique_ptr<FileSys::File> backend; ///< File backend interface
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
@@ -221,12 +221,12 @@ public:
 | 
			
		||||
class Directory : public Object {
 | 
			
		||||
public:
 | 
			
		||||
    std::string GetTypeName() const override { return "Directory"; }
 | 
			
		||||
    std::string GetName() const override { return path; }
 | 
			
		||||
    std::string GetName() const override { return path.DebugStr(); }
 | 
			
		||||
 | 
			
		||||
    static Kernel::HandleType GetStaticHandleType() { return HandleType::Directory; }
 | 
			
		||||
    Kernel::HandleType GetHandleType() const override { return HandleType::Directory; }
 | 
			
		||||
 | 
			
		||||
    std::string path; ///< Path of the directory
 | 
			
		||||
    FileSys::Path path; ///< Path of the directory
 | 
			
		||||
    std::unique_ptr<FileSys::Directory> backend; ///< File backend interface
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
@@ -366,7 +366,7 @@ Handle CreateArchive(FileSys::Archive* backend, const std::string& name) {
 | 
			
		||||
 * @param mode Mode under which to open the File
 | 
			
		||||
 * @return Opened File object
 | 
			
		||||
 */
 | 
			
		||||
Handle OpenFileFromArchive(Handle archive_handle, const std::string& path, const FileSys::Mode mode) {
 | 
			
		||||
Handle OpenFileFromArchive(Handle archive_handle, const FileSys::Path& path, const FileSys::Mode mode) {
 | 
			
		||||
    File* file = new File;
 | 
			
		||||
    Handle handle = Kernel::g_object_pool.Create(file);
 | 
			
		||||
 | 
			
		||||
@@ -386,7 +386,7 @@ Handle OpenFileFromArchive(Handle archive_handle, const std::string& path, const
 | 
			
		||||
 * @param path Path to the Directory inside of the Archive
 | 
			
		||||
 * @return Opened Directory object
 | 
			
		||||
 */
 | 
			
		||||
Result CreateDirectoryFromArchive(Handle archive_handle, const std::string& path) {
 | 
			
		||||
Result CreateDirectoryFromArchive(Handle archive_handle, const FileSys::Path& path) {
 | 
			
		||||
    Archive* archive = Kernel::g_object_pool.GetFast<Archive>(archive_handle);
 | 
			
		||||
    if (archive == nullptr)
 | 
			
		||||
        return -1;
 | 
			
		||||
@@ -401,7 +401,7 @@ Result CreateDirectoryFromArchive(Handle archive_handle, const std::string& path
 | 
			
		||||
 * @param path Path to the Directory inside of the Archive
 | 
			
		||||
 * @return Opened Directory object
 | 
			
		||||
 */
 | 
			
		||||
Handle OpenDirectoryFromArchive(Handle archive_handle, const std::string& path) {
 | 
			
		||||
Handle OpenDirectoryFromArchive(Handle archive_handle, const FileSys::Path& path) {
 | 
			
		||||
    Directory* directory = new Directory;
 | 
			
		||||
    Handle handle = Kernel::g_object_pool.Create(directory);
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -43,7 +43,7 @@ Handle CreateArchive(FileSys::Archive* backend, const std::string& name);
 | 
			
		||||
 * @param mode Mode under which to open the File
 | 
			
		||||
 * @return Opened File object
 | 
			
		||||
 */
 | 
			
		||||
Handle OpenFileFromArchive(Handle archive_handle, const std::string& name, const FileSys::Mode mode);
 | 
			
		||||
Handle OpenFileFromArchive(Handle archive_handle, const FileSys::Path& path, const FileSys::Mode mode);
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Create a Directory from an Archive
 | 
			
		||||
@@ -51,7 +51,7 @@ Handle OpenFileFromArchive(Handle archive_handle, const std::string& name, const
 | 
			
		||||
 * @param path Path to the Directory inside of the Archive
 | 
			
		||||
 * @return Whether creation of directory succeeded
 | 
			
		||||
 */
 | 
			
		||||
Result CreateDirectoryFromArchive(Handle archive_handle, const std::string& name);
 | 
			
		||||
Result CreateDirectoryFromArchive(Handle archive_handle, const FileSys::Path& path);
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Open a Directory from an Archive
 | 
			
		||||
@@ -59,7 +59,7 @@ Result CreateDirectoryFromArchive(Handle archive_handle, const std::string& name
 | 
			
		||||
 * @param path Path to the Directory inside of the Archive
 | 
			
		||||
 * @return Opened Directory object
 | 
			
		||||
 */
 | 
			
		||||
Handle OpenDirectoryFromArchive(Handle archive_handle, const std::string& name);
 | 
			
		||||
Handle OpenDirectoryFromArchive(Handle archive_handle, const FileSys::Path& path);
 | 
			
		||||
 | 
			
		||||
/// Initialize archives
 | 
			
		||||
void ArchiveInit();
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user