Idris2Doc : Control.Lens.Iso

Control.Lens.Iso

(source)

Definitions

recordIsIso : (Type->Type->Type) ->Type
Totality: total
Visibility: public export
Constructor: 
MkIsIso : Profunctorp->IsIsop

Projection: 
.runIsIso : IsIsop->Profunctorp

Hints:
IsIsop=>Indexableipp
IsLensp=>IsIsop
IsIsop=>IsIso (Indexedip)
IsPrismp=>IsIsop
.runIsIso : IsIsop->Profunctorp
Totality: total
Visibility: public export
runIsIso : IsIsop->Profunctorp
Totality: total
Visibility: public export
0Iso : Type->Type->Type->Type->Type
  An `Iso` is an isomorphism family between types. It allows a value to be
converted or updated across this isomorphism.

Totality: total
Visibility: public export
0Iso' : Type->Type->Type
  An `Iso'` is an isomorphism family between types. It allows a value to be
converted or updated across this isomorphism.
This is the `Simple` version of `Iso`.

Totality: total
Visibility: public export
getIso : Isostab-> (s->a, b->t)
  Extract the conversion functions from an `Iso`.

Totality: total
Visibility: public export
withIso : Isostab-> ((s->a) -> (b->t) ->r) ->r
  Extract the conversion functions from an `Iso`.

Totality: total
Visibility: public export
iso : (s->a) -> (b->t) ->Isostab
  Construct an `Iso` from two inverse functions.

Totality: total
Visibility: public export
fromEqv : s<=>a->Iso'sa
  Construct a simple `Iso` from an equivalence.

Totality: total
Visibility: public export
from : Isostab->Isobats
  Invert an isomorphism.

Totality: total
Visibility: public export
au : Functorf=>Isostab-> ((b->t) ->fs) ->fa
  Based on Epigram's `ala`.

Totality: total
Visibility: public export
auf : (Functorf, Functorg) =>Isostab-> (ft->gs) ->fb->ga
  Based on Epigram's `ala'`.

Totality: total
Visibility: public export
xplat : Functorf=>Isostab-> ((s->a) ->fb) ->ft
  An alias for `au . from`.

Totality: total
Visibility: public export
xplatf : (Functorf, Functorg) =>Isostab-> (fa->gb) ->fs->gt
  an alias for `auf . from`.

Totality: total
Visibility: public export
under : Isostab-> (t->s) ->b->a
  Update a value under an `Iso`, as opposed to `over` it.
In other words, this is a convenient alias for `over . from`.

Totality: total
Visibility: public export
constant : a->Iso (a->b) (a'->b') bb'
  An "isomorphism" between a function and its result type, assuming that
the parameter type is inhabited.

Totality: total
Visibility: public export
involuted : (a->a) ->Iso'aa
  Construct an isomorphism given an involution.

Totality: total
Visibility: public export
flipped : Iso (a->b->c) (a'->b'->c') (b->a->c) (b'->a'->c')
  Flipping a function's arguments forms an isomorphism.

Totality: total
Visibility: public export
swapped : Symmetricf=>Iso (fab) (fa'b') (fba) (fb'a')
  Swapping a symmetric tensor product's parameters is an isomorphism.

Totality: total
Visibility: public export
casted : (Castsa, Castbt) =>Isostab
  Casting between types forms an isomorphism.
WARNING: This is only a true isomorphism if casts in both directions are
lossless and mutually inverse.

Totality: total
Visibility: public export
non : Eqa=>a->Iso' (Maybea) a
  The isomorphism `non x` converts between `Maybe a` and `a` sans the
element `x`.

This is useful for working with optics whose focus type is `Maybe a`,
such as `at`.

Totality: total
Visibility: public export
Id_ : Iso (Identitya) (Identityb) ab
Totality: total
Visibility: public export
Const_ : Iso (Constab) (Constcd) ac
Totality: total
Visibility: public export
mapping : (Functorf, Functorg) =>Isostab->Iso (fs) (gt) (fa) (gb)
  Lift an isomorphism through a `Functor`.

Totality: total
Visibility: public export
contramapping : (Contravariantf, Contravariantg) =>Isostab->Iso (fa) (gb) (fs) (gt)
  Lift an isomorphism through a `Contravariant` functor.

Totality: total
Visibility: public export
bimapping : (Bifunctorf, Bifunctorg) =>Isostab->Isos't'a'b'->Iso (fss') (gtt') (faa') (gbb')
  Lift isomorphisms through a `Bifunctor`.

Totality: total
Visibility: public export
mappingFst : (Bifunctorf, Bifunctorg) =>Isostab->Iso (fsx) (gty) (fax) (gby)
  Lift an isomorphism through the first parameter of a `Bifunctor`.

Totality: total
Visibility: public export
mappingSnd : (Bifunctorf, Bifunctorg) =>Isostab->Iso (fxs) (gyt) (fxa) (gyb)
  Lift an isomorphism through the second parameter of a `Bifunctor`.

Totality: total
Visibility: public export
dimapping : (Profunctorf, Profunctorg) =>Isostab->Isos't'a'b'->Iso (fas') (gbt') (fsa') (gtb')
  Lift isomorphisms through a `Profunctor`.

Totality: total
Visibility: public export
lmapping : (Profunctorf, Profunctorg) =>Isostab->Iso (fax) (gby) (fsx) (gty)
  Lift an isomorphism through the first parameter of a `Profunctor`.

Totality: total
Visibility: public export
rmapping : (Profunctorf, Profunctorg) =>Isostab->Iso (fxs) (gyt) (fxa) (gyb)
  Lift an isomorphism through the second parameter of a `Profunctor`.

Totality: total
Visibility: public export