Packages

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. Protected

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##: Int
    Definition Classes
    AnyRef → Any
  3. final def &>[W1 >: W, E1 >: E, B](that: ZValidation[W1, E1, B]): ZValidation[W1, E1, B]

    A symbolic alias for zipParRight.

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

    A symbolic alias for zipParLeft.

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

    A symbolic alias for zipPar.

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

    A symbolic alias for log.

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

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

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

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

  10. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  11. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @native()
  12. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  13. final def equals(that: Any): Boolean

    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
    Attributes
    protected[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]

    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]

    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

    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]]

    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

    Returns the value, because no error has occurred.

  20. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  21. final def getLog: Chunk[W]

    Returns the value of the log.

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

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

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

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

  24. final def hashCode(): Int
    Definition Classes
    ZValidation → AnyRef → Any
  25. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  26. final def log[W1 >: W](w1: W1): ZValidation[W1, E, A]

    Writes an entry to the log.

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

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

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

    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]

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

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

    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]

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

  32. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  33. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  34. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  35. final def orElse[W1 >: W, E1, A1 >: A](that: ZValidation[W1, E1, A1]): ZValidation[W1, E1, A1]
  36. final def orElseLog[W1 >: W, E1, A1 >: A](that: ZValidation[W1, E1, A1])(implicit ev: <:<[E, W1]): ZValidation[W1, E1, A1]
  37. final def runLog[B]: (Chunk[W], Either[NonEmptyChunk[E], A])

    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
    Definition Classes
    AnyRef
  39. final def toEither: Either[NonEmptyChunk[E], A]

    Transforms this ZValidation to an Either, discarding the log.

  40. final def toEitherAssociative[E1 >: E](implicit A: Associative[E1]): Either[E1, A]

    Transforms this ZValidation to an Either, aggregating errors using provided Associative instance, discarding the log.

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

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

  42. final def toEitherWith[E2](f: (NonEmptyChunk[E]) => E2): Either[E2, A]

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

  43. final def toOption: Option[A]

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

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

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

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

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

  47. final def toZIOAssociative[E1 >: E](implicit A: Associative[E1]): IO[E1, A]

    Transforms this ZValidation to an ZIO effect, aggregating errors using provided Associative instance, discarding the log.

  48. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  49. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  50. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException]) @native()
  51. final def zipPar[W1 >: W, E1 >: E, B](that: ZValidation[W1, E1, B]): ZValidation[W1, E1, (A, B)]

    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.

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

    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.

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

    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.

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

    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