October 2017
Intermediate to advanced
210 pages
5h 32m
English
An associated type declares a placeholder name that can be used instead of a type within a protocol. The actual type to be used is not specified until the protocol itself is adopted. While creating generic functions and types, we used a very similar syntax, as we have seen throughout this chapter. Defining associated types for a protocol, however, is a little different. We specify an associated type using the associatedtype keyword.
Let's see how to use associated types when we define a protocol. For this example, we will create a simple protocol named MyProtocol:
protocol MyProtocol {
associatedtype E
var items: [E] {get set}
mutating func add(item: E)
}
In this protocol, we declare an associated type named E. We then use ...
Read now
Unlock full access