0
associatedtype E
がResult<T>
の場合は、関数でプロトコルを拡張したいと考えています。プロトコル拡張句で引数なしのジェネリック型を使用する
extension SharedSequenceConvertibleType where E == Result {
func filterResult(success: Bool) -> RxCocoa.SharedSequence<Self.SharingStrategy, Self.E> {
return self.filter { result in
switch (result) {
case .Success(_):
return success
case .Failure(_):
return !success
}
}
}
}
enum Result<Element> {
case Success(Element)
case Failure(Swift.Error)
}
残念ながら、スウィフト、約Reference to generic type 'Result' requires arguments in <…>
文句:私は何を達成したいことは、次のようなものです。推奨Fix-Itを適用してResult<Any>
に変更した場合、Result<MyObject>
'Result<LoginInfo>' is not convertible to 'Result<Any>'
にfilterResult
を使用することはできません。ご覧のとおり、実際にはのタイプは気にしません。
Swift 3でこれを達成する方法はありますか?