weak references don't seem to work in Swift unless a protocol is declared as @objc, which I don't want in a pure Swift app.
This code gives a compile error (weak cannot be applied to non-class type MyClassDelegate):
class MyClass { weak var delegate: MyClassDelegate? } protocol MyClassDelegate { } I need to prefix the protocol with @objc, then it works.
Question: What is the 'pure' Swift way to accomplish a weak delegate?