| 122 | } |
| 123 | |
| 124 | Result<ValdiModuleArchive> ValdiModuleArchive::deserialize(BytesView decompressedContent) { |
| 125 | auto module = ValdiArchive(decompressedContent.data(), decompressedContent.data() + decompressedContent.size()); |
| 126 | |
| 127 | FlatMap<StringBox, ValdiModuleArchiveEntry> entries; |
| 128 | std::vector<StringBox> orderedEntryPaths; |
| 129 | |
| 130 | auto allEntries = module.getEntries(); |
| 131 | if (!allEntries) { |
| 132 | return allEntries.moveError(); |
| 133 | } |
| 134 | |
| 135 | for (const auto& moduleEntry : allEntries.value()) { |
| 136 | entries[moduleEntry.filePath] = |
| 137 | (ValdiModuleArchiveEntry){.data = moduleEntry.data, .size = moduleEntry.dataLength}; |
| 138 | orderedEntryPaths.emplace_back(moduleEntry.filePath); |
| 139 | } |
| 140 | |
| 141 | return ValdiModuleArchive(std::move(decompressedContent), std::move(entries), std::move(orderedEntryPaths)); |
| 142 | } |
| 143 | |
| 144 | } // namespace Valdi |
nothing calls this directly
no test coverage detected