Trait/Object

zio.prelude

ZValidation

Related Docs: object ZValidation | package prelude

Permalink

sealed trait ZValidation[+W, +E, +A] extends AnyRef

ZValidation represents either a success of type A or a collection of one or more errors of type E along with in either case a log with entries of type W. Unlike Either, ZValidation does not "short circuit" on failures and instead allows accumulating multiple errors. This can be particularly useful in validating data, where we want to attempt to validate all of the data and retain information about all errors that arose, rather than failing at the first error.

Self Type
ZValidation[W, E, A]
Linear Supertypes
Known Subclasses
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. ZValidation
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Value Members

  1. final def !=(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  3. final def &>[W1 >: W, E1 >: E, B](that: ZValidation[W1, E1, B]): ZValidation[W1, E1, B]

    Permalink

    A symbolic alias for zipParRight.

  4. final def <&[W1 >: W, E1 >: E, B](that: ZValidation[W1, E1, B]): ZValidation[W1, E1, A]

    Permalink

    A symbolic alias for zipParLeft.

  5. final def <&>[W1 >: W, E1 >: E, B](that: ZValidation[W1, E1, B]): ZValidation[W1, E1, (A, B)]

    Permalink

    A symbolic alias for zipPar.

  6. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  7. final def ??[W1 >: W](w1: W1): ZValidation[W1, E, A]

    Permalink

    A symbolic alias for log.

  8. final def as[B](b: B): ZValidation[W, E, B]

    Permalink

    Maps the successful value of this ZValidation to the specified constant value.

  9. final def asError[E2](e: E2): ZValidation[W, E2, A]

    Permalink

    Maps the error value of this ZValidation to the specified constant value.

  10. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  11. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  12. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  13. final def equals(that: Any): Boolean

    Permalink

    Returns whether this ZValidation and the specified ZValidation are equal to each other.

    Returns whether this ZValidation and the specified ZValidation are equal to each other.

    Definition Classes
    ZValidation → AnyRef → Any
  14. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  15. final def flatMap[W1 >: W, E1 >: E, B](f: (A) ⇒ ZValidation[W1, E1, B]): ZValidation[W1, E1, B]

    Permalink

    Transforms the value of this ZValidation with the specified validation function if it is a success or returns the value unchanged otherwise.

  16. final def flatten[W1 >: W, E1 >: E, B](implicit ev1: <:<[A, ZValidation[W1, E1, B]]): ZValidation[W1, E1, B]

    Permalink

    Returns a ZValidation that is this ZValidation if failing or the inner ZValidation if the outer one succeeds.

    Returns a ZValidation that is this ZValidation if failing or the inner ZValidation if the outer one succeeds. In particular, the sequential aspect of this combinator precludes combining error values of outer and inner ZValidations. This method can be used to "flatten" nested ZValidation.

  17. final def fold[B](failure: (NonEmptyChunk[E]) ⇒ B, success: (A) ⇒ B): B

    Permalink

    Folds over the error and success values of this ZValidation.

  18. final def forEach[F[+_], B](f: (A) ⇒ F[B])(implicit arg0: IdentityBoth[F], arg1: Covariant[F]): F[ZValidation[W, E, B]]

    Permalink

    Transforms the value of this ZValidation with the specified effectual function if it is a success or returns the value unchanged otherwise.

  19. final def get(implicit ev: <:<[E, Nothing]): A

    Permalink

    Returns the value, because no error has occurred.

  20. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  21. final def getLog: Chunk[W]

    Permalink

    Returns the value of the log.

  22. final def getOrElse[A1 >: A](fallback: ⇒ A1): A1

    Permalink

    Returns the value, if successful, or the provided fallback value.

  23. final def getOrElseWith[A1 >: A](f: (NonEmptyChunk[E]) ⇒ A1): A1

    Permalink

    Returns the successful value or handles the errors that have accumulated.

  24. final def hashCode(): Int

    Permalink
    Definition Classes
    ZValidation → AnyRef → Any
  25. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  26. final def log[W1 >: W](w1: W1): ZValidation[W1, E, A]

    Permalink

    Writes an entry to the log.

  27. final def map[B](f: (A) ⇒ B): ZValidation[W, E, B]

    Permalink

    Transforms the successful value of this ZValidation with the specified function.

  28. final def mapError[E2](f: (E) ⇒ E2): ZValidation[W, E2, A]

    Permalink

    Transforms the error value of this ZValidation with the specified function.

  29. final def mapErrorAll[E2](f: (NonEmptyChunk[E]) ⇒ NonEmptyChunk[E2]): ZValidation[W, E2, A]

    Permalink

    Transforms all the error values of this ZValidation with the specified function.

  30. final def mapLog[W2](f: (W) ⇒ W2): ZValidation[W2, E, A]

    Permalink

    Transforms the log entries of this ZValidation with the specified function.

  31. final def mapLogAll[W2](f: (Chunk[W]) ⇒ Chunk[W2]): ZValidation[W2, E, A]

    Permalink

    Transforms all the log entries of this ZValidation with the specified function.

  32. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  33. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
  34. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
  35. final def orElse[W1 >: W, E1, A1 >: A](that: ZValidation[W1, E1, A1]): ZValidation[W1, E1, A1]

    Permalink
  36. final def orElseLog[W1 >: W, E1, A1 >: A](that: ZValidation[W1, E1, A1])(implicit ev: <:<[E, W1]): ZValidation[W1, E1, A1]

    Permalink
  37. final def runLog[B]: (Chunk[W], Either[NonEmptyChunk[E], A])

    Permalink

    Exposes the result of this validation function as either a Right with a success of type A or a Left with one or more errors of type E, along with the log.

  38. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  39. final def toEither: Either[NonEmptyChunk[E], A]

    Permalink

    Transforms this ZValidation to an Either, discarding the log.

  40. final def toEitherMultiSet: Either[NonEmptyMultiSet[E], A]

    Permalink

    Transforms this ZValidation to an Either, discarding the order in which the errors occurred and discarding the log.

  41. final def toEitherWith[E2](f: (NonEmptyChunk[E]) ⇒ E2): Either[E2, A]

    Permalink

    Transforms this ZValidation to an Either, transforming the accumulated errors and discarding the log.

  42. final def toOption: Option[A]

    Permalink

    Transforms this ZValidation to an Option, discarding information about the errors and log.

  43. def toString(): String

    Permalink
    Definition Classes
    AnyRef → Any
  44. final def toTry(implicit ev: <:<[E, Throwable]): Try[A]

    Permalink

    Transforms this ZValidation to a Try, discarding all but the first error and the log.

  45. final def toZIO: IO[E, A]

    Permalink

    Converts this ZValidation into a ZIO effect, discarding the log.

  46. final def wait(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  47. final def wait(arg0: Long, arg1: Int): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  48. final def wait(arg0: Long): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  49. final def zipPar[W1 >: W, E1 >: E, B](that: ZValidation[W1, E1, B]): ZValidation[W1, E1, (A, B)]

    Permalink

    Combines this ZValidation with the specified ZValidation, returning a tuple of their results.

    Combines this ZValidation with the specified ZValidation, returning a tuple of their results. Returns either the combined result if both were successes or otherwise returns a failure with all errors.

  50. final def zipParLeft[W1 >: W, E1 >: E, B](that: ZValidation[W1, E1, B]): ZValidation[W1, E1, A]

    Permalink

    A variant of zipPar that keeps only the left success value, but returns a failure with all errors if either this ZValidation or the specified ZValidation fail.

  51. final def zipParRight[W1 >: W, E1 >: E, B](that: ZValidation[W1, E1, B]): ZValidation[W1, E1, B]

    Permalink

    A variant of zipPar that keeps only the right success value, but returns a failure with all errors if either this ZValidation or the specified ZValidation fail.

  52. final def zipWithPar[W1 >: W, E1 >: E, B, C](that: ZValidation[W1, E1, B])(f: (A, B) ⇒ C): ZValidation[W1, E1, C]

    Permalink

    Combines this ZValidation with the specified ZValidation, using the function f to combine their success values.

    Combines this ZValidation with the specified ZValidation, using the function f to combine their success values. Returns either the combined result if both were successes or otherwise returns a failure with all errors.

Inherited from AnyRef

Inherited from Any

Ungrouped