Я вижу, что большинство людей, которые играли со ScalaSigParser, пытаясь как можно лучше идиоматически развить классы Scala, избежали этой проблемы, но я хотел бы знать, возможно ли это.У меня очень похожая ситуация:
trait OuterTrait {
abstract class InnerAbstract(i: Int)
}
object OuterObject extends OuterTrait {
case class InnerConcrete(i: Int) extends InnerAbstract(i)
}
val bippy = OuterObject.InnerConcrete(123)
val s = serialize(bippy)
// time passes...
val obj = deserialize[OuterObject.InnerConcrete](s)
Итак, я могу найти ScalaSig для OuterTrait, но мне не удалось найти хороший общий способ идентификации внешнего объекта из класса InnerConcrete.Есть какие-нибудь прототипы?