trait Optics extends OpticComposeModule with OpticFailureModule with OpticModule with OpticResultModule with OpticTypesModule
- Alphabetic
- By Inheritance
- Optics
- OpticTypesModule
- OpticResultModule
- OpticModule
- OpticFailureModule
- OpticComposeModule
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Type Members
- trait LowPriorityOpticCompose extends AnyRef
- Definition Classes
- OpticComposeModule
- trait OpticCompose[GetWhole, SetWholeBefore, SetWholeBefore1, SetWholeBefore2, GetError, SetError, SetError1, GetPiece] extends AnyRef
OpticCompose
abstracts over the different ways that optics can be composed together, allowing all optics to be composed with a single operator.OpticCompose
abstracts over the different ways that optics can be composed together, allowing all optics to be composed with a single operator.- Definition Classes
- OpticComposeModule
- case class OpticFailure(message: String) extends Exception with Product with Serializable
An
OpticFailure
describes how getting or setting a piece of a whole using an optic failed.An
OpticFailure
describes how getting or setting a piece of a whole using an optic failed.- Definition Classes
- OpticFailureModule
- case class Optic[-GetWhole, -SetWholeBefore, -SetPiece, +GetError, +SetError, +GetPiece, +SetWholeAfter](getOptic: (GetWhole) => (OpticModule.this)#OpticResult[(GetError, SetWholeAfter), GetPiece], setOptic: (SetPiece) => (SetWholeBefore) => (OpticModule.this)#OpticResult[(SetError, SetWholeAfter), SetWholeAfter]) extends Product with Serializable
An
Optic
is able to get and set a piece of a whole, possibly failing.An
Optic
is able to get and set a piece of a whole, possibly failing. In the most general possible case the get and set types are distinct and getting may fail with a different error than setting.- Definition Classes
- OpticModule
- type EOptic[-GetWhole, -SetWholeBefore, -SetPiece, +Error, +GetPiece, +SetWholeAfter] = Optic[GetWhole, SetWholeBefore, SetPiece, Error, Error, GetPiece, SetWholeAfter]
- Definition Classes
- OpticTypesModule
- type Fold[-S, +A] = Optic[S, Nothing, Nothing, OpticFailure, Any, Chunk[A], Any]
- Definition Classes
- OpticTypesModule
- type Getter[-S, +A] = Optic[S, Nothing, Nothing, OpticFailure, Any, A, Any]
- Definition Classes
- OpticTypesModule
- type Iso[S, A] = Optic[S, Any, A, Nothing, Nothing, A, S]
- Definition Classes
- OpticTypesModule
- type IsoPartiallyApplied[+S, A] = Optic[Any, Any, A, Nothing, Nothing, A, S]
- Definition Classes
- OpticTypesModule
- type Lens[S, A] = Optic[S, S, A, Nothing, Nothing, A, S]
- Definition Classes
- OpticTypesModule
- type LensPartiallyApplied[+S, A] = Optic[Any, Any, A, Nothing, Nothing, A, S]
- Definition Classes
- OpticTypesModule
- type OpticPartiallyApplied[-SetPiece, +GetError, +SetError, +GetPiece, +SetWhole] = Optic[Any, Any, SetPiece, GetError, SetError, GetPiece, SetWhole]
- Definition Classes
- OpticTypesModule
- abstract type OpticResult[+E, +A]
An
OpticResult
represents the result from getting or setting a piece of a whole using an optic.An
OpticResult
represents the result from getting or setting a piece of a whole using an optic. This allows the library to abstract over pure optics, transactional optics, and effectual optics.- Definition Classes
- OpticResultModule
- implicit final class OpticSyntax[Whole] extends AnyRef
Provides implicit syntax for working with any value as a partially applied optic.
- type Optional[S, A] = Optic[S, S, A, OpticFailure, OpticFailure, A, S]
- Definition Classes
- OpticTypesModule
- type OptionalPartiallyApplied[+S, A] = Optic[Any, Any, A, OpticFailure, OpticFailure, A, S]
- Definition Classes
- OpticTypesModule
- type Prism[S, A] = Optic[S, Any, A, OpticFailure, Nothing, A, S]
- Definition Classes
- OpticTypesModule
- type PrismPartiallyApplied[+S, A] = Optic[Any, Any, A, OpticFailure, Nothing, A, S]
- Definition Classes
- OpticTypesModule
- type Setter[S, -A] = Optic[Nothing, S, A, Any, OpticFailure, Any, S]
- Definition Classes
- OpticTypesModule
- type Traversal[S, A] = Optic[S, S, Chunk[A], OpticFailure, OpticFailure, Chunk[A], S]
- Definition Classes
- OpticTypesModule
- type TraversalPartiallyApplied[+S, A] = Optic[Any, Any, Chunk[A], OpticFailure, OpticFailure, Chunk[A], S]
- Definition Classes
- OpticTypesModule
- type ZIso[-S, +T, +A, -B] = Optic[S, Any, B, Nothing, Nothing, A, T]
- Definition Classes
- OpticTypesModule
- type ZIsoPartiallyApplied[+S, +A, -B] = Optic[Any, Any, B, Nothing, Nothing, A, S]
- Definition Classes
- OpticTypesModule
- type ZLens[-S, +T, +A, -B] = Optic[S, S, B, Nothing, Nothing, A, T]
- Definition Classes
- OpticTypesModule
- type ZLensPartiallyApplied[+S, +A, -B] = Optic[Any, Any, B, Nothing, Nothing, A, S]
- Definition Classes
- OpticTypesModule
- type ZOptional[-S, +T, +A, -B] = Optic[S, S, B, OpticFailure, OpticFailure, A, T]
- Definition Classes
- OpticTypesModule
- type ZOptionalPartiallyApplied[+S, +A, -B] = Optic[Any, Any, B, OpticFailure, OpticFailure, A, S]
- Definition Classes
- OpticTypesModule
- type ZPrism[-S, +T, +A, -B] = Optic[S, Any, B, OpticFailure, Nothing, A, T]
- Definition Classes
- OpticTypesModule
- type ZPrismPartiallyApplied[+S, +A, -B] = Optic[Any, Any, B, OpticFailure, Nothing, A, S]
- Definition Classes
- OpticTypesModule
- type ZSetter[-S, +T, -A] = Optic[Nothing, S, A, Any, OpticFailure, Any, T]
- Definition Classes
- OpticTypesModule
- type ZTraversal[-S, +T, +A, -B] = Optic[S, S, Chunk[B], OpticFailure, OpticFailure, Chunk[A], T]
- Definition Classes
- OpticTypesModule
- type ZTraversalPartiallyApplied[+S, +A, -B] = Optic[Any, Any, Chunk[B], OpticFailure, OpticFailure, Chunk[A], S]
- Definition Classes
- OpticTypesModule
Abstract Value Members
- abstract def fail[E](e: E): OpticResult[E, Nothing]
Constructs an optic result that fails with the specified value.
Constructs an optic result that fails with the specified value.
- Attributes
- protected
- Definition Classes
- OpticResultModule
- abstract def flatMap[E, A, B](opticResult: OpticResult[E, A])(f: (A) => OpticResult[E, B]): OpticResult[E, B]
Constructs an optic result by applying a function that returns an optic result to the success value of the specified optic result.
Constructs an optic result by applying a function that returns an optic result to the success value of the specified optic result.
- Attributes
- protected
- Definition Classes
- OpticResultModule
- abstract def foldM[E, E2, A, B](opticResult: OpticResult[E, A])(f: (E) => OpticResult[E2, B], g: (A) => OpticResult[E2, B]): OpticResult[E2, B]
Constructs an optic results that folds over the success and failure values of the specified optic result, transforming them with the functions
f
andg
that return an optic result.Constructs an optic results that folds over the success and failure values of the specified optic result, transforming them with the functions
f
andg
that return an optic result.- Attributes
- protected
- Definition Classes
- OpticResultModule
- abstract def map[E, A, B](opticResult: OpticResult[E, A])(f: (A) => B): OpticResult[E, B]
Constructs an optic result by applying a function to the success value of this optic result.
Constructs an optic result by applying a function to the success value of this optic result.
- Attributes
- protected
- Definition Classes
- OpticResultModule
- abstract def succeed[A](a: A): OpticResult[Nothing, A]
Constructs an optic result that succeeds with the specified value.
Constructs an optic result that succeeds with the specified value.
- Attributes
- protected
- Definition Classes
- OpticResultModule
Concrete Value Members
- object OpticCompose extends (OpticComposeModule.this)#LowPriorityOpticCompose
- Definition Classes
- OpticComposeModule
- object Optic extends Serializable
- Definition Classes
- OpticModule
- object Iso
- Definition Classes
- OpticTypesModule
- object Lens
- Definition Classes
- OpticTypesModule
- object Optional
- Definition Classes
- OpticTypesModule
- object Prism
- Definition Classes
- OpticTypesModule
- object Traversal
- Definition Classes
- OpticTypesModule
- object ZIso
- Definition Classes
- OpticTypesModule
- object ZLens
- Definition Classes
- OpticTypesModule
- object ZOptional
- Definition Classes
- OpticTypesModule
- object ZPrism
- Definition Classes
- OpticTypesModule
- object ZTraversal
- Definition Classes
- OpticTypesModule
- 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()
- final def collectAllSuccesses[E, A](iterable: Iterable[OpticResult[E, A]]): OpticResult[Nothing, Chunk[A]]
Constructs an optic result that succeeds with all the success values in the specified collection of optic results, discarding the failures.
Constructs an optic result that succeeds with all the success values in the specified collection of optic results, discarding the failures.
- Attributes
- protected
- Definition Classes
- OpticResultModule
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable])
- final def foreach[E, A, B](iterable: Iterable[A])(f: (A) => OpticResult[E, B]): OpticResult[E, Chunk[B]]
Constructs an optic result that applies a function returning an optic result to each element in the specified collection and collects the results into a single optic result.
Constructs an optic result that applies a function returning an optic result to each element in the specified collection and collects the results into a single optic result.
- Attributes
- protected
- Definition Classes
- OpticResultModule
- 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 mapError[E, E2, A](opticResult: OpticResult[E, A])(f: (E) => E2): OpticResult[E2, A]
Constructs an optic result by applying a function to the failure value of this optic result.
Constructs an optic result by applying a function to the failure value of this optic result.
- Attributes
- protected
- Definition Classes
- OpticResultModule
- 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 orElse[E, E2, A](left: => OpticResult[E, A], right: => OpticResult[E2, A]): OpticResult[E2, A]
Constructs an optic result that is equal to the left optic result if it is successful or else the right optic result.
Constructs an optic result that is equal to the left optic result if it is successful or else the right optic result.
- Attributes
- protected
- Definition Classes
- OpticResultModule
- 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()
- final def zip[E, A, B](left: => OpticResult[E, A], right: => OpticResult[E, B]): OpticResult[E, (A, B)]
Constructs an optic result that combines the left and right optic results.
Constructs an optic result that combines the left and right optic results.
- Attributes
- protected
- Definition Classes
- OpticResultModule
- final def zipWith[E, A, B, C](left: => OpticResult[E, A], right: => OpticResult[E, B])(f: (A, B) => C): OpticResult[E, C]
Constructs an optic result that combines the left and right optic results, transforming their success values with the specified function.
Constructs an optic result that combines the left and right optic results, transforming their success values with the specified function.
- Attributes
- protected
- Definition Classes
- OpticResultModule