В моем коде scala у меня есть экземпляр Class[_ <: AnyVal]
, например, полученный из classOf[Int]
.
Когда я пытаюсь получить имя типа scala от этого (используя classOf[Int].getName
), я ожидаю увидеть "scala.Int"
, но вместо этого я получаю имя примитивного типа Java: "int"
Как я могу получить имя типа scala из моей переменной Class
, если я имею дело с эквивалентным примитивом java или эквивалентным по умолчанию java-эквивалентом (таким как java.lang.Integer
)
На случай, если вам интересно, зачем мне это нужно; Я генерирую некоторый scala-код, используя treehugger, и информацию о том, нужно ли мне генерировать, например, scala.Int
исходит из библиотеки, которая предоставляет Class[_]