We have

        MyType.Type

to indicate the meta-type of a type. And

        MyProtocol.Protocol

to indicate the meta-type of a protocol. Would it be OK to add

        MyType.Protocol

to identify all the protocols MyType follows? The result would be like if each 
protocol was connected by “&”, or “Any” if the type doesn’t follow any 
protocols.

…

Woah, I realized that this could be a bigger than anticipated. A type can 
specify its protocols directly, or through extension(s). Heck, I do that in my 
Cocoa projects to segregate each aspect of a class. So I guess we have to allow 
the protocol list to include those imported via extensions.

…

Why do I want to do this? It’s part of my 
retype/strong-typedef/alternate-interface idea. I originally made the developer 
list each protocol to re-implment separately in the export list and the 
protocol list. But that would be tedious for a long list of protocols. So I’m 
thinking “why not have a way to specify all of the protocols at once.” But I’m 
not sure on the syntax, that’s why I’m asking here. Alternatives could be 
things like “#protocolof(MyType)”. Unless we already have this capability?…

(Having a retype that repeats all of the implementation type’s protocols is 
still useful. The types would have the same interface, but still don’t share 
function overloads.)

— 
Daryle Walker
Mac, Internet, and Video Game Junkie
darylew AT mac DOT com 

_______________________________________________
swift-evolution mailing list
[email protected]
https://lists.swift.org/mailman/listinfo/swift-evolution

Reply via email to