scala> val name = TermName("foo")
name: reflect.runtime.universe.TermName = foo
scala> q"class Foo private[$name](bar: Bar)"
res10: reflect.runtime.universe.ClassDef =
class Foo extends scala.AnyRef {
<paramaccessor> private[this] val bar: Bar = _;
private[foo] def <init>(bar: Bar) = {
super.<init>();
()
}
}
scala> showCode(q"class Foo private[$name](bar: Bar)")
res11: String = class Foo(bar: Bar)