export module oar; import coral; import coral.files; export namespace oar { constexpr coral::usize signature_length{4}; constexpr coral::u8 signature_magic[signature_length]{'o', 'a', 'r', 0}; struct entry { coral::u8 signature_magic[signature_length]; coral::path path; coral::u64 data_offset; coral::u64 data_length; coral::u8 padding[244]; }; struct archive : public coral::fs { using coral::fs::access_result; archive() { } access_result read_file(coral::path const & file_path, coral::callable const & then) override { return access_result::access_denied; } virtual access_result write_file(coral::path const & file_path, coral::callable const & then) override { return access_result::access_denied; } }; } static_assert(sizeof(oar::entry) == 512);