gpt4 book ai didi

clojure - Clojure中用于deftype'd对象的toString方法是什么?

转载 作者:行者123 更新时间:2023-12-04 13:35:10 24 4
gpt4 key购买 nike

(deftype Bag [state]
Object
(toString [bag]
(str "Bag???" state)))

我希望toString看起来像
clojure.core=> (def b (Bag. {:apples 1 :bannanas 4}))
#'clojure.core/b
clojure.core=> (str b)
"BAG: {:apples 1 :bannanas 4}"

表示该信息的一种不错的clojurey方法是什么?

"Bag/{:k :v}" 

更好的?您如何称呼社区toStrings?

最佳答案

以下是deftype

user=> (deftype Bag [state] 
Object
(toString [_]
(str "BAG: " (pr-str state))))
user.Bag
user=> (def b (Bag. {:apples 1 :bannanas 4}))
#'user/b
user=> (str b)
"BAG: {:bannanas 4, :apples 1}"

关于clojure - Clojure中用于deftype'd对象的toString方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3688891/

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