Copyright | (C) 2018 Csongor Kiss |
---|---|
License | BSD3 |
Maintainer | Csongor Kiss <kiss.csongor.kiss@gmail.com> |
Stability | experimental |
Portability | non-portable |
Safe Haskell | None |
Language | Haskell2010 |
Internal lens helpers. Only exported for Haddock
Synopsis
- type Prism s t a b = forall p f. (Choice p, Applicative f) => p a (f b) -> p s (f t)
- type Prism' s a = Prism s s a a
- (^?) :: s -> ((a -> Const (First a) a) -> s -> Const (First a) s) -> Maybe a
- match :: Prism s t a b -> s -> Either t a
- (#) :: (Tagged b (Identity b) -> Tagged t (Identity t)) -> b -> t
- prism :: (b -> t) -> (s -> Either t a) -> Prism s t a b
- prismRavel :: (Market a b a b -> Market a b s t) -> Prism s t a b
- type APrismVL s t a b = Market a b a (Identity b) -> Market a b s (Identity t)
- withPrism :: APrismVL s t a b -> ((b -> t) -> (s -> Either t a) -> r) -> r
- prism2prismvl :: Market a b s t -> Prism s t a b
- build :: (Tagged b (Identity b) -> Tagged t (Identity t)) -> b -> t
Documentation
type Prism s t a b = forall p f. (Choice p, Applicative f) => p a (f b) -> p s (f t) Source #
Type alias for prism
prism2prismvl :: Market a b s t -> Prism s t a b Source #