aboutsummaryrefslogtreecommitdiff
path: root/kapi
diff options
context:
space:
mode:
Diffstat (limited to 'kapi')
-rw-r--r--kapi/kapi/filesystem.hpp2
-rw-r--r--kapi/kapi/filesystem/device_number.hpp25
2 files changed, 27 insertions, 0 deletions
diff --git a/kapi/kapi/filesystem.hpp b/kapi/kapi/filesystem.hpp
index f293692d..b64d251d 100644
--- a/kapi/kapi/filesystem.hpp
+++ b/kapi/kapi/filesystem.hpp
@@ -1,6 +1,8 @@
#ifndef TEACHOS_KAPI_FILESYSTEM_HPP
#define TEACHOS_KAPI_FILESYSTEM_HPP
+#include <kapi/filesystem/device_number.hpp> // IWYU pragma: export
+
#include <kstd/result.hpp>
#include <kstd/system_error.hpp>
#include <kstd/units.hpp>
diff --git a/kapi/kapi/filesystem/device_number.hpp b/kapi/kapi/filesystem/device_number.hpp
new file mode 100644
index 00000000..55c813f5
--- /dev/null
+++ b/kapi/kapi/filesystem/device_number.hpp
@@ -0,0 +1,25 @@
+#ifndef TEACHOS_KAPI_FILESYSTEM_DEVICE_NUMBER_HPP
+#define TEACHOS_KAPI_FILESYSTEM_DEVICE_NUMBER_HPP
+
+// IWYU pragma: private, include <kapi/filesystem.hpp>
+
+#include <compare>
+#include <cstdint>
+
+namespace kapi::filesystem
+{
+
+ //! A POSIX device number.
+ struct device_number
+ {
+ //! The major number, identifying the device class or driver.
+ std::uint8_t major;
+ //! The minor number, identifying the device instance.
+ std::uint8_t minor;
+
+ constexpr auto friend operator<=>(device_number, device_number) noexcept -> std::strong_ordering = default;
+ };
+
+} // namespace kapi::filesystem
+
+#endif