Safe Haskell | Safe-Inferred |
---|

Re-export a minimal version of the fclabels API.

I'd like to be able to write `(a #= x) . (b #= y)`

without parentheses,
but since (.) already binds the strongest at 9, I can't make (#=) stronger.
Besides, I already want (#=) to bind loosely so I can write `x#y #= 1+2`

.
I would need a version of (.) at 0, but that's too much trouble.

## Synopsis

- type Lens a b = a :-> b
- lens :: (f -> a) -> ((a -> a) -> f -> f) -> f :-> a
- (#) :: Lens a b -> Lens b c -> Lens a c
- (#$) :: Lens f a -> f -> a
- (#=) :: Lens f a -> a -> f -> f
- (%=) :: Lens f a -> (a -> a) -> f -> f
- (<#>) :: Functor f => Lens a b -> f a -> f b
- map :: Ord k => k -> Lens (Map k a) (Maybe a)
- set :: Ord k => k -> Lens (Set k) Bool
- list :: Int -> Lens [a] (Maybe a)