25 case class User(name: String, projects: Seq[Project]) type User { name: String projects: [Project] } case class User( name: Option[String], projects: Option[Seq[Option[Project]]])
w )551ͱ૬ੑ͕ྑ͍ w Ϧιʔεͷઃܭ͕େม w ϦΫΤετճ૿͕͑ͪ (SBQI2- w *'Λܕఆٛग़དྷΔ w ϦΫΤετΛ࠷దԽग़དྷΔ w ΫΤϦͷΛΫϥΠΞϯτ ʹدͤΔ͜ͱ͕ग़དྷΔ w ݟࣄྫ͕ཷ·͍ͬͯͳ͍ w )551ͱ૬ੑ͕ྑ͘ͳ͍ w ϑΝΠϧΛѻ͍ਏ͍ FHը૾ ਏ͍ͱࢥ͍ͬͯΔͱ͜ΖΛ େମղܾͰ͖ͦ͏ͳݟࠐΈ
w )551ͱ૬ੑ͕ྑ͍ w Ϧιʔεͷઃܭ͕େม w ϦΫΤετճ૿͕͑ͪ (SBQI2- w *'Λܕఆٛग़དྷΔ w ϦΫΤετΛ࠷దԽग़དྷΔ w ΫΤϦͷΛΫϥΠΞϯτ ʹدͤΔ͜ͱ͕ग़དྷΔ w ݟࣄྫ͕ཷ·͍ͬͯͳ͍ w )551ͱ૬ੑ͕ྑ͘ͳ͍ w ϑΝΠϧΛѻ͍ਏ͍ FHը૾ Γ͍͍֮ͯ͘ޛͰ Կͱ͔ͳΓͦ͏
Standard | Enterprise object Plan { case class Free(startDate: ZonedDateTime) case class Standard(startDate: ZonedDateTime) case class Enterprise(userLimit: Int, startDate: ZonedDateTime) } implicit val planType: UnionType[Ctx] = { val free = derive.deriveObjectType[Ctx, Plan.Free]() val standard = derive.deriveObjectType[Ctx, Plan.Standard]() val enterprise = derive.deriveObjectType[Ctx, Plan.Enterprise]() UnionType("Plan", types = free :: standard :: enterprise :: Nil) } 53