Если у меня есть следующий класс case с частным конструктором, и я не могу получить доступ к методу apply в сопутствующем объекте.
case class Meter private (m: Int)
val m = Meter(10) // constructor Meter in class Meter cannot be accessed...
Есть ли способ использовать класс case с частным конструктором, но сохранить созданный метод apply в общедоступном соавторе?
Я знаю, что нет разницы (в моем примере) между двумя вариантами:
val m1 = new Meter(10)
val m2 = Meter(10)
но я хочу запретить первый вариант.
-- редактировать --
Удивительно, но следующие работы (но не совсем то, что я хочу):
val x = Meter
val m3 = x(10) // m3 : Meter = Meter(10)