O uso como um tipo concreto em conformidade com o protocolo AnyObject não é suportado
Estou usando o Swift 2 e o WeakContainer como uma maneira de armazenar um conjunto de objetos fracos, comoNSHashTable.weakObjectsHashTable()
struct WeakContainer<T: AnyObject> {
weak var value: T?
}
public protocol MyDelegate : AnyObject {
}
Então, no meu ViewController, declaro
public var delegates = [WeakContainer<MyDelegate>]
Mas é erro
Não há suporte para o uso de MyDelegate como um tipo concreto em conformidade com o protocolo AnyObject
Eu vejo que o erro é queWeakContainer
temvalue
membro declarado comoweak
, tãoT
é esperado que seja objeto. Mas eu também declaroMyDelegate
ComoAnyObject
, também. Como contornar isso?