mirror of
https://github.com/apple/swift.git
synced 2025-12-14 20:36:38 +01:00
The Clang attribute allows one to state that a particular enumeration type describes an error, and associates it with a particular domain constant. However, due to lack of API notes support, this attribute wasn't actually getting used. Instead, we had a number of explicit extensions to enum types to make them conform to the _BridgedNSError protocol explicitly. Now that we have API notes, use them to make these enums into error enums with the appropriate domain, so that the Clang importer will synthesize the _BridgedNSError conformances. Then, remove all of the explicit conformances---and with them, the overlays for 12 frameworks. There is a small fix to more eagerly consider these conformances as "used" if an expression is formed with the error enum as a value type. This better ensures that the conformances will be available at runtime when needed. This cleanup is needed to implement SE-0112 (NSError bridging), although it is useful by itself.
26 lines
765 B
Plaintext
26 lines
765 B
Plaintext
---
|
|
Name: CoreLocation
|
|
Classes:
|
|
- Name: CLPlacemark
|
|
Properties:
|
|
- Name: ISOcountryCode
|
|
SwiftName: isoCountryCode
|
|
Protocols:
|
|
- Name: CLLocationManagerDelegate
|
|
Methods:
|
|
- Selector: 'locationManager:didUpdateLocations:'
|
|
SwiftName: 'locationManager(_:didUpdateLocations:)'
|
|
MethodKind: Instance
|
|
- Selector: 'locationManager:didUpdateHeading:'
|
|
SwiftName: 'locationManager(_:didUpdateHeading:)'
|
|
MethodKind: Instance
|
|
- Selector: 'locationManager:didEnterRegion:'
|
|
SwiftName: 'locationManager(_:didEnterRegion:)'
|
|
MethodKind: Instance
|
|
- Selector: 'locationManager:didChangeAuthorizationStatus:'
|
|
SwiftName: 'locationManager(_:didChangeAuthorization:)'
|
|
MethodKind: Instance
|
|
Tags:
|
|
- Name: CLError
|
|
NSErrorDomain: kCLErrorDomain
|