Would love for this to be possible. It becomes an issue in mixed code: if
you include conformance to a <foo>Kit protocol in one of your Swift
classes, then you have to include the corresponding headers in every
Objective C file that includes the bridging .h file. The <foo>Kit classes
are added to the bridging header, but not the protocols. There are
workarounds (such as using an instance of a conforming nested class as a
proxy- nested classes are not emitted in the bridging header), but it's so
much cleaner to be able conform to the protocol privately. (Either that, or
fix the utility that builds the bridging header so it exposes the protocol
Paul Schmidt | Smartsheet
Senior iOS Software Development Engineer
Learn More → smartsheet.com
On Mon, Feb 13, 2017 at 8:28 AM, Alejandro Martinez via swift-users < firstname.lastname@example.org> wrote:
I found myself writting some method that parsed an API response and
wanted to use Decodable to map the response into a struct declared
My idea was that each api response handler file (I use completely
different APIs that map into the same model) could add it's own
fileprivate conformance to decodable into the model struct so each api
response handler would use a different decoding function. But I found
the compiler telling me that is not possible.
I can easily change my design, is not an issue but I'm super curious.
Why fileprivate extensions can't add protocol conformance? Is there a
technical reason behind? or a conscience design?
swift-users mailing list