快速访问默认情况下的开关案例参数

时间:2018-07-05 07:29:49

标签: swift switch-statement alamofire

我有一个带有案例的URLRequestConvertible枚举(AlamoFire)

getId(String), getList(String, String), getFullList(String, String) 等等。

public func asURLRequest() throws -> URLRequest {

方法,我需要访问所有情况下通用的第一个参数。 我想知道它在默认情况下是否可以访问,或者有没有办法以通用的方式提及所有情况。就像元组中的变量一样。

目前,我正在访问

之类的参数。
var headerValue : String {

    switch self {

    case .getId(let value):
        return value
    case .getList(let value, _):
        return value
    case .getFullList(let value, _):
        return value
    }
}

我期望类似

case let check(let value, _): return value 

欢迎任何关于如何从此处处理的建议

1 个答案:

答案 0 :(得分:0)

您至少可以稍微简化一下

var headerValue : String {
    switch self {
    case .getId(let value),
         .getList(let value, _),
         .getFullList(let value, _):
        return value
    }
}

因为所有案例都将具有相同类型的相同变量绑定在一起。