【问题标题】:Currying func and keep param name/ label in Swift 4Currying func 并在 Swift 4 中保留参数名称/标签
【发布时间】:2018-05-23 07:14:18
【问题描述】:

在 Swift 4 中,我怎样才能 curry func,并保留参数标签/名称:

func doSomething(a: A, b: B, c: C) {
}

let do_a = doSomething(a: value_a) // keep name a
let do_ab = do_a(b: value_b) // keep name b
let result = do_ab(c: value_c) // keep name c

从这里得到答案Curry Function in Swift

还有https://robots.thoughtbot.com/introduction-to-function-currying-in-swift

可以,但是标签省略了

let curryDo = curry(doSomething)
let doA = curryDo(value_a) // but the a label is removed here.

如何在柯里化函数中保留参数标签/名称?

【问题讨论】:

    标签: swift functional-programming currying


    【解决方案1】:

    Swift 在版本 3 中移除了 currying 作为一项功能,并且所有当前的实现都使用了没有标记参数的闭包。

    【讨论】:

    • 谢谢。仍在等待解决方案。 T_T
    • @anhtu,建议在 Swift Evolution 上重新引入柯里化。如果没有人站出来,什么都不会发生。
    猜你喜欢
    • 1970-01-01
    • 2017-09-11
    • 1970-01-01
    • 1970-01-01
    • 2019-03-12
    • 1970-01-01
    • 2010-10-30
    • 1970-01-01
    • 2018-02-01
    相关资源
    最近更新 更多