FileSystem.cpp 683 B

123456789101112131415161718192021222324252627282930313233
  1. /*
  2. * Copyright (c) 2021, Liav A. <liavalb@hotmail.co.il>
  3. *
  4. * SPDX-License-Identifier: BSD-2-Clause
  5. */
  6. #include <AK/StringView.h>
  7. #include <Kernel/FileSystem/SysFS/FileSystem.h>
  8. #include <Kernel/FileSystem/SysFS/Inode.h>
  9. #include <Kernel/FileSystem/SysFS/Registry.h>
  10. namespace Kernel {
  11. ErrorOr<NonnullLockRefPtr<FileSystem>> SysFS::try_create()
  12. {
  13. return TRY(adopt_nonnull_lock_ref_or_enomem(new (nothrow) SysFS));
  14. }
  15. SysFS::SysFS() = default;
  16. SysFS::~SysFS() = default;
  17. ErrorOr<void> SysFS::initialize()
  18. {
  19. m_root_inode = TRY(SysFSComponentRegistry::the().root_directory().to_inode(*this));
  20. return {};
  21. }
  22. Inode& SysFS::root_inode()
  23. {
  24. return *m_root_inode;
  25. }
  26. }