🌪 stormborn
懒方法交换,限制为 20 个参数。
示例
不传递参数
UIView.swizzle🌪.layoutSubviews { (object, sup) -> in
sup.invoke()
}
传递参数
UIViewController.swizzle🌪.viewDidAppear { (object, animated: Bool, sup) -> in
sup.invoke(animated)
}
多参数和返回类型
class Greeter: NSObject {
@objc dynamic func greet(first: String, last: String) -> String {
return "Hello \(first) \(last)"
}
}
Greeter.swizzle🌪.greetWithFirstlast { (object, arguments: (first: NSString, last: NSString), sup) -> NSString in
return sup.invoke(arguments.first, arguments.last)
}
作者
Oliver Letterer, [email protected]
许可
stormborn 在 MIT 许可下可用。有关更多信息,请参阅 LICENSE 文件。