Package fj.data

Class Validation.FailProjection<E,​T>

  • All Implemented Interfaces:
    java.lang.Iterable<E>
    Enclosing class:
    Validation<E,​T>

    public static final class Validation.FailProjection<E,​T>
    extends java.lang.Object
    implements java.lang.Iterable<E>
    A failing projection of a validation.
    • Field Summary

      Fields 
      Modifier and Type Field Description
      private Validation<E,​T> v  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      <A> Validation<A,​T> apply​(Validation<F<E,​A>,​T> v)
      Function application on the failing value.
      <A> Validation<A,​T> bind​(F<E,​Validation<A,​T>> f)
      Binds the given function across this validation's failing value if it has one.
      boolean exists​(F<E,​java.lang.Boolean> f)
      Returns false if this is a success or returns the result of the application of the given function to the failing value.
      E failE​(F0<java.lang.String> err)
      Returns the failing value or fails with the given error message.
      E failE​(java.lang.String err)
      Returns the failing value or fails with the given error message.
      <A> Option<Validation<E,​A>> filter​(F<E,​java.lang.Boolean> f)
      Returns None if this is a success or if the given predicate p does not hold for the failing value, otherwise, returns a fail in Some.
      boolean forall​(F<E,​java.lang.Boolean> f)
      Returns true if this is a success or returns the result of the application of the given function to the failing value.
      Unit foreach​(F<E,​Unit> f)
      Executes a side-effect on the failing value if there is one.
      void foreachDoEffect​(Effect1<E> f)
      Executes a side-effect on the failing value if there is one.
      java.util.Iterator<E> iterator()
      Returns an iterator for this projection.
      <A> Validation<A,​T> map​(F<E,​A> f)
      Maps the given function across the failing side of this validation.
      E on​(F<T,​E> f)
      The failing value or the application of the given function to the success value.
      E orFail​(E e)
      Returns the failing value or the given value.
      E orFail​(F0<E> e)
      Returns the failing value or the given value.
      <A> Validation<A,​T> sequence​(Validation<A,​T> v)
      Performs a bind across the validation, but ignores the element value in the function.
      Array<E> toArray()
      Returns a single element array if this is a failing value, otherwise an empty list.
      List<E> toList()
      Returns a single element list if this is a failing value, otherwise an empty list.
      Option<E> toOption()
      Returns the failing value in Some if there is one, otherwise None.
      Stream<E> toStream()
      Returns a single element stream if this is a failing value, otherwise an empty list.
      Validation<E,​T> validation()
      Returns the underlying validation.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
      • Methods inherited from interface java.lang.Iterable

        forEach, spliterator
    • Constructor Detail

      • FailProjection

        private FailProjection​(Validation<E,​T> v)
    • Method Detail

      • validation

        public Validation<E,​T> validation()
        Returns the underlying validation.
        Returns:
        The underlying validation.
      • failE

        public E failE​(F0<java.lang.String> err)
        Returns the failing value or fails with the given error message.
        Parameters:
        err - The error message to fail with.
        Returns:
        The failing value.
      • failE

        public E failE​(java.lang.String err)
        Returns the failing value or fails with the given error message.
        Parameters:
        err - The error message to fail with.
        Returns:
        The failing value.
      • orFail

        public E orFail​(F0<E> e)
        Returns the failing value or the given value.
        Parameters:
        e - The value to return if this is success.
        Returns:
        The failing value or the given value.
      • orFail

        public E orFail​(E e)
        Returns the failing value or the given value.
        Parameters:
        e - The value to return if this is success.
        Returns:
        The failing value or the given value.
      • on

        public E on​(F<T,​E> f)
        The failing value or the application of the given function to the success value.
        Parameters:
        f - The function to execute on the success value.
        Returns:
        The failing value or the application of the given function to the success value.
      • foreach

        public Unit foreach​(F<E,​Unit> f)
        Executes a side-effect on the failing value if there is one.
        Parameters:
        f - The side-effect to execute.
        Returns:
        The unit value.
      • foreachDoEffect

        public void foreachDoEffect​(Effect1<E> f)
        Executes a side-effect on the failing value if there is one.
        Parameters:
        f - The side-effect to execute.
      • map

        public <A> Validation<A,​T> map​(F<E,​A> f)
        Maps the given function across the failing side of this validation.
        Parameters:
        f - The function to map.
        Returns:
        A new validation with the function mapped.
      • bind

        public <A> Validation<A,​T> bind​(F<E,​Validation<A,​T>> f)
        Binds the given function across this validation's failing value if it has one.
        Parameters:
        f - The function to bind across this validation.
        Returns:
        A new validation value after binding.
      • sequence

        public <A> Validation<A,​T> sequence​(Validation<A,​T> v)
        Performs a bind across the validation, but ignores the element value in the function.
        Parameters:
        v - The validation value to apply in the final join.
        Returns:
        A new validation value after the final join.
      • filter

        public <A> Option<Validation<E,​A>> filter​(F<E,​java.lang.Boolean> f)
        Returns None if this is a success or if the given predicate p does not hold for the failing value, otherwise, returns a fail in Some.
        Parameters:
        f - The predicate function to test on this failing value.
        Returns:
        None if this is a success or if the given predicate p does not hold for the failing value, otherwise, returns a fail in Some.
      • apply

        public <A> Validation<A,​T> apply​(Validation<F<E,​A>,​T> v)
        Function application on the failing value.
        Parameters:
        v - The validation of the function to apply on the failing value.
        Returns:
        The result of function application in validation.
      • forall

        public boolean forall​(F<E,​java.lang.Boolean> f)
        Returns true if this is a success or returns the result of the application of the given function to the failing value.
        Parameters:
        f - The predicate function to test on this failing value.
        Returns:
        true if this is a success or returns the result of the application of the given function to the failing value.
      • exists

        public boolean exists​(F<E,​java.lang.Boolean> f)
        Returns false if this is a success or returns the result of the application of the given function to the failing value.
        Parameters:
        f - The predicate function to test on this failing value.
        Returns:
        false if this is a success or returns the result of the application of the given function to the failing value.
      • toList

        public List<E> toList()
        Returns a single element list if this is a failing value, otherwise an empty list.
        Returns:
        A single element list if this is a failing value, otherwise an empty list.
      • toOption

        public Option<E> toOption()
        Returns the failing value in Some if there is one, otherwise None.
        Returns:
        The failing value in Some if there is one, otherwise None.
      • toArray

        public Array<E> toArray()
        Returns a single element array if this is a failing value, otherwise an empty list.
        Returns:
        A single element array if this is a failing value, otherwise an empty list.
      • toStream

        public Stream<E> toStream()
        Returns a single element stream if this is a failing value, otherwise an empty list.
        Returns:
        A single element stream if this is a failing value, otherwise an empty list.
      • iterator

        public java.util.Iterator<E> iterator()
        Returns an iterator for this projection. This method exists to permit the use in a for-each loop.
        Specified by:
        iterator in interface java.lang.Iterable<E>
        Returns:
        A iterator for this projection.