trait FunctorFilter[F[_]] extends Serializable
FunctorFilter[F]
allows you to map
and filter out elements simultaneously.
- Source
- FunctorFilter.scala
- Alphabetic
- By Inheritance
- FunctorFilter
- Serializable
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Abstract Value Members
- abstract def functor: Functor[F]
- abstract def mapFilter[A, B](fa: F[A])(f: (A) => Option[B]): F[B]
A combined
map
andfilter
.A combined
map
andfilter
. Filtering is handled viaOption
instead ofBoolean
such that the output typeB
can be different than the input typeA
.Example:
scala> import cats.implicits._ scala> val m: Map[Int, String] = Map(1 -> "one", 3 -> "three") scala> val l: List[Int] = List(1, 2, 3, 4) scala> def asString(i: Int): Option[String] = m.get(i) scala> l.mapFilter(asString) res0: List[String] = List(one, three)
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
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native()
- def collect[A, B](fa: F[A])(f: PartialFunction[A, B]): F[B]
Similar to mapFilter but uses a partial function instead of a function that returns an
Option
.Similar to mapFilter but uses a partial function instead of a function that returns an
Option
.Example:
scala> import cats.implicits._ scala> val l: List[Int] = List(1, 2, 3, 4) scala> FunctorFilter[List].collect(l){ | case 1 => "one" | case 3 => "three" | } res0: List[String] = List(one, three)
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- def filter[A](fa: F[A])(f: (A) => Boolean): F[A]
Apply a filter to a structure such that the output structure contains all
A
elements in the input structure that satisfy the predicatef
but none that don't. - def filterNot[A](fa: F[A])(f: (A) => Boolean): F[A]
Apply a filter to a structure such that the output structure contains all
A
elements in the input structure that do not satisfy the predicatef
. - def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable])
- def flattenOption[A](fa: F[Option[A]]): F[A]
"Flatten" out a structure by collapsing
Option
s."Flatten" out a structure by collapsing
Option
s. Equivalent to usingmapFilter
withidentity
.Example:
scala> import cats.implicits._ scala> val l: List[Option[Int]] = List(Some(1), None, Some(3), None) scala> l.flattenOption res0: List[Int] = List(1, 3)
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- 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()
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toString(): String
- Definition Classes
- AnyRef → Any
- 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()