Packages

abstract class Fold[S, A] extends Serializable

A Fold can be seen as a Getter with many targets or a weaker PTraversal which cannot modify its target.

Fold is on the top of the Optic hierarchy which means that Getter, PTraversal, POptional, PLens, PPrism and PIso are valid Fold

S

the source of a Fold

A

the target of a Fold

Self Type
Fold[S, A]
Source
Fold.scala
Linear Supertypes
Serializable, AnyRef, Any
Type Hierarchy
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. Fold
  2. Serializable
  3. AnyRef
  4. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Instance Constructors

  1. new Fold()

Abstract Value Members

  1. abstract def foldMap[M](f: (A) => M)(s: S)(implicit arg0: Monoid[M]): M

    map each target to a Monoid and combine the results underlying representation of Fold, all Fold methods are defined in terms of foldMap

Concrete Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##: Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. final def ^<->[B, C, D](other: PIso[A, B, C, D]): Fold[S, C]

    alias to composeIso

    alias to composeIso

    Annotations
    @inline()
  5. final def ^<-?[B, C, D](other: PPrism[A, B, C, D]): Fold[S, C]

    alias to composePrism

    alias to composePrism

    Annotations
    @inline()
  6. final def ^|->[B, C, D](other: PLens[A, B, C, D]): Fold[S, C]

    alias to composeLens

    alias to composeLens

    Annotations
    @inline()
  7. final def ^|->>[B, C, D](other: PTraversal[A, B, C, D]): Fold[S, C]

    alias to composeTraversal

    alias to composeTraversal

    Annotations
    @inline()
  8. final def ^|-?[B, C, D](other: POptional[A, B, C, D]): Fold[S, C]

    alias to composeOptional

    alias to composeOptional

    Annotations
    @inline()
  9. final def all(p: (A) => Boolean): (S) => Boolean

    check if all targets satisfy the predicate

    check if all targets satisfy the predicate

    Annotations
    @inline()
  10. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  11. final def choice[S1](other: Fold[S1, A]): Fold[Either[S, S1], A]

    join two Fold with the same target

    join two Fold with the same target

    Annotations
    @inline()
  12. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @native()
  13. final def composeFold[B](other: Fold[A, B]): Fold[S, B]

    compose a Fold with a Fold

    compose a Fold with a Fold

    Annotations
    @inline()
  14. final def composeGetter[C](other: Getter[A, C]): Fold[S, C]

    compose a Fold with a Getter

    compose a Fold with a Getter

    Annotations
    @inline()
  15. final def composeIso[B, C, D](other: PIso[A, B, C, D]): Fold[S, C]

    compose a Fold with a PIso

    compose a Fold with a PIso

    Annotations
    @inline()
  16. final def composeLens[B, C, D](other: PLens[A, B, C, D]): Fold[S, C]

    compose a Fold with a PLens

    compose a Fold with a PLens

    Annotations
    @inline()
  17. final def composeOptional[B, C, D](other: POptional[A, B, C, D]): Fold[S, C]

    compose a Fold with a POptional

    compose a Fold with a POptional

    Annotations
    @inline()
  18. final def composePrism[B, C, D](other: PPrism[A, B, C, D]): Fold[S, C]

    compose a Fold with a PPrism

    compose a Fold with a PPrism

    Annotations
    @inline()
  19. final def composeTraversal[B, C, D](other: PTraversal[A, B, C, D]): Fold[S, C]

    compose a Fold with a PTraversal

    compose a Fold with a PTraversal

    Annotations
    @inline()
  20. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  21. def equals(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef → Any
  22. final def exist(p: (A) => Boolean): (S) => Boolean

    check if at least one target satisfies the predicate

    check if at least one target satisfies the predicate

    Annotations
    @inline()
  23. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.Throwable])
  24. final def find(p: (A) => Boolean): (S) => Option[A]

    find the first target matching the predicate

    find the first target matching the predicate

    Annotations
    @inline()
  25. final def fold(s: S)(implicit ev: Monoid[A]): A

    combine all targets using a target's Monoid

    combine all targets using a target's Monoid

    Annotations
    @inline()
  26. final def getAll(s: S): List[A]

    get all the targets of a Fold

    get all the targets of a Fold

    Annotations
    @inline()
  27. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  28. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  29. final def headOption(s: S): Option[A]

    get the first target

    get the first target

    Annotations
    @inline()
  30. final def isEmpty(s: S): Boolean

    check if there is no target

    check if there is no target

    Annotations
    @inline()
  31. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  32. final def lastOption(s: S): Option[A]

    get the last target

    get the last target

    Annotations
    @inline()
  33. final def left[C]: Fold[Either[S, C], Either[A, C]]
    Annotations
    @inline()
  34. final def length(s: S): Int

    calculate the number of targets

    calculate the number of targets

    Annotations
    @inline()
  35. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  36. final def nonEmpty(s: S): Boolean

    check if there is at least one target

    check if there is at least one target

    Annotations
    @inline()
  37. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  38. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  39. final def right[C]: Fold[Either[C, S], Either[C, A]]
    Annotations
    @inline()
  40. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  41. def toString(): String
    Definition Classes
    AnyRef → Any
  42. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  43. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  44. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException]) @native()

Inherited from Serializable

Inherited from AnyRef

Inherited from Any

Ungrouped