SimpleKernel 1.17.0
Loading...
Searching...
No Matches
vfs::InodeOps Class Referenceabstract

Inode 操作接口 More...

#include <vfs_types.hpp>

Inheritance diagram for vfs::InodeOps:
Inheritance graph
Collaboration diagram for vfs::InodeOps:
Collaboration graph

Public Member Functions

virtual auto Lookup (Inode *dir, const char *name) -> Expected< Inode * >=0
 在目录中查找指定名称的 inode
 
virtual auto Create (Inode *dir, const char *name, FileType type) -> Expected< Inode * >=0
 在目录中创建新文件
 
virtual auto Unlink (Inode *dir, const char *name) -> Expected< void >=0
 删除文件(解除链接)
 
virtual auto Mkdir (Inode *dir, const char *name) -> Expected< Inode * >=0
 创建目录
 
virtual auto Rmdir (Inode *dir, const char *name) -> Expected< void >=0
 删除目录
 
构造/析构函数
 InodeOps ()=default
 
 InodeOps (const InodeOps &)=delete
 
 InodeOps (InodeOps &&)=delete
 
auto operator= (const InodeOps &) -> InodeOps &=delete
 
auto operator= (InodeOps &&) -> InodeOps &=delete
 
virtual ~InodeOps ()=default
 

Detailed Description

Inode 操作接口

Definition at line 104 of file vfs_types.hpp.

Constructor & Destructor Documentation

◆ InodeOps() [1/3]

vfs::InodeOps::InodeOps ( )
default

◆ InodeOps() [2/3]

vfs::InodeOps::InodeOps ( const InodeOps )
delete

◆ InodeOps() [3/3]

vfs::InodeOps::InodeOps ( InodeOps &&  )
delete

◆ ~InodeOps()

virtual vfs::InodeOps::~InodeOps ( )
virtualdefault

Member Function Documentation

◆ Create()

virtual auto vfs::InodeOps::Create ( Inode dir,
const char *  name,
FileType  type 
) -> Expected< Inode * >
pure virtual

在目录中创建新文件

Parameters
dir父目录 inode
name文件名
type文件类型
Returns
Expected<Inode*> 新创建的 inode 或错误
Precondition
dir != nullptr && dir->type == FileType::kDirectory
name != nullptr && strlen(name) > 0
Postcondition
返回的 inode->type == type

Implemented in fatfs::FatFsFileSystem::FatFsInodeOps, and ramfs::RamFs::RamFsInodeOps.

Here is the caller graph for this function:

◆ Lookup()

virtual auto vfs::InodeOps::Lookup ( Inode dir,
const char *  name 
) -> Expected< Inode * >
pure virtual

在目录中查找指定名称的 inode

Parameters
dir父目录 inode
name要查找的文件名
Returns
Expected<Inode*> 找到的 inode 或错误
Precondition
dir != nullptr && dir->type == FileType::kDirectory
name != nullptr && strlen(name) > 0

Implemented in fatfs::FatFsFileSystem::FatFsInodeOps, and ramfs::RamFs::RamFsInodeOps.

Here is the caller graph for this function:

◆ Mkdir()

virtual auto vfs::InodeOps::Mkdir ( Inode dir,
const char *  name 
) -> Expected< Inode * >
pure virtual

创建目录

Parameters
dir父目录 inode
name目录名
Returns
Expected<Inode*> 新创建的目录 inode 或错误
Precondition
dir != nullptr && dir->type == FileType::kDirectory
name != nullptr && strlen(name) > 0
Postcondition
返回的 inode->type == FileType::kDirectory

Implemented in fatfs::FatFsFileSystem::FatFsInodeOps, and ramfs::RamFs::RamFsInodeOps.

Here is the caller graph for this function:

◆ operator=() [1/2]

auto vfs::InodeOps::operator= ( const InodeOps ) -> InodeOps &=delete
delete

◆ operator=() [2/2]

auto vfs::InodeOps::operator= ( InodeOps &&  ) -> InodeOps &=delete
delete

◆ Rmdir()

virtual auto vfs::InodeOps::Rmdir ( Inode dir,
const char *  name 
) -> Expected< void >
pure virtual

删除目录

Parameters
dir父目录 inode
name要删除的目录名
Returns
Expected<void> 成功或错误
Precondition
dir != nullptr && dir->type == FileType::kDirectory
name != nullptr

Implemented in fatfs::FatFsFileSystem::FatFsInodeOps, and ramfs::RamFs::RamFsInodeOps.

Here is the caller graph for this function:

◆ Unlink()

virtual auto vfs::InodeOps::Unlink ( Inode dir,
const char *  name 
) -> Expected< void >
pure virtual

删除文件(解除链接)

Parameters
dir父目录 inode
name要删除的文件名
Returns
Expected<void> 成功或错误
Precondition
dir != nullptr && dir->type == FileType::kDirectory
name != nullptr

Implemented in fatfs::FatFsFileSystem::FatFsInodeOps, and ramfs::RamFs::RamFsInodeOps.

Here is the caller graph for this function:

The documentation for this class was generated from the following file: