我正在写一个Scala宏,并遍历树来寻找类中的非私有字段。 考虑以下代码,宏观着眼于: class Foo {
val bar: String = "test"
}
我穿越这个代码和获得bar的ValDef。它的修饰符中只有两个标志:Flag.PRIVATE和Flag.LOCAL。 在bar上使用private修饰符不会改变任何内容。使用protected修饰符仅将Flag.PRO
我正在将Scala函数导出为外部格式。为此我使用scala.meta和StaticAnnotation。喜欢的东西: @ExportFunctions
object MyFunctions {
def max(x: Int, y: Int): Int = x max y
}
class ExportFunctions extends StaticAnnotation {
我想为向伴随对象添加方法的案例类编写一个简单的宏注释。问题在于新方法必须考虑带注释的案例类的类型参数。 下面是我需要传递 package my.macros
import org.scalatest._
class DefaultApplyTest extends FlatSpec with Matchers {
@defaultApply case class Generic