ZioOpticsBuilder

object ZioOpticsBuilder extends AccessorBuilder

This is an example implementation demonstrating how to derive zio-optics using a zio-schema AccessorBuilder.

Because we go through DynamicValues, this implementation is not at all performant so shouldn't be used where performance is potentially an issue.

trait AccessorBuilder
class Object
trait Matchable
class Any

Type members

Types

type Lens[F, S, A] = Optic[S, S, A, OpticFailure, OpticFailure, A, S]
type Prism[F, S, A] = ZPrism[S, S, A, A]
type Traversal[S, A] = ZTraversal[S, S, A, A]

Value members

Concrete methods

override def makeLens[F, S, A](product: Record[S], term: Field[S, A]): Optic[S, S, A, OpticFailure, OpticFailure, A, S]
Definition Classes
AccessorBuilder
override def makePrism[F, S, A](sum: Enum[S], term: Case[S, A]): ZPrism[S, S, A, A]
Definition Classes
AccessorBuilder
override def makeTraversal[S, A](collection: Collection[S, A], element: Schema[A]): Optic[S, S, Chunk[A], OpticFailure, OpticFailure, Chunk[A], S]
Definition Classes
AccessorBuilder