Getting subclasses of a sealed traitこれは部分的にこの質問と重複していますが、答えは私には不適切な実行時リフレクションを示唆しており、コンパイル時におそらくシェイプレスを使用しているかどうかを知りたいと思います。 ので、このADTを持つ: sealed trait ColumnAttribute
case class Default(value: String
クラスの更新インスタンスをベースインスタンスにマージし、そのインスタンスがベースで「空」の場合はベースインスタンス上の更新インスタンスのフィールドを選択したいインスタンス。私はこのような何かを試してみた case class Foo(a: Option[Int], b: List[Int], c: Option[Int])
val base = Foo(None, Nil, Some(0))
用いた場合のクラスから新しい型を派生私はその後、 UpdateUser(name = Some("foo"), email = Some("[email protected]"))
として使用することができます type UpdateUser = ???.???[User] // update user has same fields as User except all are option
私はスカラーでCSVを読むためにさまざまなライブラリがあることを知っています。私は形のない方法を試みましたが、階層のための一般的な方法でcsvを読むのに問題があります。例えば、 - 各行はint型と文字列またはint型とオプションの文字列のいずれかであるすべての abstract class A
case class ChildOneOfA(i:Int,s:String) extends A