org.hungerford.generic.schema.coproduct

Type members

Classlikes

trait CoproductDeriver[T]()
Companion
object
Companion
class
trait CoproductMirDeriver[T, Elems <: Tuple, ElemLabels <: Tuple]()
Companion
object
Companion
class
case
class CoproductSchemaBuilder[T, R <: Tuple, D, DN](nm: Option[String], desc: Option[String], vals: Set[Validator[T]], exs: Seq[T], dep: Boolean, sts: R)
Companion
object
case
class CoproductShape[T, R <: Tuple, RV <: Tuple, D, DN](subtypeDescriptions: R)(using ctx: CtxWrapTuplesConstraint[Ctx[T, D], R, RV], uniqT: UniqueTypeNames[R], uniqDV: UniqueDiscriminatorValues[R], dEv: ValidDiscriminator[D, DN, R])
trait DiscriminatorAdder[NewD, T, R, D, DN]()
Companion
object
Companion
class
trait DoesNotContainDV[R, DV]()
Companion
object
Companion
class
trait DoesNotContainN[R, N]()
Companion
object
Companion
class
case
class SubtypeBuilderAdder[ST, TSType, T, R <: Tuple, D, DN](stb: CoproductSchemaBuilder[T, R, D, DN])(using tsEv: Aux[T, ST, TSType])
case
class SubtypeModifier[N <: TypeName, R <: Tuple, Builder, SubT](builder: Builder)(using str: Aux[N, R, SubT])
trait SubtypesDeriver[T, STs <: Tuple, Ns <: Tuple]()
Companion
object
Companion
class
Companion
object
trait UniqueTypeNames[R]()
Companion
object
Companion
class
trait ValidDiscriminator[D, DN, R]()
Companion
object
Companion
class