在SwiftData中,Predicate
类型使用参数包:
struct Predicate<each Input>
现在,我想在Predicate
上添加一个扩展方法,该方法仅在通用参数为SomeType
类型时可用:
@Model
class SomeType {
var someVar: Int
}
我一直在try 让它工作,但它出现了各种错误:
extension Predicate where Input == SomeType { }
包引用"输入"需要使用关键字"repeat"进行扩展
类型包"输入"必须用"each"引用
extension Predicate where each Input == SomeType { }
包引用"输入"需要使用关键字"repeat"进行扩展
extension Predicate where repeat each Input == (SomeType) { }
尚未支持相同元素要求
如何将此函数添加为Predicate<each Input>
和Input == SomeType
上的静态函数?
static func predicateMatchingNegativeSomeVars() -> Predicate<SomeType> {
#Predicate<SomeType> {
$0.someVar < 0
}
}