台风和@objc协议限制

时间:2015-07-27 19:38:57

标签: ios typhoon

是否有类似于对象C

不支持的协议和类型的官方解决方法

作为一个例子,我有一个返回反应可可信号生成器的协议

public protocol PLoginService {

      func login(username:String,password:String) -> SignalProducer<Bool,NSError>
}

如果我在协议上使用@objc,那么我将得到编译器错误,即Objective C中不支持返回类型。我会有很多这样的结构,所以我想知道我能做什么才能完成受益于台风魔法

1 个答案:

答案 0 :(得分:2)

当前版本的Typhoon是一个反射和动态依赖注入容器,因此依赖于完整的Objective-C运行时。这意味着,遗憾的是,所有将通过Typhoon的协议都必须具有@objc指令。此外,Typhoon注入的任何东西都必须是Objective-C兼容类型。

我们目前正在使用Swift版本的Typhoon进行R&amp; D,欢迎您参与Github上该项目的开发。