[swift-evolution] [Pitch] Allow sub-protocols to define typealiases for protocols' associatedtypes

Ross O'Brien narrativium+swift at gmail.com
Mon Jun 6 15:59:01 CDT 2016


Given a protocol with an associated type:

protocol Foo
{
  associatedtype Bar
}

it should be possible to define a protocol conforming to Foo, for which Bar
can be typealiased:

protocol IntFoo : Foo
{
  typealias Bar = Int
}

such that all conformers to IntFoo now have an associatedtype Bar being Int
without having to define it themselves. At present IntFoo cannot declare a
typealias (as this generates a warning that typealias has been deprecated),
but can declare an 'associatedtype Bar = Int' which types conforming to
IntFoo have to repeat to consider it properly declared. This re-declaration
is redundant.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.swift.org/pipermail/swift-evolution/attachments/20160606/63945e70/attachment.html>


More information about the swift-evolution mailing list