// Copyright (c) 2026 Timofey Solomko // Licensed under MIT License // // See LICENSE for license information import Foundation import BitByteData class SevenZipFileInfo { struct File { var isEmptyStream = false var isEmptyFile = false var isAntiFile = false var name: String = "" var cTime: Date? var mTime: Date? var aTime: Date? var winAttributes: UInt32? } let numFiles: Int var files = [File]() var unknownProperties = [SevenZipProperty]() init(_ bitReader: MsbBitReader) throws { numFiles = bitReader.szMbd() for _ in 0..= propertySize else { throw SevenZipError.internalStructureError } bitReader.offset += propertySize default: // Unknown property guard bitReader.size - bitReader.offset >= propertySize else { throw SevenZipError.internalStructureError } unknownProperties.append(SevenZipProperty(propertyType, propertySize, bitReader.bytes(count: propertySize))) } } var emptyFileIndex = 0 for i in 0..