sealed
trait
PLensT[F[+_], A, B] extends AnyRef
Abstract Value Members
-
abstract
def
run(a: A): F[Option[Store[B, A]]]
Concrete Value Members
-
final
def
!=(arg0: AnyRef): Boolean
-
final
def
!=(arg0: Any): Boolean
-
final
def
##(): Int
-
def
%%=[C](s: State[B, C])(implicit F: Functor[F]): PStateT[F, A, C]
-
def
%=(f: (B) ⇒ B)(implicit F: Functor[F]): PStateT[F, A, B]
-
def
%==(f: (B) ⇒ B)(implicit F: Functor[F]): StateT[F, A, Unit]
-
def
***[C, D](that: PLensT[F, C, D])(implicit FF: Apply[F]): PLensT[F, (A, C), (B, D)]
-
def
->>-[C](f: ⇒ StateT[F, A, C])(implicit F: Monad[F]): PStateT[F, A, C]
-
def
:=(b: ⇒ B)(implicit F: Functor[F]): PStateT[F, A, B]
-
def
<=<[C](that: PLensT[F, C, A])(implicit FF: Monad[F]): PLensT[F, C, B]
-
final
def
==(arg0: AnyRef): Boolean
-
final
def
==(arg0: Any): Boolean
-
def
=>=(f: (B) ⇒ B)(implicit F: Functor[F]): (A) ⇒ F[A]
-
def
>-[C](f: (B) ⇒ C)(implicit F: Functor[F]): PStateT[F, A, C]
-
def
>=>[C](that: PLensT[F, B, C])(implicit FF: Monad[F]): PLensT[F, A, C]
-
def
>>-[C](f: (B) ⇒ StateT[F, A, C])(implicit F: Monad[F]): PStateT[F, A, C]
-
def
andThen[C](that: PLensT[F, B, C])(implicit FF: Monad[F]): PLensT[F, A, C]
-
def
apply(a: A): F[Option[Store[B, A]]]
-
def
as(f: (B) ⇒ A, a: A)(implicit F: Functor[F]): F[A]
-
final
def
asInstanceOf[T0]: T0
-
def
clone(): AnyRef
-
def
compose[C](that: PLensT[F, C, A])(implicit FF: Monad[F]): PLensT[F, C, B]
-
final
def
eq(arg0: AnyRef): Boolean
-
def
equals(arg0: Any): Boolean
-
def
exists(p: (B) ⇒ Boolean, a: A)(implicit F: Functor[F]): F[Boolean]
-
def
finalize(): Unit
-
def
forall(p: (B) ⇒ Boolean, a: A)(implicit F: Functor[F]): F[Boolean]
-
def
get(a: A)(implicit F: Functor[F]): F[Option[B]]
-
final
def
getClass(): Class[_]
-
def
getK(implicit F: Functor[F]): Kleisli[[+α]OptionT[F, α], A, B]
-
def
getO(a: A)(implicit F: Functor[F]): OptionT[F, B]
-
def
getOr(a: A, b: ⇒ B)(implicit F: Functor[F]): F[B]
-
def
getOrZ(a: A)(implicit M: Monoid[B], F: Functor[F]): F[B]
-
def
hashCode(): Int
-
def
is(a: A)(implicit F: Functor[F]): F[Boolean]
-
final
def
isInstanceOf[T0]: Boolean
-
def
isNot(a: A)(implicit F: Functor[F]): F[Boolean]
-
-
def
mapC[C](f: (Store[B, A]) ⇒ Store[C, A])(implicit F: Functor[F]): PLensT[F, A, C]
-
def
mod(f: (B) ⇒ B, a: A)(implicit F: Functor[F]): F[A]
-
final
def
ne(arg0: AnyRef): Boolean
-
final
def
notify(): Unit
-
final
def
notifyAll(): Unit
-
def
product[C, D](that: PLensT[F, C, D])(implicit FF: Apply[F]): PLensT[F, (A, C), (B, D)]
-
def
runO(a: A): OptionT[F, Store[B, A]]
-
def
set(a: A, b: B)(implicit F: Functor[F]): F[Option[A]]
-
def
setK(a: A)(implicit F: Functor[F]): Kleisli[[+α]OptionT[F, α], B, A]
-
def
setO(a: A, b: B)(implicit F: Functor[F]): OptionT[F, A]
-
def
setOr(a: A, b: B, d: ⇒ A)(implicit F: Functor[F]): F[A]
-
def
setOrZ(a: A, b: B)(implicit M: Monoid[A], F: Functor[F]): F[A]
-
def
st(implicit F: Functor[F]): PStateT[F, A, B]
-
def
sum[C](that: ⇒ PLensT[F, C, B])(implicit F: Functor[F]): PLensT[F, \/[A, C], B]
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
-
def
toString(): String
-
def
trySet(a: A)(implicit F: Functor[F]): F[Option[(B) ⇒ A]]
-
def
trySetK(implicit F: Functor[F]): Kleisli[[+α]OptionT[F, α], A, (B) ⇒ A]
-
def
trySetO(a: A)(implicit F: Functor[F]): OptionT[F, (B) ⇒ A]
-
def
trySetOr(a: A, d: ⇒ (B) ⇒ A)(implicit F: Functor[F]): F[(B) ⇒ A]
-
def
trySetOrZ(a: A)(implicit M: Monoid[(B) ⇒ A], F: Functor[F]): F[(B) ⇒ A]
-
final
def
wait(): Unit
-
final
def
wait(arg0: Long, arg1: Int): Unit
-
final
def
wait(arg0: Long): Unit
-
def
xmapA[X](f: (A) ⇒ X)(g: (X) ⇒ A)(implicit F: Functor[F]): PLensT[F, X, B]
-
def
xmapB[X](f: (B) ⇒ X)(g: (X) ⇒ B)(implicit F: Functor[F]): PLensT[F, A, X]
-
-
-
def
|||[C](that: ⇒ PLensT[F, C, B])(implicit F: Functor[F]): PLensT[F, \/[A, C], B]
Inherited from AnyRef
Inherited from Any
Partial Lens, offering a purely functional means to access and retrieve an optional field of type
B
in a record of typeA
.This structure is more general than the one described in http://days2012.scala-lang.org/sites/days2012/files/morris_lenses.pdf as it abstracts over a type constructor
F
, used to address the field, andG
, used to wrap the value of the field.If
F
andG
as taken to be scalaz.Id, the structure simplifies to the partial lens presented in the paper.The term field should not be interpreted restrictively to mean a member of a class. For example, a partial lens can address the nth element of a
List
.Type constructor used to address the field
The type of the record
The type of the optional field
scalaz.LensT