Используя отражение Scala, вы можете получить значение некоторого элемента в AST.Например, когда я хочу получить значение некоторой строки в AST, я могу использовать следующий оператор, который прекрасно работает:
a.tree.children.tail.collect({case Literal(Constant(id: String)) => id}).head
Однако, когда значение я хочу получить доступявляется символом scala.Symbol вместо String, приведенное выше утверждение не возвращает значение:
a.tree.children.tail.collect({case Literal(Constant(id: Symbol)) => id}).head
Мой вопрос: scala.Symbol представляется чем-то иным, чем литеральной константой вАСТ?