package quicklens
- Alphabetic
- By Inheritance
- quicklens
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Type Members
- implicit class AbstractPathModifyPimp[T, U] extends AnyRef
- case class LensHelper[T] extends Product with Serializable
- implicit class ModifyPimp[T] extends AnyRef
- case class MultiLensHelper[T] extends Product with Serializable
- case class PathLazyModify[T, U](doModify: (T, (U) => U) => T) extends Product with Serializable
- case class PathModify[T, U](obj: T, doModify: (T, (U) => U) => T) extends Product with Serializable
- implicit class QuicklensAt[F[_], T] extends AnyRef
- trait QuicklensAtFunctor[F[_], T] extends AnyRef
- implicit class QuicklensEach[F[_], T] extends AnyRef
- implicit class QuicklensEither[T[_, _], L, R] extends AnyRef
- trait QuicklensEitherFunctor[T[_, _], L, R] extends AnyRef
- trait QuicklensFunctor[F[_], A] extends AnyRef
- implicit class QuicklensMapAt[M[KT, TT] <: Map[KT, TT], K, T] extends AnyRef
- trait QuicklensMapAtFunctor[F[_, _], K, T] extends AnyRef
- implicit class QuicklensWhen[A] extends AnyRef
Value Members
- implicit def eitherQuicklensFunctor[T[_, _], L, R]: QuicklensEitherFunctor[Either, L, R]
- implicit def mapQuicklensFunctor[M[KT, TT] <: Map[KT, TT], K, T](implicit fac: Factory[(K, T), M[K, T]]): QuicklensMapAtFunctor[M, K, T]
- def modify[T]: LensHelper[T]
- macro def modify[T, U](obj: T)(path: (T) => U): PathModify[T, U]
Create an object allowing modifying the given (deeply nested) field accessible in a
case class
hierarchy viapath
on the givenobj
.Create an object allowing modifying the given (deeply nested) field accessible in a
case class
hierarchy viapath
on the givenobj
.All modifications are side-effect free and create copies of the original objects.
You can use
.each
to traverse options, lists, etc. - def modifyAll[T]: MultiLensHelper[T]
- macro def modifyAll[T, U](obj: T)(path1: (T) => U, paths: (T) => U*): PathModify[T, U]
Create an object allowing modifying the given (deeply nested) fields accessible in a
case class
hierarchy viapaths
on the givenobj
.Create an object allowing modifying the given (deeply nested) fields accessible in a
case class
hierarchy viapaths
on the givenobj
.All modifications are side-effect free and create copies of the original objects.
You can use
.each
to traverse options, lists, etc. - implicit def optionQuicklensFunctor[A]: QuicklensFunctor[Option, A]
- implicit def seqQuicklensFunctor[F[_], T](implicit fac: Factory[T, F[T]], ev: (F[T]) => Seq[T]): QuicklensAtFunctor[F, T]
- implicit def traversableQuicklensFunctor[F[_], A](implicit fac: Factory[A, F[A]], ev: (F[A]) => Iterable[A]): QuicklensFunctor[F, A]
- object QuicklensMacros