aboutsummaryrefslogtreecommitdiff
path: root/kernel/include/kernel/filesystem/rootfs/filesystem.hpp
blob: b1f33a9cd73c74949847b2e948e3c357133877bd (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#ifndef TEACH_OS_KERNEL_FILESYSTEM_ROOTFS_FILESYSTEM_HPP
#define TEACH_OS_KERNEL_FILESYSTEM_ROOTFS_FILESYSTEM_HPP

#include "kernel/devices/device.hpp"
#include "kernel/filesystem/filesystem.hpp"
#include "kernel/filesystem/inode.hpp"

#include <kstd/memory>
#include <kstd/string>
#include <kstd/vector>

#include <string_view>

namespace kernel::filesystem::rootfs
{
  struct filesystem : kernel::filesystem::filesystem
  {
    auto mount(kstd::shared_ptr<devices::device> const & device) -> int override;
    auto lookup(kstd::shared_ptr<kernel::filesystem::inode> const & parent, std::string_view name)
        -> kstd::shared_ptr<kernel::filesystem::inode> override;
  };
}  // namespace kernel::filesystem::rootfs

#endif