If I have the following case class with a private constructor and I can not access the apply-method in the companion object.
case class Meter private (m: Int
It seems the requested behavior (private constructor but public .apply) may be the way Scala 2.12 implements these.
I came to this from the opposing angle - would like a private case class constructor also block the .apply method. Reasons here: https://github.com/akauppi/case-class-gym
Interesting, how use cases differ.