You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Add support for emitting private swiftinterface (#1176)
This PR adds a new feature: `swift.emit_private_swiftinterface` which
enables emitting `.private.swiftinterface` files for Swift modules.
These interface files are required when using `@_spi` and library
evolution.
## Example
```
bazel build //examples/apple/private_swiftinterface
```
```
Target //examples/apple/private_swiftinterface:private_swiftinterface up-to-date:
bazel-bin/examples/apple/private_swiftinterface/PrivateSwiftInterfaceLib.swiftdoc
bazel-bin/examples/apple/private_swiftinterface/PrivateSwiftInterfaceLib.swiftinterface
bazel-bin/examples/apple/private_swiftinterface/PrivateSwiftInterfaceLib.private.swiftinterface
bazel-bin/examples/apple/private_swiftinterface/PrivateSwiftInterfaceLib.swiftmodule
bazel-bin/examples/apple/private_swiftinterface/PrivateSwiftInterfaceLib.swiftsourceinfo
bazel-bin/examples/apple/private_swiftinterface/libprivate_swiftinterface.a
```
Creates a value representing a Swift module use as a Swift dependency.
@@ -492,6 +493,7 @@ Creates a value representing a Swift module use as a Swift dependency.
492
493
| <aid="swift_common.create_swift_module-plugins"></a>plugins | A list of `SwiftCompilerPluginInfo` providers representing compiler plugins that are required by this module and should be loaded by the compiler when this module is directly depended on. |`[]`|
493
494
| <aid="swift_common.create_swift_module-swiftsourceinfo"></a>swiftsourceinfo | The `.swiftsourceinfo` file emitted by the compiler for this module. May be `None` if no source info file was emitted. |`None`|
494
495
| <aid="swift_common.create_swift_module-swiftinterface"></a>swiftinterface | The `.swiftinterface` file emitted by the compiler for this module. May be `None` if no module interface file was emitted. |`None`|
496
+
| <aid="swift_common.create_swift_module-private_swiftinterface"></a>private_swiftinterface | The `.private.swiftinterface` file emitted by the compiler for this module. May be `None` if no private module interface file was emitted. |`None`|
495
497
| <aid="swift_common.create_swift_module-symbol_graph"></a>symbol_graph | A `File` representing the directory that contains the symbol graph data generated by the compiler if the `"swift.emit_symbol_graph"` feature is enabled, otherwise this will be `None`. |`None`|
0 commit comments