给出一个案例类
case class Foo(int: Int, str: String)
我想要这个界面(或等效的)
Foo.addField[Boolean]("bool").as("Foo2")
自动生成代码
case class Foo2(int: Int, str: String, bool: Boolean)
这可以使用scala宏吗?我环顾四周,无法找到任何决定性的答案。不幸的是,我对API不太熟悉。
我不关心方法或类似的东西,我只想要一个新的命名存储桶与前一个具有一个或多个新字段的存储桶相同。
编辑:我非常确定这篇博文http://ravellaw.com/using-macro-annotations-to-reduce-boilerplate/提供了我需要的所有拼图。