Decision 2025-09-01, part 1
TL;DR? See Miscellaneous.
(interactive - up one level: magnetite_os/)
Title
Define structure of shared resources module
Status
Accepted
Rationale
- As per decision 2025-08-30, part 2: platform-specific definitions must be separated from shared defintions, and must be guarded off whenever possible.
- Having a rough sense of how the module should be structured, so that it can be extended in the future with minimal confusion.
Consequences
- The module
commonshall reside in thecommon/folder, and should be exposed by thecommon/mod.rsfile. -
The module
commonmust at the minimum contain thesharedandarchsubmodules. -
Shared definitions shall be known as
common::sharedand reside in thecommon/sharedfolder. The submodule should be exposed by thecommon/shared/mod.rsfile. -
Platform-specific definitions shall reside in appropriate submodules under the
common::archumbrella. The umbrella submodule shall reside in thecommon/archmodule, and should be exposed by thecommon/arch/mod.rsfile. -
Submodules under
common::archshould be exposed by their correspondingmod.rsfiles. - The
common::sharedsubmodule, as well as submodules undercommon::arch, must at the minimum contain thestructssubmodule.
Miscellaneous
In essence, the common module should at least expose
common::shared and common::arch, with common::shared and
common::arch::* exposing at the minimum the structs
submodule.