所以我有这个功能:
set database sql syntax pgs true
它可以工作并调用目标c函数
override func sendRequest(_ pageIndex: Int) -> CSResponse<AnyObject> & CSListData {
return server.loadUserArticles(pageIndex)
}
我正在寻找文档,却找不到解释,CSListData是objc协议,我正在尝试编写类似的内容
- (CSResponse <CSListData> *)loadUserArticles:(NSInteger)pageIndex;
但这可悲地是不会编译错误,因为我使用这种语法将其分配给了目标c中的属性
override func sendRequest<T : AnyObject & CSListData >(_ pageIndex: Int) -> CSResponse<T> {
return server.loadUserArticles(pageIndex)
}
错误:
@property(nonatomic) CSResponse <CSListData> *(^onLoadList)(NSInteger);
完全无法理解的是为什么返回类型Error:(26, 43) cannot assign value of type '(Int) -> CSResponse<_>' to type '(Int) -> CSResponse<AnyObject> & CSListData'
实际上是<AnyObject> & CSListData
。谢谢。