mirror of
https://github.com/RGBCube/serenity
synced 2025-05-31 10:38:11 +00:00
Kernel: Add File::is_regular_file()
This makes it easy and expressive to check if a File is a regular file.
This commit is contained in:
parent
c8ff2184bd
commit
4dd148f07c
3 changed files with 9 additions and 0 deletions
|
@ -115,6 +115,8 @@ public:
|
||||||
virtual bool is_socket() const { return false; }
|
virtual bool is_socket() const { return false; }
|
||||||
virtual bool is_inode_watcher() const { return false; }
|
virtual bool is_inode_watcher() const { return false; }
|
||||||
|
|
||||||
|
virtual bool is_regular_file() const { return false; }
|
||||||
|
|
||||||
virtual FileBlockerSet& blocker_set() { return m_blocker_set; }
|
virtual FileBlockerSet& blocker_set() { return m_blocker_set; }
|
||||||
|
|
||||||
size_t attach_count() const { return m_attach_count; }
|
size_t attach_count() const { return m_attach_count; }
|
||||||
|
|
|
@ -120,4 +120,9 @@ ErrorOr<void> InodeFile::chmod(Credentials const& credentials, OpenFileDescripti
|
||||||
return VirtualFileSystem::the().chmod(credentials, *description.custody(), mode);
|
return VirtualFileSystem::the().chmod(credentials, *description.custody(), mode);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool InodeFile::is_regular_file() const
|
||||||
|
{
|
||||||
|
return inode().metadata().is_regular_file();
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -49,6 +49,8 @@ public:
|
||||||
virtual bool is_inode() const override { return true; }
|
virtual bool is_inode() const override { return true; }
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
virtual bool is_regular_file() const override;
|
||||||
|
|
||||||
explicit InodeFile(NonnullLockRefPtr<Inode>&&);
|
explicit InodeFile(NonnullLockRefPtr<Inode>&&);
|
||||||
NonnullLockRefPtr<Inode> m_inode;
|
NonnullLockRefPtr<Inode> m_inode;
|
||||||
};
|
};
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue