ComposerPreservesGetLaws

dev.constructive.eo.laws.typeclass.ComposerPreservesGetLaws
trait ComposerPreservesGetLaws[S, A, F[_, _], G[_, _], H[_, _]]

C2 — chain preserves get whenever both ends have an Accessor.

Attributes

Source
ComposerLaws.scala
Graph
Supertypes
class Object
trait Matchable
class Any

Members list

Value members

Abstract methods

def fToG: Composer[F, G]

First coercion hop.

First coercion hop.

Attributes

Source
ComposerLaws.scala
def gToH: Composer[G, H]

Second coercion hop.

Second coercion hop.

Attributes

Source
ComposerLaws.scala
def optic: Optic[S, S, A, A, F]

The optic under test.

The optic under test.

Attributes

Source
ComposerLaws.scala

Concrete methods

def preservesGet(s: S): Boolean

gToH.to(fToG.to(optic)).get(s) == optic.get(s).

gToH.to(fToG.to(optic)).get(s) == optic.get(s).

Attributes

Source
ComposerLaws.scala

Givens

Givens

given accessorF: => Accessor[F]

Accessor evidence at the chain's start carrier.

Accessor evidence at the chain's start carrier.

Attributes

Source
ComposerLaws.scala
given accessorH: => Accessor[H]

Accessor evidence at the chain's end carrier.

Accessor evidence at the chain's end carrier.

Attributes

Source
ComposerLaws.scala