trait Foldable[F[_]] extends FoldableParent[F]
A type parameter implying the ability to extract zero or more values of that type.
- Self Type
- Foldable[F]
- Source
- Foldable.scala
- Alphabetic
- By Inheritance
- Foldable
- FoldableParent
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Type Members
- trait FoldableLaw extends AnyRef
Abstract Value Members
- abstract def foldMap[A, B](fa: F[A])(f: (A) => B)(implicit F: Monoid[B]): B
Map each element of the structure to a scalaz.Monoid, and combine the results.
- abstract def foldRight[A, B](fa: F[A], z: => B)(f: (A, => B) => B): B
Right-associative fold of a structure.
Concrete Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##(): Int
- Definition Classes
- AnyRef → Any
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- def all[A](fa: F[A])(p: (A) => Boolean): Boolean
Whether all
A
s infa
yield true fromp
. - def allM[G[_], A](fa: F[A])(p: (A) => G[Boolean])(implicit G: Monad[G]): G[Boolean]
all
with monadic traversal. - def any[A](fa: F[A])(p: (A) => Boolean): Boolean
Whether any
A
s infa
yield true fromp
. - def anyM[G[_], A](fa: F[A])(p: (A) => G[Boolean])(implicit G: Monad[G]): G[Boolean]
any
with monadic traversal. - final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def bicompose[G[_, _]](implicit arg0: Bifoldable[G]): Bifoldable[[α, β]F[G[α, β]]]
The composition of Foldable
F
and BifoldableG
,[x, y]F[G[x, y]]
, is a Bifoldable - def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native()
- def collapse[X[_], A](x: F[A])(implicit A: ApplicativePlus[X]): X[A]
- def compose[G[_]](implicit G0: Foldable[G]): Foldable[[α]F[G[α]]]
The composition of Foldables
F
andG
,[x]F[G[x]]
, is a Foldable - final def count[A](fa: F[A]): Int
Alias for
length
. - def distinct[A](fa: F[A])(implicit A: Order[A]): IList[A]
complexityO(n log n)
- def distinctBy[A, B](fa: F[A])(f: (A) => B)(implicit arg0: Equal[B]): IList[A]
- Definition Classes
- FoldableParent
- def distinctE[A](fa: F[A])(implicit A: Equal[A]): IList[A]
complexityO(n2)
- def element[A](fa: F[A], a: A)(implicit arg0: Equal[A]): Boolean
Whether
a
is an element offa
. - def empty[A](fa: F[A]): Boolean
Deforested alias for
toStream(fa).isEmpty
. - final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- def extrema[A](fa: F[A])(implicit arg0: Order[A]): Option[(A, A)]
The smallest and largest elements of
fa
or None iffa
is emptyThe smallest and largest elements of
fa
or None iffa
is empty- Definition Classes
- FoldableParent
- def extremaBy[A, B](fa: F[A])(f: (A) => B)(implicit arg0: Order[B]): Option[(A, A)]
The elements (amin, amax) of
fa
which yield the smallest and largest values off(a)
, respectively, or None iffa
is emptyThe elements (amin, amax) of
fa
which yield the smallest and largest values off(a)
, respectively, or None iffa
is empty- Definition Classes
- FoldableParent
- def extremaOf[A, B](fa: F[A])(f: (A) => B)(implicit arg0: Order[B]): Option[(B, B)]
The smallest and largest values of
f(a)
for each elementa
offa
, or None iffa
is emptyThe smallest and largest values of
f(a)
for each elementa
offa
, or None iffa
is empty- Definition Classes
- FoldableParent
- def filterLength[A](fa: F[A])(f: (A) => Boolean): Int
- Definition Classes
- FoldableParent
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable])
- def findLeft[A](fa: F[A])(f: (A) => Boolean): Option[A]
- final def findMapM[M[_], A, B](fa: F[A])(f: (A) => M[Option[B]])(implicit arg0: Monad[M]): M[Option[B]]
map elements in a Foldable with a monadic function and return the first element that is mapped successfully
- def findRight[A](fa: F[A])(f: (A) => Boolean): Option[A]
- def fold[M](t: F[M])(implicit arg0: Monoid[M]): M
Combine the elements of a structure using a monoid.
- def fold1Opt[A](fa: F[A])(implicit arg0: Semigroup[A]): Option[A]
Like
fold
but returningNone
if the foldable is empty andSome
otherwiseLike
fold
but returningNone
if the foldable is empty andSome
otherwise- Definition Classes
- FoldableParent
- def foldLeft[A, B](fa: F[A], z: B)(f: (B, A) => B): B
Left-associative fold of a structure.
- def foldLeft1Opt[A](fa: F[A])(f: (A, A) => A): Option[A]
- def foldLeftM[G[_], A, B](fa: F[A], z: B)(f: (B, A) => G[B])(implicit M: Monad[G]): G[B]
Left-associative, monadic fold of a structure.
- def foldMap1Opt[A, B](fa: F[A])(f: (A) => B)(implicit F: Semigroup[B]): Option[B]
As
foldMap
but returningNone
if the foldable is empty andSome
otherwise - def foldMapLeft1Opt[A, B](fa: F[A])(z: (A) => B)(f: (B, A) => B): Option[B]
- def foldMapM[G[_], A, B](fa: F[A])(f: (A) => G[B])(implicit B: Monoid[B], G: Monad[G]): G[B]
Specialization of foldRightM when
B
has aMonoid
. - def foldMapRight1Opt[A, B](fa: F[A])(z: (A) => B)(f: (A, => B) => B): Option[B]
- def foldRight1Opt[A](fa: F[A])(f: (A, => A) => A): Option[A]
- def foldRightM[G[_], A, B](fa: F[A], z: => B)(f: (A, => B) => G[B])(implicit M: Monad[G]): G[B]
Right-associative, monadic fold of a structure.
- def foldableLaw: FoldableLaw
- val foldableSyntax: FoldableSyntax[F]
- final def foldl[A, B](fa: F[A], z: B)(f: (B) => (A) => B): B
Curried version of
foldLeft
- def foldl1Opt[A](fa: F[A])(f: (A) => (A) => A): Option[A]
- final def foldlM[G[_], A, B](fa: F[A], z: => B)(f: (B) => (A) => G[B])(implicit M: Monad[G]): G[B]
Curried version of
foldLeftM
- final def foldr[A, B](fa: F[A], z: => B)(f: (A) => (=> B) => B): B
Curried version of
foldRight
- def foldr1Opt[A](fa: F[A])(f: (A) => (=> A) => A): Option[A]
- final def foldrM[G[_], A, B](fa: F[A], z: => B)(f: (A) => (=> B) => G[B])(implicit M: Monad[G]): G[B]
Curried version of
foldRightM
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- def index[A](fa: F[A], i: Int): Option[A]
- returns
the element at index
i
in aSome
, orNone
if the given index falls outside of the range
- def indexOr[A](fa: F[A], default: => A, i: Int): A
- returns
the element at index
i
, ordefault
if the given index falls outside of the range
- def intercalate[A](fa: F[A], a: A)(implicit A: Monoid[A]): A
Insert an
A
between every A, yielding the sum. - final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- def length[A](fa: F[A]): Int
Deforested alias for
toStream(fa).size
. - def longDigits[A](fa: F[A])(implicit d: <:<[A, Digit]): Long
- def maximum[A](fa: F[A])(implicit arg0: Order[A]): Option[A]
The greatest element of
fa
, or None iffa
is empty. - def maximumBy[A, B](fa: F[A])(f: (A) => B)(implicit arg0: Order[B]): Option[A]
The element
a
offa
which yields the greatest value off(a)
, or None iffa
is empty. - def maximumOf[A, B](fa: F[A])(f: (A) => B)(implicit arg0: Order[B]): Option[B]
The greatest value of
f(a)
for each elementa
offa
, or None iffa
is empty. - def minimum[A](fa: F[A])(implicit arg0: Order[A]): Option[A]
The smallest element of
fa
, or None iffa
is empty. - def minimumBy[A, B](fa: F[A])(f: (A) => B)(implicit arg0: Order[B]): Option[A]
The element
a
offa
which yields the smallest value off(a)
, or None iffa
is empty. - def minimumOf[A, B](fa: F[A])(f: (A) => B)(implicit arg0: Order[B]): Option[B]
The smallest value of
f(a)
for each elementa
offa
, or None iffa
is empty. - def msuml[G[_], A](fa: F[G[A]])(implicit G: PlusEmpty[G]): G[A]
- def msumlU[GA](fa: F[GA])(implicit G: Unapply[PlusEmpty, GA]): M[A]
- Definition Classes
- FoldableParent
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- def product[G[_]](implicit G0: Foldable[G]): Foldable[[α](F[α], G[α])]
The product of Foldables
F
andG
,[x](F[x], G[x]])
, is a Foldable - def product0[G[_]](implicit G0: Foldable1[G]): Foldable1[[α](F[α], G[α])]
The product of Foldable
F
and Foldable1G
,[x](F[x], G[x]])
, is a Foldable1 - def selectSplit[A](fa: F[A])(p: (A) => Boolean): List[NonEmptyList[A]]
Selects groups of elements that satisfy p and discards others.
- def sequenceF_[M[_], A](ffa: F[Free[M, A]]): Free[M, Unit]
sequence_
for Free.sequence_
for Free. collapses into a single Free * - def sequenceS_[S, A](fga: F[State[S, A]]): State[S, Unit]
sequence_
specialized toState
* - def sequence_[M[_], A](fa: F[M[A]])(implicit a: Applicative[M]): M[Unit]
Strict sequencing in an applicative functor
M
that ignores the value infa
. - def splitBy[A, B](fa: F[A])(f: (A) => B)(implicit arg0: Equal[B]): IList[(B, NonEmptyList[A])]
Splits the elements into groups that produce the same result by a function f.
Splits the elements into groups that produce the same result by a function f.
- Definition Classes
- FoldableParent
- def splitByRelation[A](fa: F[A])(r: (A, A) => Boolean): IList[NonEmptyList[A]]
Splits into groups of elements that are transitively dependant by a relation r.
Splits into groups of elements that are transitively dependant by a relation r.
- Definition Classes
- FoldableParent
- def splitWith[A](fa: F[A])(p: (A) => Boolean): List[NonEmptyList[A]]
Splits the elements into groups that alternatively satisfy and don't satisfy the predicate p.
- def suml[A](fa: F[A])(implicit A: Monoid[A]): A
- def suml1Opt[A](fa: F[A])(implicit A: Semigroup[A]): Option[A]
- def sumr[A](fa: F[A])(implicit A: Monoid[A]): A
- def sumr1Opt[A](fa: F[A])(implicit A: Semigroup[A]): Option[A]
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toEphemeralStream[A](fa: F[A]): EphemeralStream[A]
- def toIList[A](fa: F[A]): IList[A]
- def toList[A](fa: F[A]): List[A]
- def toSet[A](fa: F[A]): Set[A]
- def toStream[A](fa: F[A]): Stream[A]
- def toString(): String
- Definition Classes
- AnyRef → Any
- def toVector[A](fa: F[A]): Vector[A]
- def traverseS_[S, A, B](fa: F[A])(f: (A) => State[S, B]): State[S, Unit]
traverse_
specialized toState
* - final def traverseU_[A, GB](fa: F[A])(f: (A) => GB)(implicit G: Unapply[Applicative, GB]): M[Unit]
A version of
traverse_
that infers the type constructorM
. - def traverse_[M[_], A, B](fa: F[A])(f: (A) => M[B])(implicit a: Applicative[M]): M[Unit]
Strict traversal in an applicative functor
M
that ignores the result off
. - final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()