Re: [swift-evolution] [Pitch] allow non-nominal type extension

2016-10-21 Thread Jon Shier via swift-evolution
It’s also the same as:

typealias CombinedProtocol = TrackCountProvider & PublishDateProvier

extension CombinedProtocol { } 

I, too, find the distinction largely pointless, but I’m not a language designer.


Jon

> On Oct 20, 2016, at 11:30 PM, Cao Jiannan via swift-evolution 
>  wrote:
> 
> It is just same as current grammar:
> 
> extension TrackCountProvider where Self : PublishDateProvider { ... }
> 
> with a more logical format
> 
> extension TrackCountProvider & PublishDateProvider { ... }
> 
> > e.g.
> > 
> > extensionTrackCountProvider{
> > vartrackCountAndPublishDateText:String{
> > varinfos: [String] = []
> > 
> > iflettrackCount = trackCount{
> > infos.append("\(trackCount)")
> > 
> > }
> > 
> > ifletpublishDateText = publishDate?.text {
> > infos.append(publishDateText)
> > }
> > 
> > returninfos.joined(separator: seperator)
> > }
> > }
> > 
> > 
> > 
> > 
> > 
> ___
> swift-evolution mailing list
> swift-evolution@swift.org
> https://lists.swift.org/mailman/listinfo/swift-evolution

___
swift-evolution mailing list
swift-evolution@swift.org
https://lists.swift.org/mailman/listinfo/swift-evolution


[swift-evolution] [Pitch] allow non-nominal type extension

2016-10-20 Thread Cao Jiannan via swift-evolution
It is just same as current grammar:

extension TrackCountProvider where Self : PublishDateProvider { ... }

with a more logical format

extension TrackCountProvider & PublishDateProvider { ... }

> e.g.
> 
> extensionTrackCountProvider{
> vartrackCountAndPublishDateText:String{
> varinfos: [String] = []
> 
> iflettrackCount = trackCount{
> infos.append("\(trackCount)")
> 
> }
> 
> ifletpublishDateText = publishDate?.text {
> infos.append(publishDateText)
> }
> 
> returninfos.joined(separator: seperator)
> }
> }
> 
> 
> 
> 
> ___
swift-evolution mailing list
swift-evolution@swift.org
https://lists.swift.org/mailman/listinfo/swift-evolution


[swift-evolution] [Pitch] allow non-nominal type extension

2016-10-20 Thread Cao Jiannan via swift-evolution
e.g.

extension TrackCountProvider & PublishDateProvider {
var trackCountAndPublishDateText: String {
var infos: [String] = []

if let trackCount = trackCount  {
infos.append("\(trackCount)")
}

if let publishDateText = publishDate?.text {
infos.append(publishDateText)
}

return infos.joined(separator: seperator)
}
}

___
swift-evolution mailing list
swift-evolution@swift.org
https://lists.swift.org/mailman/listinfo/swift-evolution