Class/Object

monocle

Fold

Related Docs: object Fold | package monocle

Permalink

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]
Linear Supertypes
Serializable, Serializable, AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. Fold
  2. Serializable
  3. Serializable
  4. AnyRef
  5. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new Fold()

    Permalink

Abstract Value Members

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

    Permalink

    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

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

    Permalink
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  4. final def ^<->[B, C, D](other: PIso[A, B, C, D]): Fold[S, C]

    Permalink

    alias to composeIso

    alias to composeIso

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

    Permalink

    alias to composePrism

    alias to composePrism

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

    Permalink

    alias to composeLens

    alias to composeLens

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

    Permalink

    alias to composeTraversal

    alias to composeTraversal

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

    Permalink

    alias to composeOptional

    alias to composeOptional

    Annotations
    @inline()
  9. final def all(p: (A) ⇒ Boolean)(s: S): Boolean

    Permalink

    check if all targets satisfy the predicate

    check if all targets satisfy the predicate

    Annotations
    @inline()
  10. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  11. final def choice[S1](other: Fold[S1, A]): Fold[\/[S, S1], A]

    Permalink

    join two Fold with the same target

    join two Fold with the same target

    Annotations
    @inline()
  12. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  13. final def composeFold[B](other: Fold[A, B]): Fold[S, B]

    Permalink

    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]

    Permalink

    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]

    Permalink

    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]

    Permalink

    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]

    Permalink

    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]

    Permalink

    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]

    Permalink

    compose a Fold with a PTraversal

    compose a Fold with a PTraversal

    Annotations
    @inline()
  20. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  21. def equals(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  22. final def exist(p: (A) ⇒ Boolean)(s: S): Boolean

    Permalink

    check if at least one target satisfies the predicate

    check if at least one target satisfies the predicate

    Annotations
    @inline()
  23. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  24. final def find(p: (A) ⇒ Boolean)(s: S): Option[A]

    Permalink

    find the first target of a Fold matching the predicate

    find the first target of a Fold matching the predicate

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

    Permalink

    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]

    Permalink

    get all the targets of a Fold

    get all the targets of a Fold

    Annotations
    @inline()
  27. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  28. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  29. final def headOption(s: S): Option[A]

    Permalink

    get the first target of a Fold

    get the first target of a Fold

    Annotations
    @inline()
  30. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  31. final def left[C]: Fold[\/[S, C], \/[A, C]]

    Permalink
    Annotations
    @inline()
  32. final def length(s: S): Int

    Permalink

    calculate the number of targets

    calculate the number of targets

    Annotations
    @inline()
  33. final def ne(arg0: AnyRef): Boolean

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

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

    Permalink
    Definition Classes
    AnyRef
  36. final def right[C]: Fold[\/[C, S], \/[C, A]]

    Permalink
    Annotations
    @inline()
  37. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  38. def toString(): String

    Permalink
    Definition Classes
    AnyRef → Any
  39. final def wait(): Unit

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

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

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Deprecated Value Members

  1. final def sum[S1](other: Fold[S1, A]): Fold[\/[S, S1], A]

    Permalink
    Annotations
    @deprecated @inline()
    Deprecated

    (Since version 1.2.0) use choice

Inherited from Serializable

Inherited from Serializable

Inherited from AnyRef

Inherited from Any

Ungrouped