Я хочу создать расширение на SignalProducerType, как показано ниже.Реактивная модель возврата какао типа
extension SignalProducerType{
func mapR() -> SignalProducer<[String:AnyObject], XError> {
return attemptMap { (value: [String:AnyObject]) -> Result<[String:AnyObject], XError> in
return Result(value: ["1":1])
}
}
}
XError определяется как ERRORTYPE
public enum XError: ErrorType{
case Invalid
case Unsuccessful
}
Но это не будет компилировать и ошибок.
'attemptMap' производит 'SignalProducer', а не предполагаемого типа контекстной результат 'Результат < [Строка: AnyObject], XError>' (ака 'Результат, XError>')
Вы не возвращают ожидаемый тип от метода mapR. Если вы возвращаете Result <[String: AnyObject], XError>, тогда это должно быть хорошо, так как tryMap возвращает этот тип. – Eluss