@@ -23,11 +23,17 @@ export namespace fs::tmpfs
2323 return instance;
2424 }
2525
26- lib::expect<std::size_t > read (std::shared_ptr<vfs::file> file, std::uint64_t offset, lib::maybe_uspan<std::byte> buffer) override ;
27- lib::expect<std::size_t > write (std::shared_ptr<vfs::file> file, std::uint64_t offset, lib::maybe_uspan<std::byte> buffer) override ;
28- lib::expect<void > trunc (std::shared_ptr<vfs::file> file, std::size_t size) override ;
26+ lib::expect<std::size_t > read (
27+ std::shared_ptr<vfs::file> file, std::uint64_t offset,
28+ lib::maybe_uspan<std::byte> buffer
29+ ) override ;
30+
31+ lib::expect<std::size_t > write (
32+ std::shared_ptr<vfs::file> file, std::uint64_t offset,
33+ lib::maybe_uspan<std::byte> buffer
34+ ) override ;
2935
30- lib::expect<std:: size_t > getdents (std::shared_ptr<vfs::file> file, std::uint64_t &offset, lib::maybe_uspan<std::byte> buffer ) override ;
36+ lib::expect<void > trunc (std::shared_ptr<vfs::file> file, std::size_t size ) override ;
3137
3238 lib::expect<vmm::object::ptr> map (std::shared_ptr<vfs::file> file) override ;
3339 };
@@ -36,12 +42,28 @@ export namespace fs::tmpfs
3642 {
3743 struct instance : vfs::filesystem::instance, std::enable_shared_from_this<instance>
3844 {
39- auto create (std::shared_ptr<vfs::inode> &parent, std::string_view name, mode_t mode, dev_t rdev) -> lib::expect<std::shared_ptr<vfs::inode>> override ;
40- auto symlink (std::shared_ptr<vfs::inode> &parent, std::string_view name, lib::path target) -> lib::expect<std::shared_ptr<vfs::inode>> override ;
41- auto link (std::shared_ptr<vfs::inode> &parent, std::string_view name, std::shared_ptr<vfs::inode> target) -> lib::expect<std::shared_ptr<vfs::inode>> override ;
45+ auto create (
46+ std::shared_ptr<vfs::inode> &parent,
47+ std::string_view name, mode_t mode, dev_t rdev
48+ ) -> lib::expect<std::shared_ptr<vfs::inode>> override ;
49+
50+ auto symlink (
51+ std::shared_ptr<vfs::inode> &parent,
52+ std::string_view name, lib::path target
53+ ) -> lib::expect<std::shared_ptr<vfs::inode>> override ;
54+
55+ auto link (
56+ std::shared_ptr<vfs::inode> &parent,
57+ std::string_view name, std::shared_ptr<vfs::inode> target
58+ ) -> lib::expect<std::shared_ptr<vfs::inode>> override ;
59+
4260 auto unlink (std::shared_ptr<vfs::inode> &node) -> lib::expect<void> override ;
4361
44- auto populate (std::shared_ptr<vfs::inode> &node, std::string_view name = " " ) -> lib::expect<lib::list<std::pair<std::string, std::shared_ptr<vfs::inode>>>> override ;
62+ auto readdir (std::shared_ptr<vfs::dentry> dir, std::size_t cookie)
63+ -> lib::expect<lib::list<vfs::dir_entry>> override ;
64+
65+ auto lookup (std::shared_ptr<vfs::dentry> dir,std::string_view name)
66+ -> lib::expect<std::optional<vfs::dir_entry>> override ;
4567
4668 auto write_inode (std::shared_ptr<vfs::inode> &inode) -> lib::expect<void> override ;
4769 auto dirty_inode (std::shared_ptr<vfs::inode> &inode) -> lib::expect<void> override ;
0 commit comments