Если вы звоните, например, createEntities[Parent]("A", "B")
(что вы можете, потому что Parent
является подтипом Parent
), ему нужен неявный mutable.Map[String, Parent]
, а его нет. Если быть более точным, ваши определения требуют, чтобы вы указали mutable.Map[String, T]
для каждого подтипа Parent
, а не только те, которые уже определены:
implicit def aMap[T <: Parent]: mutable.Map[String, T] = ...