aboutsummaryrefslogtreecommitdiff
path: root/kernel/kernel/filesystem/rootfs/inode.cpp
blob: f2751afc374d23c2057b53e76cf2054c360147ee (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
25
26
27
28
29
30
31
32
33
34
35
36
#include <kernel/filesystem/inode.hpp>

#include <kernel/filesystem/directory_listing_cursor.hpp>
#include <kernel/filesystem/directory_listing_entry.hpp>
#include <kernel/filesystem/rootfs/inode.hpp>

#include <kstd/result.hpp>
#include <kstd/units.hpp>

#include <cstddef>
#include <span>
#include <utility>

namespace kernel::filesystem::rootfs
{
  auto inode::read(std::span<std::byte>, kstd::bytes) const -> kstd::result<kstd::bytes>
  {
    return kstd::bytes{};
  }

  auto inode::write(std::span<std::byte const>, kstd::bytes) -> kstd::result<kstd::bytes>
  {
    return kstd::bytes{};
  }

  auto inode::is_directory() const -> bool
  {
    return true;
  }

  auto inode::read_directory(directory_listing_cursor position, std::span<directory_listing_entry>) const
      -> kstd::result<std::pair<std::size_t, directory_listing_cursor>>
  {
    return std::pair{0, position};
  }
}  // namespace kernel::filesystem::rootfs