Изменить конструктор класса case?
Попытка найти способ «изменить» конструктор к заполнению некоторого значения по умолчанию. Возможно ли следующее?
def reshape[T, R1 <: HList, R2 <: HList](h: R1): R2 => T = ???
//example
case class MyClass(a: Double, b: String, c: Int)
val newConstructor = reshape[MyClass]('b ->> "bValue" :: HNil)
newConstructor('a ->> 3.1 :: 'c ->> 4 :: HNil)
res1: MyClass = MyClass(3.1, "bValue", 4)
Это возможно с бесформенным или мы должны идти макро-маршрут?