J'étais confus par la définition du type facultatif qui appliquait plusieurs protocoles, donc c'est un niveau d'écriture de mémo
.swift
class Hoge {
var fuga: SomeClass & HogeProtocol & FugaProtocol
}
Il y avait plusieurs façons de l'écrire.
.swift
class Hoge {
weak var delegate: (SomeClass & SomeProtocol & FugaProtocol)?
}
.swift
class Hoge {
weak var delegate: Optional<SomeClass & SomeProtocol & FugaProtocol>
}
.swift
typealias HogeDelegate = SomeClass & SomeProtocol & FugaProtocol
class Hoge {
weak var delegate: HogeDelegate?
}