Вопросы по теме 'implicits'
не может экзистенциально абстрагироваться от параметризованного типа
Я развлекался со Scala 2.8 и пытался определить сутенера . который добавляет метод "as" к конструкторам типов, позволяющий преобразовывать один функтор в другой (пожалуйста, не обращайте внимания на тот факт, что здесь я не обязательно имею дело с...
1318 просмотров
schedule
25.06.2023
неоднозначные последствия
Вопрос в том, почему следующий код не работает с выводом типа (ниже показан сеанс REPL для демонстрации) и можно ли это исправить? В частности, чем это отличается от использования CanBuildFrom, которое компилятор использует для определения типа...
1115 просмотров
schedule
13.07.2022
Что делать с операциями для определенного вида коллекции?
В нескольких разных местах моего приложения мне нужно взять Seq[SalesRow] и вернуть Map[String,SalesRow] , где строка — это название страны.
Мне нужно использовать это в нескольких местах. Например, я беру список всех SalesRows и получаю...
187 просмотров
schedule
16.06.2023
Почему DummyImplicit не устраняет неоднозначность [String] (a: A) из (a: String)
Учитывая следующий фрагмент кода:
final case class Attr[A](name: String)(implicit conv: String To A) {
def apply(value: A)(implicit dummy: DummyImplicit) = Attribute(name, value)
def apply(value: String) = Attribute[A](name, value)
}...
511 просмотров
schedule
17.08.2022
Неявный Scala Numeric[T] в сопутствующем объекте
У меня есть следующий общий класс Interval (любезно сформулированный для меня пользователем soc):
case class Interval[T](from: T, to: T)(implicit num: Numeric[T]) {
import num.mkNumericOps // allows us to write from.toDouble and to.toDouble...
1090 просмотров
schedule
28.06.2022
Есть ли какое-то преимущество в использовании Mapper против неявных операторов?
Картограф Автокарта:
Mapper.CreateMap<ObjectType1, ObjectType2>()
.ForMember(o1 => o1.PropName, mapper => mapper.MapFrom(o2 => o2.Prop2Name));
Mapper.Map(object1, object2);
Неявный оператор:
public static implicit...
1319 просмотров
schedule
28.06.2023
Неявное разрешение контекста Scala
Я нашел там правила для неявного разрешения в SLS:
если T составной тип T1 с ... с Tn, то объединение частей T1, ..., Tn, а также самого T
если T параметризованный тип S[T1,...,Tn], то объединение частей S и T1,...,Tn
если T является...
374 просмотров
schedule
21.11.2022
Интеграция scala с java
Я новичок в Scala. Мне нужна помощь в решении этой проблемы. Я создал проект, написанный на Scala , и я Я пытаюсь интегрировать его с проектом Java. Я взял зависимость от сборки scala jar в своем проекте Java в eclipse. Однако, когда я вызываю...
881 просмотров
schedule
15.06.2023
Спрей-клиент Scala определяет имплициты для AKKA ActorRefFactory
Я пытаюсь написать простой HTTP-клиент, используя Scala и спрей-клиент. Я основываю свой клиент на примерах, приведенных в документации по Spray .
Моя проблема в том, что в примере создается новая неявная ActorSystem, т.е.
implicit val...
4346 просмотров
schedule
13.04.2024
Создание экземпляров класса ковариантного типа из экземпляров нековариантного класса
Предположим, у меня есть класс простого типа, экземпляры которого дадут мне значение некоторого типа:
trait GiveMeJustA[X] { def apply(): X }
И у меня есть несколько примеров:
case class Foo(s: String)
case class Bar(i: Int)
implicit...
686 просмотров
schedule
12.06.2023
Существуют ли какие-либо рекомендации по стилю использования неявного параметра со значением по умолчанию в scala?
Можно ли использовать такие решения, как здесь:
def convert[T](x: T)(implicit format = Default) = ...
Это позволяет вам не указывать имплициты, если вам это не нужно. Но многие библиотеки (по крайней мере, Lift Json и Scala Concurrent)...
109 просмотров
schedule
02.01.2023
Контекст, привязанный к вложенному типу
Можно ли как-то создать контекст, привязанный к вложенному типу? Что-то вроде этого:
def f[T : U[List]](a: T)
Конечно, это не синтаксис Scala, но он иллюстрирует то, чего я хочу достичь, то есть получить ограничение на неявное U[List[T]] ....
164 просмотров
schedule
04.04.2023
Бесформенный Scala: вывод типа из Mapper
Метод doesNotCompile принимает только HLlist, содержащие только Label[A] записей. Существует Mapper, который преобразует Label[A] в строку (если быть точным: Const[String]#λ ). Однако, когда я применяю преобразователь, возвращаемый тип —...
538 просмотров
schedule
31.07.2023
Почему компилятор Scala не может использовать неявное преобразование унаследованного типа?
В настоящее время я копаюсь в неявной теме и застрял в этом случае:
class A
class B extends A
object A { implicit def b2String(b: B): String = "B" }
object B { implicit def a2String(a: A): String = "A" }
val s: String = new B // This does not...
91 просмотров
schedule
12.09.2022
Класс Scala с частным конструктором и неявным параметром
Я хотел бы добавить неявный параметр в класс с частным конструктором. Вот как упрощенный пример:
class A[T] private(a:Int){
def this()=this(0)
}
Если бы я хотел применить шаблон Pimp my library к T с помощью Ordered[T], мне нужно было...
382 просмотров
schedule
16.06.2023
Неявное преобразование Scala для псевдонимов типов
Определять
type TA[T] = T => Int
implicit class TAOps[T](a: TA[T]) {
def foo(): Unit = {println("TA")}
}
val ta: TA[Double] = x => x.toInt
Сейчас,
ta.foo()
не компилируется с сообщением value foo is not a member of...
894 просмотров
schedule
17.07.2023
Стоимость выполнения неявных определений в шаблоне класса типов Scala
Я просматриваю эту статью о том, как Typeclasses моделируются в Scala с использованием имплицитов.
Если я не ошибаюсь, новый экземпляр создается во время выполнения каждый раз, когда используется метод класса типов для объявления рекурсивного...
302 просмотров
schedule
11.07.2023
Вызов имплицитов Scala для подклассов запечатанного абстрактного трейта
Я использую две библиотеки Scala, которые обе полагаются на неявные параметры для предоставления кодеков / маршаллеров для классов case (рассматриваемые библиотеки - это msgpack4s и op-rabbit). Ниже приводится упрощенный пример:
sealed abstract...
421 просмотров
schedule
08.07.2022
Общий Avro Serde с использованием shapeless-datatype
Я изо всех сил пытаюсь создать общий AvroSerde в Scala. Я буду использовать этот serde в сочетании с Flink , поэтому этот serde сам должен быть сериализуемым. В Avro нет встроенной поддержки Scala, однако есть несколько библиотек, которые позволяют...
454 просмотров
schedule
07.06.2022