diff --git a/Sources/XcodeGraph/Models/BuildableFolderException.swift b/Sources/XcodeGraph/Models/BuildableFolderException.swift index 4f7d54b8..06ce8dd6 100644 --- a/Sources/XcodeGraph/Models/BuildableFolderException.swift +++ b/Sources/XcodeGraph/Models/BuildableFolderException.swift @@ -14,21 +14,27 @@ public struct BuildableFolderException: Sendable, Codable, Equatable, Hashable { /// The list of private headers. public var privateHeaders: [AbsolutePath] + /// A dictionary mapping files (referenced by their absolute path) to the platform condition to apply. + public var platformFilters: [AbsolutePath: PlatformCondition] + /// Creates a new exception for a buildable folder. /// - Parameters: /// - excluded: An array of absolute paths to files that should be excluded from the buildable folder. /// - compilerFlags: A dictionary mapping absolute file paths to specific compiler flags to apply to those files. /// - publicHeaders: The list of public headers. /// - privateHeaders: The list of private headers. + /// - platformFilters: A dictionary mapping absolute file paths to platform conditions. public init( excluded: [AbsolutePath], compilerFlags: [AbsolutePath: String], publicHeaders: [AbsolutePath], - privateHeaders: [AbsolutePath] + privateHeaders: [AbsolutePath], + platformFilters: [AbsolutePath: PlatformCondition] = [:] ) { self.excluded = excluded self.compilerFlags = compilerFlags self.publicHeaders = publicHeaders self.privateHeaders = privateHeaders + self.platformFilters = platformFilters } }