- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
import Foundation
@objc protocol SomethingDoable {
func doSomething()
}
class Inner: SomethingDoable {
@objc func doSomething() {
print("Inner!")
}
}
@objc class Outer: NSObject {
let inner: SomethingDoable = Inner()
override func forwardingTarget(for aSelector: Selector!) -> Any? {
return inner
}
}
let outer = Outer()
outer.perform(#selector(SomethingDoable.doSomething))