Size: a a a

Scala User Group

2021 May 12

ΛВ

Λнтон Войцишевский... in Scala User Group
Этот имплисит стринг в скасти ищется рядом с обжектом же
источник

ΛВ

Λнтон Войцишевский... in Scala User Group
А надо имплисит искать рядом с местом деривации
источник

SA

Sergey Alaev in Scala User Group
источник

ΛВ

Λнтон Войцишевский... in Scala User Group
А, ну не знал, что так работает
источник

ΛВ

Λнтон Войцишевский... in Scala User Group
Интересно, почему нельзя просто в дерайв метод добавлять аргумент
источник

SA

Sergey Alaev in Scala User Group
Там чёрная магия, она же запрещает дерайвить более сложные типы, чем лямбду с одним аргументом
источник

Oℕ

Oleg ℕizhnik in Scala User Group
в метод можно, а в синтаксисе много думать надо
источник

Oℕ

Oleg ℕizhnik in Scala User Group
ну это нормально, нигде особо встроенный дерайв не дерайвит ничего сложнее однопараметрических тайпклассов
источник

Oℕ

Oleg ℕizhnik in Scala User Group
ну типа считается, что если нужны параметры уже можно написать и
given Decoder[Foo] = deriveEncoder(snakeCase, true, Some("type"))
источник

Oℕ

Oleg ℕizhnik in Scala User Group
это всё равно чуть меньше, чем
implicit val fooDecoder: Decoder[Foo] = deriveEncoder(snakeCase, true, Some("type"))
источник

ΛВ

Λнтон Войцишевский... in Scala User Group
И обжект ещё писать
источник

Oℕ

Oleg ℕizhnik in Scala User Group
ну в третьей скале не обязательно обжект писать
источник

Oℕ

Oleg ℕizhnik in Scala User Group
можно инстансы в пакете фигачить
источник

Oℕ

Oleg ℕizhnik in Scala User Group
они нормально искаться будут, вроде
источник

ЮБ

Юрий Бадальянц... in Scala User Group
Рили?
источник

ЮБ

Юрий Бадальянц... in Scala User Group
Ого, это прикольно
источник

Oℕ

Oleg ℕizhnik in Scala User Group
да
источник

ЮБ

Юрий Бадальянц... in Scala User Group
То есть Каевский трюк с одинаковым именем тайпкласса и его инстансов теперь работает без одинакового имени? Но это получается, что в имплисит скоупе теперь есть ещё одно место для поиска имплиситов, так? Какой у них будет приоритет?
источник

AS

Andrey Sugak in Scala User Group
Почему новое то? Раньше были пекедж обжекты, теперь вместо них топ левел дефинишены.
источник

Oℕ

Oleg ℕizhnik in Scala User Group
каевский трюк был для одинаковогл имени тайпкласса и имплиситных трансформаций, которые синтаксисом обогащают, он с момента изобретения не был актуален для скалы 3
источник