Copyright | (C) 2012-2016 Edward Kmett |
---|---|
License | BSD-style (see the file LICENSE) |
Maintainer | Edward Kmett <ekmett@gmail.com> |
Stability | experimental |
Portability | non-portable |
Safe Haskell | Safe |
Language | Haskell98 |
Control.Lens.Internal.Magma
Contents
Description
- data Magma i t b a where
- runMagma :: Magma i t a a -> t
- newtype Molten i a b t = Molten {}
- data Mafic a b t = Mafic Int (Int -> Magma Int t b a)
- runMafic :: Mafic a b t -> Magma Int t b a
- data TakingWhile p (g :: * -> *) a b t = TakingWhile Bool t (Bool -> Magma () t b (Corep p a))
- runTakingWhile :: TakingWhile p f a b t -> Magma () t b (Corep p a)
Magma
data Magma i t b a where Source #
This provides a way to peek at the internal structure of a
Traversal
or IndexedTraversal
runMagma :: Magma i t a a -> t Source #
Run a Magma
where all the individual leaves have been converted to the
expected type
Molten
newtype Molten i a b t Source #
This is a a non-reassociating initially encoded version of Bazaar
.
Instances
Mafic
This is used to generate an indexed magma from an unindexed source
By constructing it this way we avoid infinite reassociations in sums where possible.
TakingWhile
data TakingWhile p (g :: * -> *) a b t Source #
This is used to generate an indexed magma from an unindexed source
By constructing it this way we avoid infinite reassociations where possible.
In
, TakingWhile
p g a b tg
has a nominal
role to avoid exposing an illegal _|_ via Contravariant
,
while the remaining arguments are degraded to a nominal
role by the invariants of Magma
Constructors
TakingWhile Bool t (Bool -> Magma () t b (Corep p a)) |
Instances
Corepresentable p => Bizarre p (TakingWhile p g) Source # | |
IndexedFunctor (TakingWhile p f) Source # | |
Functor (TakingWhile p f a b) Source # | |
Applicative (TakingWhile p f a b) Source # | |
Contravariant f => Contravariant (TakingWhile p f a b) Source # | |
Apply (TakingWhile p f a b) Source # | |
runTakingWhile :: TakingWhile p f a b t -> Magma () t b (Corep p a) Source #
Generate a Magma
with leaves only while the predicate holds from left to right.