Packages

t

data.validation

ApplicativeAlgebra

trait ApplicativeAlgebra[F[_], E] extends Algebra[F]

Encode valid/invalid via an ApplicativeError and failure via an E.

Linear Supertypes
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. ApplicativeAlgebra
  2. Algebra
  3. AnyRef
  4. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Type Members

  1. trait Logic extends AnyRef

    Since we can fail and succeed, add logic support.

    Since we can fail and succeed, add logic support. This is really a Semigroup "combine" for a specific logic operation. Explicitly use or create an import for them as needed. We could defined an isValid type method in this trait but that's a bit of a code smell that we are using procedural logic and we can use these semigroups in other places and algorithms.

    Definition Classes
    Algebra

Abstract Value Members

  1. implicit abstract val A: ApplicativeError[F, E]
  2. abstract def failure[I](message: (I) => String): Validator[F, I, I]

    Create an E potentially with the value and a message if E supports string messages, which it may not.

  3. abstract val logic: Logic
    Definition Classes
    Algebra

Concrete Value Members

  1. def apply[I, O](implicit validator: Validator[F, I, O]): Validator[F, I, O]
    Definition Classes
    Algebra
  2. def fail[I]: Validator[F, I, I]
    Definition Classes
    ApplicativeAlgebraAlgebra
  3. def pure[I, O](f: (I) => F[O]): Validator[F, I, O]
    Definition Classes
    Algebra
  4. def succeed[I]: Validator[F, I, I]
    Definition Classes
    ApplicativeAlgebraAlgebra