Size: a a a

Clojure — русскоговорящее сообщество

2020 August 05

ST

Sergey Trofimov in Clojure — русскоговорящее сообщество
Григорий
Он ошибку выдает, что бы я не написал: java.util.List<Integer> или ^List<Integer>. Спрашиваю гипотетически. Мне лечге орентироваться с хинтами.
потому что это просто ^List
источник

Г

Григорий in Clojure — русскоговорящее сообщество
Ок. Я понял. Генерики в рантайме "не работают". Спасибо
источник

ST

Sergey Trofimov in Clojure — русскоговорящее сообщество
Григорий
Ок. Я понял. Генерики в рантайме "не работают". Спасибо
(java.util.ArrayList. [1 2 3])
=> [1 2 3]
(type (java.util.ArrayList. [1 2 3]))
=> java.util.ArrayList
источник

ST

Sergey Trofimov in Clojure — русскоговорящее сообщество
даже так
(java.util.ArrayList. [1 2 "3"])
=> [1 2 "3"]

хотя и public class ArrayList<E>
источник

ST

Sergey Trofimov in Clojure — русскоговорящее сообщество
Sergey Trofimov
даже так
(java.util.ArrayList. [1 2 "3"])
=> [1 2 "3"]

хотя и public class ArrayList<E>
и так тоже 😊
  (doto (java.util.ArrayList. [1 2 3])
   (.add "4"))
=> [1 2 3 "4"]
источник

Г

Григорий in Clojure — русскоговорящее сообщество
Спасибо.
источник

ST

Sergey Trofimov in Clojure — русскоговорящее сообщество
Григорий
Ок. Я понял. Генерики в рантайме "не работают". Спасибо
но спеку написать можешь 😊
источник

Г

Григорий in Clojure — русскоговорящее сообщество
Да я понимаю..
источник

ST

Sergey Trofimov in Clojure — русскоговорящее сообщество
Григорий
Он ошибку выдает, что бы я не написал: java.util.List<Integer> или ^List<Integer>. Спрашиваю гипотетически. Мне лечге орентироваться с хинтами.
пиши хинты так
#_^java.itil.List<Integer>

для себя 😊
источник

Г

Григорий in Clojure — русскоговорящее сообщество
Спс.
источник

PP

Pavel Peganov in Clojure — русскоговорящее сообщество
Григорий
Значит Кложа так не понимает, да?
Даже не кложа, а всё, что на JVM. Довольно старый источник, но ситуация вроде бы не менялась.
https://stackoverflow.com/q/38055867
источник

D

Derwish in Clojure — русскоговорящее сообщество
14
источник

CD

Camina Drummer in Clojure — русскоговорящее сообщество
источник
2020 August 06

Г

Григорий in Clojure — русскоговорящее сообщество
Переслано от Григорий
Добрый день, господа! Ковыряюсь с defmulti и defmethod. Юзкейс: хочу создать мультиметод export, на основе которого построить методы, которые в зависимости от переданного рекорда (скажем AnnualReport или PersonReport) и keyword'а (например :excel, :csv, :pdf), будут экспортировать данные куда-то. Как это должно выглядеть не понимаю...
источник

Г

Григорий in Clojure — русскоговорящее сообщество
Переслано от Григорий
Можете подсказать по форме?
источник

Г

Григорий in Clojure — русскоговорящее сообщество
проще интерфейс обьявить
Exportable например, с методом (export [this to] …)
источник

Г

Григорий in Clojure — русскоговорящее сообщество
Переслано от Григорий
Да, я тоже об этом думал.
источник

Г

Григорий in Clojure — русскоговорящее сообщество
Переслано от Григорий
То есть это не очень правильный юзкейс для мультиметода, да? Лучше интерфейс использовать?
источник

Г

Григорий in Clojure — русскоговорящее сообщество
Переслано от The2lb3oz4dr10½grOfH...
Я бы интерфейс использовал. Но мультиметод тоже можно применить
источник

Г

Григорий in Clojure — русскоговорящее сообщество
да можно и мултиметод, главное разделить что экспортировать от того куда экспортировать
источник