Swift中的Curried Closures

时间:2014-10-18 13:28:47

标签: swift closures currying

在swift中我们可以定义一个这样的函数:

func format(name: String)(email: String) -> String {
       return "\(name)-\(email)"
}

我想定义一个像该函数一样的currying。但编译器给我错误。这是我的curried闭包看起来像这样:

let formatClosure = {(name: String)(email: String) -> String in "\(name)-\(email)"}

这在swift中根本不可能或者是否有其他语法?

1 个答案:

答案 0 :(得分:2)

看起来直接函数可用的简洁版本不适用于闭包。您仍然可以使用稍微扩展的语法来完成它。

let formatClosure = {(name: String) -> String -> String in { email in "\(name)-\(email)" } }