[swift-users] Element vs. Iterator.Element

Dave Abrahams dabrahams at apple.com
Mon Oct 31 13:32:56 CDT 2016


on Mon Oct 31 2016, Toni Suter <swift-users-AT-swift.org> wrote:

> Hi,
>
> This extension on Array works as expected:
>
> extension Array where Element: CustomStringConvertible {
>     func f(_ x: Element) -> String {
>         return x.description
>     }
> }
>
> But when I use Iterator.Element instead, I get an error message (error: value of type 'Element' has
> no member 'description'):
>
> extension Array where Iterator.Element: CustomStringConvertible {
>     func f(_ x: Iterator.Element) -> String {
>         return x.description
>     }
> }
>
> I assume this is a type checker bug, but before I report it, I wanted to make sure that that’s
> really the case. Or is there a difference between Element and
> Iterator.Element?

There shouldn't be.  It's a bug, IMO.

-- 
-Dave



More information about the swift-users mailing list