@@ -15,6 +15,9 @@ public final class PBXFileReference: PBXFileElement {
15
15
/// Derived file type. For a file named "foo.swift" this value would be "sourcecode.swift"
16
16
public var lastKnownFileType : String ?
17
17
18
+ /// The XCFramework's expected code signature. `nil` if not an XCFramework reference or if the XCFramework is not signed.
19
+ public var expectedSignature : String ?
20
+
18
21
/// Line ending type for the file
19
22
public var lineEnding : UInt ?
20
23
@@ -44,6 +47,7 @@ public final class PBXFileReference: PBXFileElement {
44
47
/// - indentWidth: the number of positions to indent blocks of code
45
48
/// - tabWidth: the visual width of tab characters
46
49
/// - lineEnding: the line ending type for the file.
50
+ /// - expectedSignature: code signature for signed XCFrameworks, `nil` otherwise.
47
51
/// - languageSpecificationIdentifier: legacy programming language identifier.
48
52
/// - xcLanguageSpecificationIdentifier: the programming language identifier.
49
53
/// - plistStructureDefinitionIdentifier: the plist organizational family identifier.
@@ -59,13 +63,15 @@ public final class PBXFileReference: PBXFileElement {
59
63
indentWidth: UInt ? = nil ,
60
64
tabWidth: UInt ? = nil ,
61
65
lineEnding: UInt ? = nil ,
66
+ expectedSignature: String ? = nil ,
62
67
languageSpecificationIdentifier: String ? = nil ,
63
68
xcLanguageSpecificationIdentifier: String ? = nil ,
64
69
plistStructureDefinitionIdentifier: String ? = nil ) {
65
70
self . fileEncoding = fileEncoding
66
71
self . explicitFileType = explicitFileType
67
72
self . lastKnownFileType = lastKnownFileType
68
73
self . lineEnding = lineEnding
74
+ self . expectedSignature = expectedSignature
69
75
self . languageSpecificationIdentifier = languageSpecificationIdentifier
70
76
self . xcLanguageSpecificationIdentifier = xcLanguageSpecificationIdentifier
71
77
self . plistStructureDefinitionIdentifier = plistStructureDefinitionIdentifier
@@ -86,6 +92,7 @@ public final class PBXFileReference: PBXFileElement {
86
92
case explicitFileType
87
93
case lastKnownFileType
88
94
case lineEnding
95
+ case expectedSignature
89
96
case languageSpecificationIdentifier
90
97
case xcLanguageSpecificationIdentifier
91
98
case plistStructureDefinitionIdentifier
@@ -97,6 +104,7 @@ public final class PBXFileReference: PBXFileElement {
97
104
explicitFileType = try container. decodeIfPresent ( . explicitFileType)
98
105
lastKnownFileType = try container. decodeIfPresent ( . lastKnownFileType)
99
106
lineEnding = try container. decodeIntIfPresent ( . lineEnding)
107
+ expectedSignature = try container. decodeIfPresent ( . expectedSignature)
100
108
languageSpecificationIdentifier = try container. decodeIfPresent ( . languageSpecificationIdentifier)
101
109
xcLanguageSpecificationIdentifier = try container. decodeIfPresent ( . xcLanguageSpecificationIdentifier)
102
110
plistStructureDefinitionIdentifier = try container. decodeIfPresent ( . plistStructureDefinitionIdentifier)
@@ -122,6 +130,9 @@ public final class PBXFileReference: PBXFileElement {
122
130
if let lineEnding {
123
131
dictionary [ " lineEnding " ] = . string( CommentedString ( " \( lineEnding) " ) )
124
132
}
133
+ if let expectedSignature {
134
+ dictionary [ " expectedSignature " ] = . string( CommentedString ( expectedSignature) )
135
+ }
125
136
if let languageSpecificationIdentifier {
126
137
dictionary [ " languageSpecificationIdentifier " ] = . string( CommentedString ( languageSpecificationIdentifier) )
127
138
}
0 commit comments