scala - 在 Scala 宏中对来自 ValDef 的 TypeTree 值进行模式匹配的正确方法?

标签 scala scala-macros

我需要读取案例类的字段并根据字段的类型执行不同的操作。

我想尝试使用宏,读取每个 TypeTree 上的 ValDef 和模式匹配,但这并没有揭示每个 TypeTree 代表什么(例如,整数和字符串都显示为 TypeTree)。

是否有其他方法可以调用 typeTree.toString 并匹配字符串的值(例如“String”或“Int”)?

最佳答案

您可以使用 TypeTree 的 tpe 方法来查看底层类型。

关于scala - 在 Scala 宏中对来自 ValDef 的 TypeTree 值进行模式匹配的正确方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23671379/

相关文章:

scala - 使用 Spark 过滤带有条件的数据框

scala - 如何使用scala编写命令行工具

Scala Def Macros - 如何获取符号的参数化类型成员?

scala - 如何参数化 StringContext 使用的格式字符串?

scala - 为SBT中的多个测试文件夹设置操作

r - Scala:通过整数列表定义映射

斯卡拉 3 : inline vs quoted (macros)

scala - 如何在准引号中拼接各种类型的符号?

Scala 宏 : Define Top Level Object

json - Play Json : Transforming a Reads[T] to Reads[Seq[T]] without implicits