与えられた単純なクラス階層
abstract sealed class Base(id: String)
case class Child1(id: String, value: Int) extends Base(id)
case class Child2(id: String, value: Long, file: File) extends Base(id)
マクロなどを使用して、 idを Base に渡さないようにすることはできますか(そしてコンパイラにこれを生成するように指示します)? 単一の引数では渡すのはそれほど難しくありませんが、複数の引数の場合は不快になります。
または、子クラスでidの指定を省略し、コンパイラーが基本クラスから生成するものを作成できるとしたら?