SubtypeTypeReplacer

org.hungerford.generic.schema.coproduct.subtype.SubtypeTypeReplacer$
See theSubtypeTypeReplacer companion trait

Attributes

Companion:
trait
Graph
Supertypes
class Object
trait Matchable
class Any
Self type

Members list

Concise view

Type members

Types

type Aux[T, N <: Nat, NewSubT, R <: Tuple, O] = SubtypeTypeReplacer[T, N, NewSubT, R] { type Out = O; }

Value members

Concrete methods

def replace[T, N <: Nat, NewSubT, R <: Tuple](selector: TypeSelector[T, N], from: R, withSubtype: NewSubT)(using strp: SubtypeTypeReplacer[T, N, NewSubT, R]): Out

Givens

Givens

given found[ST, NewSubT, OldT, OldD, OldDN, OldDV, OldN <: TypeName, SubT <: OrLazy[OldT, ST, OldD, OldDN, OldDV, OldN], Tail <: Tuple]: found[ST, NewSubT, OldT, OldD, OldDN, OldDV, OldN, SubT, Tail]
given foundNext[ST, N <: Nat, DecN <: Nat, NewSubT, T, D, DN, DV, TN <: TypeName, SubT <: OrLazy[T, ST, D, DN, DV, TN], Tail <: Tuple, Next <: Tuple](using ev: DecA[N, DecN], next: Aux[ST, DecN, NewSubT, Tail, Next]): foundNext[ST, N, DecN, NewSubT, T, D, DN, DV, TN, SubT, Tail, Next]

Inherited givens

given notFound[T, N <: Nat, Head, Tail <: Tuple, NewSubT, NextRes <: Tuple](using next: Aux[T, N, NewSubT, Tail, NextRes]): notFound[T, N, Head, Tail, NewSubT, NextRes]

Attributes

Inherited from:
LowPrioritySubtypeTypeReplacer