无法专门化非泛型类型 'Result'

Cannot specialize non-generic type 'Result'

我正在尝试进行简单的网络调用,但在使用结果类型时出现错误。 Xcode 告诉我“无法专门化非泛型类型 'Result'”。我正在寻找解决方案,但在 Internet 或 Whosebug 中都没有成功找到它。 错误是:

Cannot specialize non-generic type 'Result'
Remove '<FriendsModel,NetworkingError>'

我的代码是:FriendsWebServices.swift

import Foundation

enum NetworkingError:Error{
    case nodataAvailable
    case invalidURL
    case canNotProcessData
    case encodingError
    case statusCodeIsNotOkay
}

class FriendsWebServices{
    static let shared = FriendsWebServices()
    private let session = URLSession.shared
    
    //Get Method
    func getPosts(completion: @escaping (Result<FriendsModel,NetworkingError>)->Void){
        let urlStirng = EndPointSouce.getEndPoint(type: .Base) + EndPointSouce.getEndPoint(type: .HowManyFriends(10))
        
        guard let url = URL(string: urlStirng) else {
            completion(.failure(.invalidURL))
            return
        }
        // Create the url request
        var request = URLRequest(url: url)
        request.httpMethod = "GET"
        
        let dataTask = session.dataTask(with: request) { data, response, error in
            guard let jsonData = data else{
                completion(.failure(.nodataAvailable))
                return
            }
            guard let response = response as? HTTPURLResponse else {
                print("Response is nil")
                return
            }
            if response.statusCode == 200{
                do{
                    let decoder = JSONDecoder()
                    let responseObject = try decoder.decode([Post].self, from: jsonData)
                    completion(.success(responseObject))
                }catch{
                    completion(.failure(.canNotProcessData))
                }
            }else{
                completion(.failure(.statusCodeIsNotOkay))
            }
            
        }
        
        dataTask.resume()
     }
    }

我的模型:

import Foundation

struct FriendsModel:Decodable{
    var results: [Result]
}

struct Result:Decodable {
    var name: Name
    var location : Location
    var email: String
    var phone : String
    var cell: String
    var picture : Picture
}

struct Name:Decodable{
    var title: String
    var first: String
    var last: String
}

struct Location:Decodable {
    var street: String
    var city : String
    var state: String
    var postcode: String
    var timezone:TimeZone
}

struct TimeZone:Decodable {
    var offset: String
    var description: String
}

struct Picture:Decodable{
    var large : String
    var medium: String
    var thumbnail: String
}

为什么会出现这个错误?谢谢。

简单名称Result指的是您在此处定义的结构:

struct Result:Decodable {
    var name: Name
    var location : Location
    var email: String
    var phone : String
    var cell: String
    var picture : Picture
}

不是内置的 Result 类型,因为同一模块中的类型优先。

要引用内置的 Result 类型,您可以将结构重命名为其他名称,或者使用 Swift.Result:

对其进行限定
Swift.Result<FriendsModel,NetworkingError>