endpoints.ujson.TuplesSchemas.scala Maven / Gradle / Ivy
The newest version!
// auto-generated by sbt-boilerplate
package endpoints4s.ujson
import endpoints4s.{ algebra, Invalid }
/**
* @group interpreters
*/
trait TuplesSchemas extends algebra.TuplesSchemas { this: JsonSchemas =>
implicit def tuple2JsonSchema[T1, T2](implicit schema1: JsonSchema[T1], schema2: JsonSchema[T2]): JsonSchema[(T1, T2)] =
new JsonSchema[(T1, T2)] {
val decoder = {
case ujson.Arr(items) if items.length == 2 => schema1.decoder.decode(items(0)) zip schema2.decoder.decode(items(1))
case json => Invalid(s"Invalid JSON array of 2 elements: $json")
}
val encoder = { case (t1, t2) => ujson.Arr(schema1.encoder.encode(t1), schema2.encoder.encode(t2)) }
}
implicit def tuple3JsonSchema[T1, T2, T3](implicit schema1: JsonSchema[T1], schema2: JsonSchema[T2], schema3: JsonSchema[T3]): JsonSchema[(T1, T2, T3)] =
new JsonSchema[(T1, T2, T3)] {
val decoder = {
case ujson.Arr(items) if items.length == 3 => schema1.decoder.decode(items(0)) zip schema2.decoder.decode(items(1)) zip schema3.decoder.decode(items(2))
case json => Invalid(s"Invalid JSON array of 3 elements: $json")
}
val encoder = { case (t1, t2, t3) => ujson.Arr(schema1.encoder.encode(t1), schema2.encoder.encode(t2), schema3.encoder.encode(t3)) }
}
implicit def tuple4JsonSchema[T1, T2, T3, T4](implicit schema1: JsonSchema[T1], schema2: JsonSchema[T2], schema3: JsonSchema[T3], schema4: JsonSchema[T4]): JsonSchema[(T1, T2, T3, T4)] =
new JsonSchema[(T1, T2, T3, T4)] {
val decoder = {
case ujson.Arr(items) if items.length == 4 => schema1.decoder.decode(items(0)) zip schema2.decoder.decode(items(1)) zip schema3.decoder.decode(items(2)) zip schema4.decoder.decode(items(3))
case json => Invalid(s"Invalid JSON array of 4 elements: $json")
}
val encoder = { case (t1, t2, t3, t4) => ujson.Arr(schema1.encoder.encode(t1), schema2.encoder.encode(t2), schema3.encoder.encode(t3), schema4.encoder.encode(t4)) }
}
implicit def tuple5JsonSchema[T1, T2, T3, T4, T5](implicit schema1: JsonSchema[T1], schema2: JsonSchema[T2], schema3: JsonSchema[T3], schema4: JsonSchema[T4], schema5: JsonSchema[T5]): JsonSchema[(T1, T2, T3, T4, T5)] =
new JsonSchema[(T1, T2, T3, T4, T5)] {
val decoder = {
case ujson.Arr(items) if items.length == 5 => schema1.decoder.decode(items(0)) zip schema2.decoder.decode(items(1)) zip schema3.decoder.decode(items(2)) zip schema4.decoder.decode(items(3)) zip schema5.decoder.decode(items(4))
case json => Invalid(s"Invalid JSON array of 5 elements: $json")
}
val encoder = { case (t1, t2, t3, t4, t5) => ujson.Arr(schema1.encoder.encode(t1), schema2.encoder.encode(t2), schema3.encoder.encode(t3), schema4.encoder.encode(t4), schema5.encoder.encode(t5)) }
}
implicit def tuple6JsonSchema[T1, T2, T3, T4, T5, T6](implicit schema1: JsonSchema[T1], schema2: JsonSchema[T2], schema3: JsonSchema[T3], schema4: JsonSchema[T4], schema5: JsonSchema[T5], schema6: JsonSchema[T6]): JsonSchema[(T1, T2, T3, T4, T5, T6)] =
new JsonSchema[(T1, T2, T3, T4, T5, T6)] {
val decoder = {
case ujson.Arr(items) if items.length == 6 => schema1.decoder.decode(items(0)) zip schema2.decoder.decode(items(1)) zip schema3.decoder.decode(items(2)) zip schema4.decoder.decode(items(3)) zip schema5.decoder.decode(items(4)) zip schema6.decoder.decode(items(5))
case json => Invalid(s"Invalid JSON array of 6 elements: $json")
}
val encoder = { case (t1, t2, t3, t4, t5, t6) => ujson.Arr(schema1.encoder.encode(t1), schema2.encoder.encode(t2), schema3.encoder.encode(t3), schema4.encoder.encode(t4), schema5.encoder.encode(t5), schema6.encoder.encode(t6)) }
}
implicit def tuple7JsonSchema[T1, T2, T3, T4, T5, T6, T7](implicit schema1: JsonSchema[T1], schema2: JsonSchema[T2], schema3: JsonSchema[T3], schema4: JsonSchema[T4], schema5: JsonSchema[T5], schema6: JsonSchema[T6], schema7: JsonSchema[T7]): JsonSchema[(T1, T2, T3, T4, T5, T6, T7)] =
new JsonSchema[(T1, T2, T3, T4, T5, T6, T7)] {
val decoder = {
case ujson.Arr(items) if items.length == 7 => schema1.decoder.decode(items(0)) zip schema2.decoder.decode(items(1)) zip schema3.decoder.decode(items(2)) zip schema4.decoder.decode(items(3)) zip schema5.decoder.decode(items(4)) zip schema6.decoder.decode(items(5)) zip schema7.decoder.decode(items(6))
case json => Invalid(s"Invalid JSON array of 7 elements: $json")
}
val encoder = { case (t1, t2, t3, t4, t5, t6, t7) => ujson.Arr(schema1.encoder.encode(t1), schema2.encoder.encode(t2), schema3.encoder.encode(t3), schema4.encoder.encode(t4), schema5.encoder.encode(t5), schema6.encoder.encode(t6), schema7.encoder.encode(t7)) }
}
implicit def tuple8JsonSchema[T1, T2, T3, T4, T5, T6, T7, T8](implicit schema1: JsonSchema[T1], schema2: JsonSchema[T2], schema3: JsonSchema[T3], schema4: JsonSchema[T4], schema5: JsonSchema[T5], schema6: JsonSchema[T6], schema7: JsonSchema[T7], schema8: JsonSchema[T8]): JsonSchema[(T1, T2, T3, T4, T5, T6, T7, T8)] =
new JsonSchema[(T1, T2, T3, T4, T5, T6, T7, T8)] {
val decoder = {
case ujson.Arr(items) if items.length == 8 => schema1.decoder.decode(items(0)) zip schema2.decoder.decode(items(1)) zip schema3.decoder.decode(items(2)) zip schema4.decoder.decode(items(3)) zip schema5.decoder.decode(items(4)) zip schema6.decoder.decode(items(5)) zip schema7.decoder.decode(items(6)) zip schema8.decoder.decode(items(7))
case json => Invalid(s"Invalid JSON array of 8 elements: $json")
}
val encoder = { case (t1, t2, t3, t4, t5, t6, t7, t8) => ujson.Arr(schema1.encoder.encode(t1), schema2.encoder.encode(t2), schema3.encoder.encode(t3), schema4.encoder.encode(t4), schema5.encoder.encode(t5), schema6.encoder.encode(t6), schema7.encoder.encode(t7), schema8.encoder.encode(t8)) }
}
implicit def tuple9JsonSchema[T1, T2, T3, T4, T5, T6, T7, T8, T9](implicit schema1: JsonSchema[T1], schema2: JsonSchema[T2], schema3: JsonSchema[T3], schema4: JsonSchema[T4], schema5: JsonSchema[T5], schema6: JsonSchema[T6], schema7: JsonSchema[T7], schema8: JsonSchema[T8], schema9: JsonSchema[T9]): JsonSchema[(T1, T2, T3, T4, T5, T6, T7, T8, T9)] =
new JsonSchema[(T1, T2, T3, T4, T5, T6, T7, T8, T9)] {
val decoder = {
case ujson.Arr(items) if items.length == 9 => schema1.decoder.decode(items(0)) zip schema2.decoder.decode(items(1)) zip schema3.decoder.decode(items(2)) zip schema4.decoder.decode(items(3)) zip schema5.decoder.decode(items(4)) zip schema6.decoder.decode(items(5)) zip schema7.decoder.decode(items(6)) zip schema8.decoder.decode(items(7)) zip schema9.decoder.decode(items(8))
case json => Invalid(s"Invalid JSON array of 9 elements: $json")
}
val encoder = { case (t1, t2, t3, t4, t5, t6, t7, t8, t9) => ujson.Arr(schema1.encoder.encode(t1), schema2.encoder.encode(t2), schema3.encoder.encode(t3), schema4.encoder.encode(t4), schema5.encoder.encode(t5), schema6.encoder.encode(t6), schema7.encoder.encode(t7), schema8.encoder.encode(t8), schema9.encoder.encode(t9)) }
}
implicit def tuple10JsonSchema[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10](implicit schema1: JsonSchema[T1], schema2: JsonSchema[T2], schema3: JsonSchema[T3], schema4: JsonSchema[T4], schema5: JsonSchema[T5], schema6: JsonSchema[T6], schema7: JsonSchema[T7], schema8: JsonSchema[T8], schema9: JsonSchema[T9], schema10: JsonSchema[T10]): JsonSchema[(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10)] =
new JsonSchema[(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10)] {
val decoder = {
case ujson.Arr(items) if items.length == 10 => schema1.decoder.decode(items(0)) zip schema2.decoder.decode(items(1)) zip schema3.decoder.decode(items(2)) zip schema4.decoder.decode(items(3)) zip schema5.decoder.decode(items(4)) zip schema6.decoder.decode(items(5)) zip schema7.decoder.decode(items(6)) zip schema8.decoder.decode(items(7)) zip schema9.decoder.decode(items(8)) zip schema10.decoder.decode(items(9))
case json => Invalid(s"Invalid JSON array of 10 elements: $json")
}
val encoder = { case (t1, t2, t3, t4, t5, t6, t7, t8, t9, t10) => ujson.Arr(schema1.encoder.encode(t1), schema2.encoder.encode(t2), schema3.encoder.encode(t3), schema4.encoder.encode(t4), schema5.encoder.encode(t5), schema6.encoder.encode(t6), schema7.encoder.encode(t7), schema8.encoder.encode(t8), schema9.encoder.encode(t9), schema10.encoder.encode(t10)) }
}
implicit def tuple11JsonSchema[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11](implicit schema1: JsonSchema[T1], schema2: JsonSchema[T2], schema3: JsonSchema[T3], schema4: JsonSchema[T4], schema5: JsonSchema[T5], schema6: JsonSchema[T6], schema7: JsonSchema[T7], schema8: JsonSchema[T8], schema9: JsonSchema[T9], schema10: JsonSchema[T10], schema11: JsonSchema[T11]): JsonSchema[(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11)] =
new JsonSchema[(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11)] {
val decoder = {
case ujson.Arr(items) if items.length == 11 => schema1.decoder.decode(items(0)) zip schema2.decoder.decode(items(1)) zip schema3.decoder.decode(items(2)) zip schema4.decoder.decode(items(3)) zip schema5.decoder.decode(items(4)) zip schema6.decoder.decode(items(5)) zip schema7.decoder.decode(items(6)) zip schema8.decoder.decode(items(7)) zip schema9.decoder.decode(items(8)) zip schema10.decoder.decode(items(9)) zip schema11.decoder.decode(items(10))
case json => Invalid(s"Invalid JSON array of 11 elements: $json")
}
val encoder = { case (t1, t2, t3, t4, t5, t6, t7, t8, t9, t10, t11) => ujson.Arr(schema1.encoder.encode(t1), schema2.encoder.encode(t2), schema3.encoder.encode(t3), schema4.encoder.encode(t4), schema5.encoder.encode(t5), schema6.encoder.encode(t6), schema7.encoder.encode(t7), schema8.encoder.encode(t8), schema9.encoder.encode(t9), schema10.encoder.encode(t10), schema11.encoder.encode(t11)) }
}
implicit def tuple12JsonSchema[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12](implicit schema1: JsonSchema[T1], schema2: JsonSchema[T2], schema3: JsonSchema[T3], schema4: JsonSchema[T4], schema5: JsonSchema[T5], schema6: JsonSchema[T6], schema7: JsonSchema[T7], schema8: JsonSchema[T8], schema9: JsonSchema[T9], schema10: JsonSchema[T10], schema11: JsonSchema[T11], schema12: JsonSchema[T12]): JsonSchema[(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12)] =
new JsonSchema[(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12)] {
val decoder = {
case ujson.Arr(items) if items.length == 12 => schema1.decoder.decode(items(0)) zip schema2.decoder.decode(items(1)) zip schema3.decoder.decode(items(2)) zip schema4.decoder.decode(items(3)) zip schema5.decoder.decode(items(4)) zip schema6.decoder.decode(items(5)) zip schema7.decoder.decode(items(6)) zip schema8.decoder.decode(items(7)) zip schema9.decoder.decode(items(8)) zip schema10.decoder.decode(items(9)) zip schema11.decoder.decode(items(10)) zip schema12.decoder.decode(items(11))
case json => Invalid(s"Invalid JSON array of 12 elements: $json")
}
val encoder = { case (t1, t2, t3, t4, t5, t6, t7, t8, t9, t10, t11, t12) => ujson.Arr(schema1.encoder.encode(t1), schema2.encoder.encode(t2), schema3.encoder.encode(t3), schema4.encoder.encode(t4), schema5.encoder.encode(t5), schema6.encoder.encode(t6), schema7.encoder.encode(t7), schema8.encoder.encode(t8), schema9.encoder.encode(t9), schema10.encoder.encode(t10), schema11.encoder.encode(t11), schema12.encoder.encode(t12)) }
}
implicit def tuple13JsonSchema[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13](implicit schema1: JsonSchema[T1], schema2: JsonSchema[T2], schema3: JsonSchema[T3], schema4: JsonSchema[T4], schema5: JsonSchema[T5], schema6: JsonSchema[T6], schema7: JsonSchema[T7], schema8: JsonSchema[T8], schema9: JsonSchema[T9], schema10: JsonSchema[T10], schema11: JsonSchema[T11], schema12: JsonSchema[T12], schema13: JsonSchema[T13]): JsonSchema[(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13)] =
new JsonSchema[(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13)] {
val decoder = {
case ujson.Arr(items) if items.length == 13 => schema1.decoder.decode(items(0)) zip schema2.decoder.decode(items(1)) zip schema3.decoder.decode(items(2)) zip schema4.decoder.decode(items(3)) zip schema5.decoder.decode(items(4)) zip schema6.decoder.decode(items(5)) zip schema7.decoder.decode(items(6)) zip schema8.decoder.decode(items(7)) zip schema9.decoder.decode(items(8)) zip schema10.decoder.decode(items(9)) zip schema11.decoder.decode(items(10)) zip schema12.decoder.decode(items(11)) zip schema13.decoder.decode(items(12))
case json => Invalid(s"Invalid JSON array of 13 elements: $json")
}
val encoder = { case (t1, t2, t3, t4, t5, t6, t7, t8, t9, t10, t11, t12, t13) => ujson.Arr(schema1.encoder.encode(t1), schema2.encoder.encode(t2), schema3.encoder.encode(t3), schema4.encoder.encode(t4), schema5.encoder.encode(t5), schema6.encoder.encode(t6), schema7.encoder.encode(t7), schema8.encoder.encode(t8), schema9.encoder.encode(t9), schema10.encoder.encode(t10), schema11.encoder.encode(t11), schema12.encoder.encode(t12), schema13.encoder.encode(t13)) }
}
implicit def tuple14JsonSchema[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14](implicit schema1: JsonSchema[T1], schema2: JsonSchema[T2], schema3: JsonSchema[T3], schema4: JsonSchema[T4], schema5: JsonSchema[T5], schema6: JsonSchema[T6], schema7: JsonSchema[T7], schema8: JsonSchema[T8], schema9: JsonSchema[T9], schema10: JsonSchema[T10], schema11: JsonSchema[T11], schema12: JsonSchema[T12], schema13: JsonSchema[T13], schema14: JsonSchema[T14]): JsonSchema[(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14)] =
new JsonSchema[(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14)] {
val decoder = {
case ujson.Arr(items) if items.length == 14 => schema1.decoder.decode(items(0)) zip schema2.decoder.decode(items(1)) zip schema3.decoder.decode(items(2)) zip schema4.decoder.decode(items(3)) zip schema5.decoder.decode(items(4)) zip schema6.decoder.decode(items(5)) zip schema7.decoder.decode(items(6)) zip schema8.decoder.decode(items(7)) zip schema9.decoder.decode(items(8)) zip schema10.decoder.decode(items(9)) zip schema11.decoder.decode(items(10)) zip schema12.decoder.decode(items(11)) zip schema13.decoder.decode(items(12)) zip schema14.decoder.decode(items(13))
case json => Invalid(s"Invalid JSON array of 14 elements: $json")
}
val encoder = { case (t1, t2, t3, t4, t5, t6, t7, t8, t9, t10, t11, t12, t13, t14) => ujson.Arr(schema1.encoder.encode(t1), schema2.encoder.encode(t2), schema3.encoder.encode(t3), schema4.encoder.encode(t4), schema5.encoder.encode(t5), schema6.encoder.encode(t6), schema7.encoder.encode(t7), schema8.encoder.encode(t8), schema9.encoder.encode(t9), schema10.encoder.encode(t10), schema11.encoder.encode(t11), schema12.encoder.encode(t12), schema13.encoder.encode(t13), schema14.encoder.encode(t14)) }
}
implicit def tuple15JsonSchema[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15](implicit schema1: JsonSchema[T1], schema2: JsonSchema[T2], schema3: JsonSchema[T3], schema4: JsonSchema[T4], schema5: JsonSchema[T5], schema6: JsonSchema[T6], schema7: JsonSchema[T7], schema8: JsonSchema[T8], schema9: JsonSchema[T9], schema10: JsonSchema[T10], schema11: JsonSchema[T11], schema12: JsonSchema[T12], schema13: JsonSchema[T13], schema14: JsonSchema[T14], schema15: JsonSchema[T15]): JsonSchema[(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15)] =
new JsonSchema[(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15)] {
val decoder = {
case ujson.Arr(items) if items.length == 15 => schema1.decoder.decode(items(0)) zip schema2.decoder.decode(items(1)) zip schema3.decoder.decode(items(2)) zip schema4.decoder.decode(items(3)) zip schema5.decoder.decode(items(4)) zip schema6.decoder.decode(items(5)) zip schema7.decoder.decode(items(6)) zip schema8.decoder.decode(items(7)) zip schema9.decoder.decode(items(8)) zip schema10.decoder.decode(items(9)) zip schema11.decoder.decode(items(10)) zip schema12.decoder.decode(items(11)) zip schema13.decoder.decode(items(12)) zip schema14.decoder.decode(items(13)) zip schema15.decoder.decode(items(14))
case json => Invalid(s"Invalid JSON array of 15 elements: $json")
}
val encoder = { case (t1, t2, t3, t4, t5, t6, t7, t8, t9, t10, t11, t12, t13, t14, t15) => ujson.Arr(schema1.encoder.encode(t1), schema2.encoder.encode(t2), schema3.encoder.encode(t3), schema4.encoder.encode(t4), schema5.encoder.encode(t5), schema6.encoder.encode(t6), schema7.encoder.encode(t7), schema8.encoder.encode(t8), schema9.encoder.encode(t9), schema10.encoder.encode(t10), schema11.encoder.encode(t11), schema12.encoder.encode(t12), schema13.encoder.encode(t13), schema14.encoder.encode(t14), schema15.encoder.encode(t15)) }
}
implicit def tuple16JsonSchema[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16](implicit schema1: JsonSchema[T1], schema2: JsonSchema[T2], schema3: JsonSchema[T3], schema4: JsonSchema[T4], schema5: JsonSchema[T5], schema6: JsonSchema[T6], schema7: JsonSchema[T7], schema8: JsonSchema[T8], schema9: JsonSchema[T9], schema10: JsonSchema[T10], schema11: JsonSchema[T11], schema12: JsonSchema[T12], schema13: JsonSchema[T13], schema14: JsonSchema[T14], schema15: JsonSchema[T15], schema16: JsonSchema[T16]): JsonSchema[(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16)] =
new JsonSchema[(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16)] {
val decoder = {
case ujson.Arr(items) if items.length == 16 => schema1.decoder.decode(items(0)) zip schema2.decoder.decode(items(1)) zip schema3.decoder.decode(items(2)) zip schema4.decoder.decode(items(3)) zip schema5.decoder.decode(items(4)) zip schema6.decoder.decode(items(5)) zip schema7.decoder.decode(items(6)) zip schema8.decoder.decode(items(7)) zip schema9.decoder.decode(items(8)) zip schema10.decoder.decode(items(9)) zip schema11.decoder.decode(items(10)) zip schema12.decoder.decode(items(11)) zip schema13.decoder.decode(items(12)) zip schema14.decoder.decode(items(13)) zip schema15.decoder.decode(items(14)) zip schema16.decoder.decode(items(15))
case json => Invalid(s"Invalid JSON array of 16 elements: $json")
}
val encoder = { case (t1, t2, t3, t4, t5, t6, t7, t8, t9, t10, t11, t12, t13, t14, t15, t16) => ujson.Arr(schema1.encoder.encode(t1), schema2.encoder.encode(t2), schema3.encoder.encode(t3), schema4.encoder.encode(t4), schema5.encoder.encode(t5), schema6.encoder.encode(t6), schema7.encoder.encode(t7), schema8.encoder.encode(t8), schema9.encoder.encode(t9), schema10.encoder.encode(t10), schema11.encoder.encode(t11), schema12.encoder.encode(t12), schema13.encoder.encode(t13), schema14.encoder.encode(t14), schema15.encoder.encode(t15), schema16.encoder.encode(t16)) }
}
implicit def tuple17JsonSchema[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17](implicit schema1: JsonSchema[T1], schema2: JsonSchema[T2], schema3: JsonSchema[T3], schema4: JsonSchema[T4], schema5: JsonSchema[T5], schema6: JsonSchema[T6], schema7: JsonSchema[T7], schema8: JsonSchema[T8], schema9: JsonSchema[T9], schema10: JsonSchema[T10], schema11: JsonSchema[T11], schema12: JsonSchema[T12], schema13: JsonSchema[T13], schema14: JsonSchema[T14], schema15: JsonSchema[T15], schema16: JsonSchema[T16], schema17: JsonSchema[T17]): JsonSchema[(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17)] =
new JsonSchema[(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17)] {
val decoder = {
case ujson.Arr(items) if items.length == 17 => schema1.decoder.decode(items(0)) zip schema2.decoder.decode(items(1)) zip schema3.decoder.decode(items(2)) zip schema4.decoder.decode(items(3)) zip schema5.decoder.decode(items(4)) zip schema6.decoder.decode(items(5)) zip schema7.decoder.decode(items(6)) zip schema8.decoder.decode(items(7)) zip schema9.decoder.decode(items(8)) zip schema10.decoder.decode(items(9)) zip schema11.decoder.decode(items(10)) zip schema12.decoder.decode(items(11)) zip schema13.decoder.decode(items(12)) zip schema14.decoder.decode(items(13)) zip schema15.decoder.decode(items(14)) zip schema16.decoder.decode(items(15)) zip schema17.decoder.decode(items(16))
case json => Invalid(s"Invalid JSON array of 17 elements: $json")
}
val encoder = { case (t1, t2, t3, t4, t5, t6, t7, t8, t9, t10, t11, t12, t13, t14, t15, t16, t17) => ujson.Arr(schema1.encoder.encode(t1), schema2.encoder.encode(t2), schema3.encoder.encode(t3), schema4.encoder.encode(t4), schema5.encoder.encode(t5), schema6.encoder.encode(t6), schema7.encoder.encode(t7), schema8.encoder.encode(t8), schema9.encoder.encode(t9), schema10.encoder.encode(t10), schema11.encoder.encode(t11), schema12.encoder.encode(t12), schema13.encoder.encode(t13), schema14.encoder.encode(t14), schema15.encoder.encode(t15), schema16.encoder.encode(t16), schema17.encoder.encode(t17)) }
}
implicit def tuple18JsonSchema[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18](implicit schema1: JsonSchema[T1], schema2: JsonSchema[T2], schema3: JsonSchema[T3], schema4: JsonSchema[T4], schema5: JsonSchema[T5], schema6: JsonSchema[T6], schema7: JsonSchema[T7], schema8: JsonSchema[T8], schema9: JsonSchema[T9], schema10: JsonSchema[T10], schema11: JsonSchema[T11], schema12: JsonSchema[T12], schema13: JsonSchema[T13], schema14: JsonSchema[T14], schema15: JsonSchema[T15], schema16: JsonSchema[T16], schema17: JsonSchema[T17], schema18: JsonSchema[T18]): JsonSchema[(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18)] =
new JsonSchema[(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18)] {
val decoder = {
case ujson.Arr(items) if items.length == 18 => schema1.decoder.decode(items(0)) zip schema2.decoder.decode(items(1)) zip schema3.decoder.decode(items(2)) zip schema4.decoder.decode(items(3)) zip schema5.decoder.decode(items(4)) zip schema6.decoder.decode(items(5)) zip schema7.decoder.decode(items(6)) zip schema8.decoder.decode(items(7)) zip schema9.decoder.decode(items(8)) zip schema10.decoder.decode(items(9)) zip schema11.decoder.decode(items(10)) zip schema12.decoder.decode(items(11)) zip schema13.decoder.decode(items(12)) zip schema14.decoder.decode(items(13)) zip schema15.decoder.decode(items(14)) zip schema16.decoder.decode(items(15)) zip schema17.decoder.decode(items(16)) zip schema18.decoder.decode(items(17))
case json => Invalid(s"Invalid JSON array of 18 elements: $json")
}
val encoder = { case (t1, t2, t3, t4, t5, t6, t7, t8, t9, t10, t11, t12, t13, t14, t15, t16, t17, t18) => ujson.Arr(schema1.encoder.encode(t1), schema2.encoder.encode(t2), schema3.encoder.encode(t3), schema4.encoder.encode(t4), schema5.encoder.encode(t5), schema6.encoder.encode(t6), schema7.encoder.encode(t7), schema8.encoder.encode(t8), schema9.encoder.encode(t9), schema10.encoder.encode(t10), schema11.encoder.encode(t11), schema12.encoder.encode(t12), schema13.encoder.encode(t13), schema14.encoder.encode(t14), schema15.encoder.encode(t15), schema16.encoder.encode(t16), schema17.encoder.encode(t17), schema18.encoder.encode(t18)) }
}
implicit def tuple19JsonSchema[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19](implicit schema1: JsonSchema[T1], schema2: JsonSchema[T2], schema3: JsonSchema[T3], schema4: JsonSchema[T4], schema5: JsonSchema[T5], schema6: JsonSchema[T6], schema7: JsonSchema[T7], schema8: JsonSchema[T8], schema9: JsonSchema[T9], schema10: JsonSchema[T10], schema11: JsonSchema[T11], schema12: JsonSchema[T12], schema13: JsonSchema[T13], schema14: JsonSchema[T14], schema15: JsonSchema[T15], schema16: JsonSchema[T16], schema17: JsonSchema[T17], schema18: JsonSchema[T18], schema19: JsonSchema[T19]): JsonSchema[(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19)] =
new JsonSchema[(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19)] {
val decoder = {
case ujson.Arr(items) if items.length == 19 => schema1.decoder.decode(items(0)) zip schema2.decoder.decode(items(1)) zip schema3.decoder.decode(items(2)) zip schema4.decoder.decode(items(3)) zip schema5.decoder.decode(items(4)) zip schema6.decoder.decode(items(5)) zip schema7.decoder.decode(items(6)) zip schema8.decoder.decode(items(7)) zip schema9.decoder.decode(items(8)) zip schema10.decoder.decode(items(9)) zip schema11.decoder.decode(items(10)) zip schema12.decoder.decode(items(11)) zip schema13.decoder.decode(items(12)) zip schema14.decoder.decode(items(13)) zip schema15.decoder.decode(items(14)) zip schema16.decoder.decode(items(15)) zip schema17.decoder.decode(items(16)) zip schema18.decoder.decode(items(17)) zip schema19.decoder.decode(items(18))
case json => Invalid(s"Invalid JSON array of 19 elements: $json")
}
val encoder = { case (t1, t2, t3, t4, t5, t6, t7, t8, t9, t10, t11, t12, t13, t14, t15, t16, t17, t18, t19) => ujson.Arr(schema1.encoder.encode(t1), schema2.encoder.encode(t2), schema3.encoder.encode(t3), schema4.encoder.encode(t4), schema5.encoder.encode(t5), schema6.encoder.encode(t6), schema7.encoder.encode(t7), schema8.encoder.encode(t8), schema9.encoder.encode(t9), schema10.encoder.encode(t10), schema11.encoder.encode(t11), schema12.encoder.encode(t12), schema13.encoder.encode(t13), schema14.encoder.encode(t14), schema15.encoder.encode(t15), schema16.encoder.encode(t16), schema17.encoder.encode(t17), schema18.encoder.encode(t18), schema19.encoder.encode(t19)) }
}
implicit def tuple20JsonSchema[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20](implicit schema1: JsonSchema[T1], schema2: JsonSchema[T2], schema3: JsonSchema[T3], schema4: JsonSchema[T4], schema5: JsonSchema[T5], schema6: JsonSchema[T6], schema7: JsonSchema[T7], schema8: JsonSchema[T8], schema9: JsonSchema[T9], schema10: JsonSchema[T10], schema11: JsonSchema[T11], schema12: JsonSchema[T12], schema13: JsonSchema[T13], schema14: JsonSchema[T14], schema15: JsonSchema[T15], schema16: JsonSchema[T16], schema17: JsonSchema[T17], schema18: JsonSchema[T18], schema19: JsonSchema[T19], schema20: JsonSchema[T20]): JsonSchema[(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20)] =
new JsonSchema[(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20)] {
val decoder = {
case ujson.Arr(items) if items.length == 20 => schema1.decoder.decode(items(0)) zip schema2.decoder.decode(items(1)) zip schema3.decoder.decode(items(2)) zip schema4.decoder.decode(items(3)) zip schema5.decoder.decode(items(4)) zip schema6.decoder.decode(items(5)) zip schema7.decoder.decode(items(6)) zip schema8.decoder.decode(items(7)) zip schema9.decoder.decode(items(8)) zip schema10.decoder.decode(items(9)) zip schema11.decoder.decode(items(10)) zip schema12.decoder.decode(items(11)) zip schema13.decoder.decode(items(12)) zip schema14.decoder.decode(items(13)) zip schema15.decoder.decode(items(14)) zip schema16.decoder.decode(items(15)) zip schema17.decoder.decode(items(16)) zip schema18.decoder.decode(items(17)) zip schema19.decoder.decode(items(18)) zip schema20.decoder.decode(items(19))
case json => Invalid(s"Invalid JSON array of 20 elements: $json")
}
val encoder = { case (t1, t2, t3, t4, t5, t6, t7, t8, t9, t10, t11, t12, t13, t14, t15, t16, t17, t18, t19, t20) => ujson.Arr(schema1.encoder.encode(t1), schema2.encoder.encode(t2), schema3.encoder.encode(t3), schema4.encoder.encode(t4), schema5.encoder.encode(t5), schema6.encoder.encode(t6), schema7.encoder.encode(t7), schema8.encoder.encode(t8), schema9.encoder.encode(t9), schema10.encoder.encode(t10), schema11.encoder.encode(t11), schema12.encoder.encode(t12), schema13.encoder.encode(t13), schema14.encoder.encode(t14), schema15.encoder.encode(t15), schema16.encoder.encode(t16), schema17.encoder.encode(t17), schema18.encoder.encode(t18), schema19.encoder.encode(t19), schema20.encoder.encode(t20)) }
}
implicit def tuple21JsonSchema[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21](implicit schema1: JsonSchema[T1], schema2: JsonSchema[T2], schema3: JsonSchema[T3], schema4: JsonSchema[T4], schema5: JsonSchema[T5], schema6: JsonSchema[T6], schema7: JsonSchema[T7], schema8: JsonSchema[T8], schema9: JsonSchema[T9], schema10: JsonSchema[T10], schema11: JsonSchema[T11], schema12: JsonSchema[T12], schema13: JsonSchema[T13], schema14: JsonSchema[T14], schema15: JsonSchema[T15], schema16: JsonSchema[T16], schema17: JsonSchema[T17], schema18: JsonSchema[T18], schema19: JsonSchema[T19], schema20: JsonSchema[T20], schema21: JsonSchema[T21]): JsonSchema[(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21)] =
new JsonSchema[(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21)] {
val decoder = {
case ujson.Arr(items) if items.length == 21 => schema1.decoder.decode(items(0)) zip schema2.decoder.decode(items(1)) zip schema3.decoder.decode(items(2)) zip schema4.decoder.decode(items(3)) zip schema5.decoder.decode(items(4)) zip schema6.decoder.decode(items(5)) zip schema7.decoder.decode(items(6)) zip schema8.decoder.decode(items(7)) zip schema9.decoder.decode(items(8)) zip schema10.decoder.decode(items(9)) zip schema11.decoder.decode(items(10)) zip schema12.decoder.decode(items(11)) zip schema13.decoder.decode(items(12)) zip schema14.decoder.decode(items(13)) zip schema15.decoder.decode(items(14)) zip schema16.decoder.decode(items(15)) zip schema17.decoder.decode(items(16)) zip schema18.decoder.decode(items(17)) zip schema19.decoder.decode(items(18)) zip schema20.decoder.decode(items(19)) zip schema21.decoder.decode(items(20))
case json => Invalid(s"Invalid JSON array of 21 elements: $json")
}
val encoder = { case (t1, t2, t3, t4, t5, t6, t7, t8, t9, t10, t11, t12, t13, t14, t15, t16, t17, t18, t19, t20, t21) => ujson.Arr(schema1.encoder.encode(t1), schema2.encoder.encode(t2), schema3.encoder.encode(t3), schema4.encoder.encode(t4), schema5.encoder.encode(t5), schema6.encoder.encode(t6), schema7.encoder.encode(t7), schema8.encoder.encode(t8), schema9.encoder.encode(t9), schema10.encoder.encode(t10), schema11.encoder.encode(t11), schema12.encoder.encode(t12), schema13.encoder.encode(t13), schema14.encoder.encode(t14), schema15.encoder.encode(t15), schema16.encoder.encode(t16), schema17.encoder.encode(t17), schema18.encoder.encode(t18), schema19.encoder.encode(t19), schema20.encoder.encode(t20), schema21.encoder.encode(t21)) }
}
implicit def tuple22JsonSchema[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22](implicit schema1: JsonSchema[T1], schema2: JsonSchema[T2], schema3: JsonSchema[T3], schema4: JsonSchema[T4], schema5: JsonSchema[T5], schema6: JsonSchema[T6], schema7: JsonSchema[T7], schema8: JsonSchema[T8], schema9: JsonSchema[T9], schema10: JsonSchema[T10], schema11: JsonSchema[T11], schema12: JsonSchema[T12], schema13: JsonSchema[T13], schema14: JsonSchema[T14], schema15: JsonSchema[T15], schema16: JsonSchema[T16], schema17: JsonSchema[T17], schema18: JsonSchema[T18], schema19: JsonSchema[T19], schema20: JsonSchema[T20], schema21: JsonSchema[T21], schema22: JsonSchema[T22]): JsonSchema[(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22)] =
new JsonSchema[(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22)] {
val decoder = {
case ujson.Arr(items) if items.length == 22 => schema1.decoder.decode(items(0)) zip schema2.decoder.decode(items(1)) zip schema3.decoder.decode(items(2)) zip schema4.decoder.decode(items(3)) zip schema5.decoder.decode(items(4)) zip schema6.decoder.decode(items(5)) zip schema7.decoder.decode(items(6)) zip schema8.decoder.decode(items(7)) zip schema9.decoder.decode(items(8)) zip schema10.decoder.decode(items(9)) zip schema11.decoder.decode(items(10)) zip schema12.decoder.decode(items(11)) zip schema13.decoder.decode(items(12)) zip schema14.decoder.decode(items(13)) zip schema15.decoder.decode(items(14)) zip schema16.decoder.decode(items(15)) zip schema17.decoder.decode(items(16)) zip schema18.decoder.decode(items(17)) zip schema19.decoder.decode(items(18)) zip schema20.decoder.decode(items(19)) zip schema21.decoder.decode(items(20)) zip schema22.decoder.decode(items(21))
case json => Invalid(s"Invalid JSON array of 22 elements: $json")
}
val encoder = { case (t1, t2, t3, t4, t5, t6, t7, t8, t9, t10, t11, t12, t13, t14, t15, t16, t17, t18, t19, t20, t21, t22) => ujson.Arr(schema1.encoder.encode(t1), schema2.encoder.encode(t2), schema3.encoder.encode(t3), schema4.encoder.encode(t4), schema5.encoder.encode(t5), schema6.encoder.encode(t6), schema7.encoder.encode(t7), schema8.encoder.encode(t8), schema9.encoder.encode(t9), schema10.encoder.encode(t10), schema11.encoder.encode(t11), schema12.encoder.encode(t12), schema13.encoder.encode(t13), schema14.encoder.encode(t14), schema15.encoder.encode(t15), schema16.encoder.encode(t16), schema17.encoder.encode(t17), schema18.encoder.encode(t18), schema19.encoder.encode(t19), schema20.encoder.encode(t20), schema21.encoder.encode(t21), schema22.encoder.encode(t22)) }
}
}