У меня есть следующее определение перечисления:Scala - расходящиеся неявное расширение при использовании toMap
object GraphType extends Enumeration {
type Type = Value
val MESSAGE, REQUEST, ERRORS = Value
}
Теперь я пытаюсь отобразить каждый из типов в соответствующий, новый TimeSeries
следующим образом:
val dataSets = (GraphType.values map (graphType => graphType -> new TimeSeries(graphType))).toMap
система типов перечисляет наборы данных как Map[GraphType.Value, TimeSeries]
, что и есть то, что я хочу. Однако, компиляция завершается с сообщением об ошибке:
error: diverging implicit expansion for type scala.collection.generic.CanBuildFrom[ird.replay.gui.GraphType.ValueSet,(ird.replay.gui.GraphType.Value, org.jfree.data.time.TimeSeries),That]
starting with method newCanBuildFrom in object SortedSet
val dataSets = GraphType.values map (graphType => graphType -> new TimeSeries(graphType)) toMap
кто-то может предоставить некоторые объяснения для этого, довольно загадочно, сообщение об ошибке? Благодаря
Возможный дубликат [Перечисление и сопоставление с помощью Scala 2.10] (http://stackoverflow.com/questions/9487425/enumeration-and-mapping-with-scala-2-10) – QuidNovi