Почему я не могу использовать.? в закрытии? - PullRequest
0 голосов
/ 06 мая 2020

Нахожу на сайте макрос .?. https://clojure.github.io/clojure-contrib/core-api.html. Но я не могу его использовать. Я пробовал пример:

(.?. "foo" .toUpperCase (.substring 1))

clojure repl возвращает ошибку:

user=> (.?. "foo" .toUpperCase (.substring 1))
Syntax error compiling at (REPL:1:1).
Unable to resolve symbol: .toUpperCase in this context

Я заметил, что пространство имен .?. устарело. Разве мы не можем больше использовать этот макрос?

Ответы [ 2 ]

1 голос
/ 07 мая 2020

Он был перемещен в core.incubator, например, @ phipsgabler сказал.


Вы должны использовать some-> из clojure.core.

(some-> "foo" (.toUpperCase) (.substring 1))
0 голосов
/ 06 мая 2020

Вынесен в отдельный модуль core.incubator.

...