gpt4 book ai didi

clojure - Clojure 的 some-> 宏的实际使用示例

转载 作者:行者123 更新时间:2023-12-03 23:26:31 33 4
gpt4 key购买 nike

Clojure 1.5 添加了新的线程宏,包括:

  • some->
  • some->>

  • 变更日志有这个人为的例子来说明 some->作品:
    user=> (defn die [x] (assert false))
    #'user/die
    user=> (-> 1 inc range next next next die)
    AssertionError Assert failed: false user/die (NO_SOURCE_FILE:65)
    user=> (some-> 1 inc range next next next die)
    nil

    和其他程序员聊天,我们发现很难为 some-> 想到一个好的、实用的例子。 .你什么时候用过 some->解决现实世界的问题?

    最佳答案

    some->可用于“自动保护”一系列线程处理步骤,其中链中的某些部分(尤其是中间部分)可能会返回 nil这将导致链下游的逻辑故障。

    特定示例可能包括线程化 clojure 函数和 java interop,您需要在其中防止空指针异常。

    关于clojure - Clojure 的 some-> 宏的实际使用示例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16358027/

    33 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com