Class Traversal<S,​A>


  • public final class Traversal<S,​A>
    extends PTraversal<S,​S,​A,​A>
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      Setter<S,​A> asSetter()
      view a Traversal as a Setter
      static <S> Traversal<Either<S,​S>,​S> codiagonal()  
      <C> Setter<S,​C> composeSetter​(Setter<A,​C> other)
      compose a Traversal with a Setter
      <C> Traversal<S,​C> composeTraversal​(Traversal<A,​C> other)
      compose a Traversal with a Traversal
      <M> java.util.function.Function<S,​M> foldMap​(Monoid<M> monoid, java.util.function.Function<A,​M> f)
      map each target to a Monoid and combine the results
      static <S> Traversal<S,​S> id()  
      <L> java.util.function.Function<S,​Either<L,​S>> modifyEitherF​(java.util.function.Function<A,​Either<L,​A>> f)
      modify polymorphically the target of a PTraversal with an Applicative function
      <C> java.util.function.Function<S,​java.util.function.Function<C,​S>> modifyFunctionF​(java.util.function.Function<A,​java.util.function.Function<C,​A>> f)
      modify polymorphically the target of a PTraversal with an Applicative function
      java.util.function.Function<S,​java.lang.Iterable<S>> modifyIterableF​(java.util.function.Function<A,​java.lang.Iterable<A>> f)
      modify polymorphically the target of a PTraversal with an Applicative function
      java.util.function.Function<S,​Option<S>> modifyOptionF​(java.util.function.Function<A,​Option<A>> f)
      modify polymorphically the target of a PTraversal with an Applicative function
      java.util.function.Function<S,​Pair<S,​S>> modifyPairF​(java.util.function.Function<A,​Pair<A,​A>> f)
      modify polymorphically the target of a PTraversal with an Applicative function
      java.util.function.Function<S,​java.util.function.Supplier<S>> modifySupplierF​(java.util.function.Function<A,​java.util.function.Supplier<A>> f)
      modify polymorphically the target of a PTraversal with an Applicative function
      <S1> Traversal<Either<S,​S1>,​A> sum​(Traversal<S1,​A> other)
      join two Traversal with the same target
      static <S,​A>
      Traversal<S,​A>
      traversal​(java.util.function.Function<S,​A> get1, java.util.function.Function<S,​A> get2, java.util.function.BiFunction<A,​A,​java.util.function.Function<S,​S>> set)  
      static <S,​A>
      Traversal<S,​A>
      traversal​(java.util.function.Function<S,​A> get1, java.util.function.Function<S,​A> get2, java.util.function.Function<S,​A> get3, java.util.function.Function<A,​java.util.function.Function<A,​java.util.function.Function<A,​java.util.function.Function<S,​S>>>> set)  
      static <S,​A>
      Traversal<S,​A>
      traversal​(java.util.function.Function<S,​A> get1, java.util.function.Function<S,​A> get2, java.util.function.Function<S,​A> get3, java.util.function.Function<S,​A> get4, java.util.function.Function<A,​java.util.function.Function<A,​java.util.function.Function<A,​java.util.function.Function<A,​java.util.function.Function<S,​S>>>>> set)  
      static <S,​A>
      Traversal<S,​A>
      traversal​(java.util.function.Function<S,​A> get1, java.util.function.Function<S,​A> get2, java.util.function.Function<S,​A> get3, java.util.function.Function<S,​A> get4, java.util.function.Function<S,​A> get5, java.util.function.Function<A,​java.util.function.Function<A,​java.util.function.Function<A,​java.util.function.Function<A,​java.util.function.Function<A,​java.util.function.Function<S,​S>>>>>> set)  
      static <S,​A>
      Traversal<S,​A>
      traversal​(java.util.function.Function<S,​A> get1, java.util.function.Function<S,​A> get2, java.util.function.Function<S,​A> get3, java.util.function.Function<S,​A> get4, java.util.function.Function<S,​A> get5, java.util.function.Function<S,​A> get6, java.util.function.Function<A,​java.util.function.Function<A,​java.util.function.Function<A,​java.util.function.Function<A,​java.util.function.Function<A,​java.util.function.Function<A,​java.util.function.Function<S,​S>>>>>>> set)  
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • Traversal

        public Traversal​(PTraversal<S,​S,​A,​A> pTraversal)
    • Method Detail

      • modifyFunctionF

        public <C> java.util.function.Function<S,​java.util.function.Function<C,​S>> modifyFunctionF​(java.util.function.Function<A,​java.util.function.Function<C,​A>> f)
        Description copied from class: PTraversal
        modify polymorphically the target of a PTraversal with an Applicative function
        Specified by:
        modifyFunctionF in class PTraversal<S,​S,​A,​A>
      • modifyEitherF

        public <L> java.util.function.Function<S,​Either<L,​S>> modifyEitherF​(java.util.function.Function<A,​Either<L,​A>> f)
        Description copied from class: PTraversal
        modify polymorphically the target of a PTraversal with an Applicative function
        Specified by:
        modifyEitherF in class PTraversal<S,​S,​A,​A>
      • modifyOptionF

        public java.util.function.Function<S,​Option<S>> modifyOptionF​(java.util.function.Function<A,​Option<A>> f)
        Description copied from class: PTraversal
        modify polymorphically the target of a PTraversal with an Applicative function
        Specified by:
        modifyOptionF in class PTraversal<S,​S,​A,​A>
      • modifyIterableF

        public java.util.function.Function<S,​java.lang.Iterable<S>> modifyIterableF​(java.util.function.Function<A,​java.lang.Iterable<A>> f)
        Description copied from class: PTraversal
        modify polymorphically the target of a PTraversal with an Applicative function
        Specified by:
        modifyIterableF in class PTraversal<S,​S,​A,​A>
      • modifySupplierF

        public java.util.function.Function<S,​java.util.function.Supplier<S>> modifySupplierF​(java.util.function.Function<A,​java.util.function.Supplier<A>> f)
        Description copied from class: PTraversal
        modify polymorphically the target of a PTraversal with an Applicative function
        Specified by:
        modifySupplierF in class PTraversal<S,​S,​A,​A>
      • modifyPairF

        public java.util.function.Function<S,​Pair<S,​S>> modifyPairF​(java.util.function.Function<A,​Pair<A,​A>> f)
        Description copied from class: PTraversal
        modify polymorphically the target of a PTraversal with an Applicative function
        Specified by:
        modifyPairF in class PTraversal<S,​S,​A,​A>
      • foldMap

        public <M> java.util.function.Function<S,​M> foldMap​(Monoid<M> monoid,
                                                                  java.util.function.Function<A,​M> f)
        Description copied from class: PTraversal
        map each target to a Monoid and combine the results
        Specified by:
        foldMap in class PTraversal<S,​S,​A,​A>
      • id

        public static <S> Traversal<S,​S> id()
      • codiagonal

        public static <S> Traversal<Either<S,​S>,​S> codiagonal()
      • traversal

        public static <S,​A> Traversal<S,​A> traversal​(java.util.function.Function<S,​A> get1,
                                                                 java.util.function.Function<S,​A> get2,
                                                                 java.util.function.BiFunction<A,​A,​java.util.function.Function<S,​S>> set)
      • traversal

        public static <S,​A> Traversal<S,​A> traversal​(java.util.function.Function<S,​A> get1,
                                                                 java.util.function.Function<S,​A> get2,
                                                                 java.util.function.Function<S,​A> get3,
                                                                 java.util.function.Function<A,​java.util.function.Function<A,​java.util.function.Function<A,​java.util.function.Function<S,​S>>>> set)
      • traversal

        public static <S,​A> Traversal<S,​A> traversal​(java.util.function.Function<S,​A> get1,
                                                                 java.util.function.Function<S,​A> get2,
                                                                 java.util.function.Function<S,​A> get3,
                                                                 java.util.function.Function<S,​A> get4,
                                                                 java.util.function.Function<A,​java.util.function.Function<A,​java.util.function.Function<A,​java.util.function.Function<A,​java.util.function.Function<S,​S>>>>> set)
      • traversal

        public static <S,​A> Traversal<S,​A> traversal​(java.util.function.Function<S,​A> get1,
                                                                 java.util.function.Function<S,​A> get2,
                                                                 java.util.function.Function<S,​A> get3,
                                                                 java.util.function.Function<S,​A> get4,
                                                                 java.util.function.Function<S,​A> get5,
                                                                 java.util.function.Function<A,​java.util.function.Function<A,​java.util.function.Function<A,​java.util.function.Function<A,​java.util.function.Function<A,​java.util.function.Function<S,​S>>>>>> set)
      • traversal

        public static <S,​A> Traversal<S,​A> traversal​(java.util.function.Function<S,​A> get1,
                                                                 java.util.function.Function<S,​A> get2,
                                                                 java.util.function.Function<S,​A> get3,
                                                                 java.util.function.Function<S,​A> get4,
                                                                 java.util.function.Function<S,​A> get5,
                                                                 java.util.function.Function<S,​A> get6,
                                                                 java.util.function.Function<A,​java.util.function.Function<A,​java.util.function.Function<A,​java.util.function.Function<A,​java.util.function.Function<A,​java.util.function.Function<A,​java.util.function.Function<S,​S>>>>>>> set)