endpoints4s
package endpoints4s
- Alphabetic
- Public
- All
Type Members
-
trait
Codec[E, D] extends Decoder[E, D] with Encoder[D, E]
A way to encode and decode values
A way to encode and decode values
- E
Type of encoded values
- D
Type of decoded values
-
trait
Decoder[-From, +To] extends AnyRef
A way to decode a
From
value into aTo
value. -
trait
Encoder[-From, +To] extends AnyRef
A way to encode a
From
value into aTo
value -
case class
Invalid(errors: Seq[String]) extends Validated[Nothing] with Product with Serializable
A list of validation errors
-
trait
InvariantFunctor[F[_]] extends AnyRef
Defines ways to transform a given type constructor F
-
trait
InvariantFunctorSyntax extends AnyRef
Provides extensions methods for values of type InvariantFunctor
-
trait
PartialInvariantFunctor[F[_]] extends InvariantFunctor[F]
Given a type constructor
F
, a partial functionA => Validated[B]
and a total functionB => A
, turns anF[A]
into anF[B]
.Given a type constructor
F
, a partial functionA => Validated[B]
and a total functionB => A
, turns anF[A]
into anF[B]
.A partial invariant functor is an invariant functor whose covariant transformation function is total (ie,
A => Valid[B]
). -
trait
PartialInvariantFunctorSyntax extends InvariantFunctorSyntax
Provides extension methods for values of type PartialInvariantFunctor
-
trait
Tupler[A, B] extends AnyRef
Defines a strategy for tupling
A
andB
values, according to typesA
andB
.Defines a strategy for tupling
A
andB
values, according to typesA
andB
.The actual implementation avoids nested tuples and eliminates
Unit
, so that instead of ending with, e.g., the following type:((Unit, Int), (((Unit, Unit), String)))
We just get:
(Int, String)
The following rules are implemented (by increasing priority):
- A, B -> (A, B)
- A, (B, C) -> (A, B, C)
- (A, B), C -> (A, B, C)
- (A, B), (C, D) -> (A, B, C, D)
- A, (B, C, D, E) -> (A, B, C, D, E)
- (A, B), (C, D, E) -> (A, B, C, D, E)
- (A, B, C), D -> (A, B, C, D)
- (A, B, C, D), E -> (A, B, C, D, E)
- (A, B, C, D, E), F -> (A, B, C, D, E, F)
- A, Unit -> A
- Unit, A -> A
- trait Tupler1 extends AnyRef
- trait Tupler2 extends Tupler1
- trait Tupler3 extends Tupler2
- trait Tupler4 extends Tupler3 with TuplerAppend
- trait Tupler5 extends Tupler4
-
trait
TuplerAppend extends Tupler2
Generated trait that provides Tupler instances for appending to tuples from 3 to 21 elements
-
case class
Valid[+A](value: A) extends Validated[A] with Product with Serializable
A valid value of type
A
-
sealed
trait
Validated[+A] extends AnyRef
A validated value of type
A
can either beValid
orInvalid
A validated value of type
A
can either beValid
orInvalid
- A
Type of the validated value