Copyright | (c) 2020 Emily Pillmore |
---|---|
License | BSD-style |
Maintainer | Emily Pillmore <emilypi@cohomolo.gy> |
Stability | Experimental |
Portability | FlexibleInstances, MPTC, Type Families, UndecideableInstances |
Safe Haskell | None |
Language | Haskell2010 |
Isos
_SmashIso :: Iso (Smash a b) (Smash c d) (Maybe (a, b)) (Maybe (c, d)) Source #
A Iso
between a smash product and pointed tuple.
Prisms
Traversals
smashed :: AffineTraversal (Smash a b) (Smash c d) (a, b) (c, d) Source #
An AffineTraversal
of the smashed pair.
>>>
over smashed (fmap pred) (Smash 1 2)
Smash 1 1
>>>
over smashed id Nada
Nada
smashing :: IxTraversal Bool (Smash a a) (Smash b b) a b Source #
An IxTraversal
of the smashed pair. Yes this is equivalent to each
.
It's here because it's smashing.
>>>
over smashing show (Smash 1 2)
Smash "1" "2"
>>>
over smashing show Nada
Nada