0 | module Data.Either.Lens
2 | import Data.Profunctor
3 | import public Control.Lens
10 | Left_ : Prism (Either a c) (Either b c) a b
11 | Left_ @{MkIsPrism _} = left
15 | Right_ : Prism (Either c a) (Either c b) a b
16 | Right_ @{MkIsPrism _} = right
20 | chosen : IndexedLens (Either () ()) (Either a a) (Either b b) a b
22 | (either (Left (),) (Right (),))