BiMapCoproductTranslation

org.hungerford.generic.schema.coproduct.translation.BiMapCoproductTranslation
trait BiMapCoproductTranslation[RW[_], DecoderSch[_], EncoderSch[_], Source, Sink]() extends CoproductDecoderTranslation[DecoderSch, Source] with CoproductEncoderTranslation[EncoderSch, Sink]

Attributes

Graph
Supertypes
trait CoproductEncoderTranslation[EncoderSch, Sink]
trait WithSubtypeWriter[EncoderSch, Sink]
trait CoproductDecoderTranslation[DecoderSch, Source]
trait WithSubtypeReader[DecoderSch, Source]
class Object
trait Matchable
class Any

Members list

Concise view

Type members

Inherited classlikes

Attributes

Inherited from:
CoproductDecoderTranslation
Graph
Supertypes
class Object
trait Matchable
class Any
trait CoproductReader[T, R, D, DN, Cache <: TypeCache]()

Attributes

Inherited from:
CoproductDecoderTranslation
Graph
Supertypes
class Object
trait Matchable
class Any

Attributes

Inherited from:
CoproductEncoderTranslation
Graph
Supertypes
class Object
trait Matchable
class Any
trait CoproductWriter[V, R, Cache <: TypeCache]()

Attributes

Inherited from:
CoproductEncoderTranslation
Graph
Supertypes
class Object
trait Matchable
class Any
trait DiscrReader[DV]()

Attributes

Inherited from:
WithSubtypeReader
Graph
Supertypes
class Object
trait Matchable
class Any
trait SubtypeReader[ST, N <: TypeName]()

Attributes

Inherited from:
WithSubtypeReader
Graph
Supertypes
class Object
trait Matchable
class Any
trait SubtypeWriter[ST, N <: TypeName]()

Attributes

Inherited from:
WithSubtypeWriter
Graph
Supertypes
class Object
trait Matchable
class Any

Value members

Abstract methods

def buildCoproductSchema[T](enc: EncoderSch[T], dec: DecoderSch[T]): RW[T]

Inherited methods

def buildCoproductDecoder[T](decode: Source => Option[T]): OtherSchema[T]

Attributes

Inherited from:
CoproductDecoderTranslation
def buildCoproductEncoder[T](decode: T => Sink): OtherSchema[T]

Attributes

Inherited from:
CoproductEncoderTranslation

Givens

Inherited givens

given decoderTranslator[T, R <: Tuple, RV <: Tuple, D, DN, Cache <: TypeCache](using reader: CoproductReader[T, R, D, DN, Cached[Cache, T, DecoderSch[T]]]): decoderTranslator[T, R, RV, D, DN, Cache]

Attributes

Inherited from:
CoproductDecoderTranslation
given encoderTranslator[T, R <: Tuple, RV <: Tuple, D, DN, Cache <: TypeCache](using writer: CoproductWriter[T, R, Cached[Cache, T, RecursiveSchemaTranslator[T, CoproductShape[T, R, RV, D, DN], Cache, EncoderSch]]]): encoderTranslator[T, R, RV, D, DN, Cache]

Attributes

Inherited from:
CoproductEncoderTranslation