|
| Data.RepLib.RepAux | | Portability | non-portable | | Stability | experimental | | Maintainer | sweirich@cis.upenn.edu |
|
|
|
|
|
| Description |
| Auxiliary operations to aid in the definition of type-indexed functions
|
|
| Synopsis |
|
|
|
|
| Casting operations
|
|
|
| Determine if two reps are for the same type
|
|
|
| The type-safe cast operation, implicit arguments
|
|
|
| The type-safe cast operation, explicit arguments
|
|
|
| Leibniz equality between types, implicity representations
|
|
|
| Leibniz equality between types, explicit representations
|
|
| Operations for heterogeneous lists
|
|
|
| Given a list of constructor representations for a datatype,
determine which constructor formed the datatype.
|
|
|
| A datastructure to store the results of findCon
| | Constructors | | forall l . Val (Emb l a) (MTup ctx l) l | |
|
|
|
| foldl_l :: (forall a. Rep a => ctx a -> b -> a -> b) -> b -> MTup ctx l -> l -> b | Source |
|
| A fold left for heterogeneous lists
|
|
| foldr_l :: (forall a. Rep a => ctx a -> a -> b -> b) -> b -> MTup ctx l -> l -> b | Source |
|
| A fold right operation for heterogeneous lists, that folds a function
expecting a type type representation across each element of the list.
|
|
| map_l :: (forall a. Rep a => ctx a -> a -> a) -> MTup ctx l -> l -> l | Source |
|
| A map for heterogeneous lists
|
|
| mapQ_l :: (forall a. Rep a => ctx a -> a -> r) -> MTup ctx l -> l -> [r] | Source |
|
| Transform a heterogeneous list in to a standard list
|
|
| mapM_l :: Monad m => (forall a. Rep a => ctx a -> a -> m a) -> MTup ctx l -> l -> m l | Source |
|
| mapM for heterogeneous lists
|
|
| fromTup :: (forall a. Rep a => ctx a -> a) -> MTup ctx l -> l | Source |
|
| Generate a heterogeneous list from metadata
|
|
|
| Generate a heterogeneous list from metadata, in a monad
|
|
| toList :: (forall a. Rep a => ctx a -> b) -> MTup ctx l -> [b] | Source |
|
| Generate a normal lists from metadata
|
|
| SYB style operations (Rep)
|
|
| type Traversal = forall a. Rep a => a -> a | Source |
|
| A SYB style traversal
|
|
| type Query r = forall a. Rep a => a -> r | Source |
|
| SYB style query type
|
|
| type MapM m = forall a. Rep a => a -> m a | Source |
|
| SYB style monadic map type
|
|
|
| Map a traversal across the kids of a data structure
|
|
|
|
|
|
| SYB style operations (Rep1)
|
|
| type Traversal1 ctx = forall a. Rep a => ctx a -> a -> a | Source |
|
|
| type Query1 ctx r = forall a. Rep a => ctx a -> a -> r | Source |
|
|
| type MapM1 ctx m = forall a. Rep a => ctx a -> a -> m a | Source |
|
|
|
|
|
|
|
|
| SYB Reloaded
|
|
|
|
|
|
|
|
|
|
|
|
| Produced by Haddock version 2.4.2 |