on master help sign in
haddock comments
commit4e315e69eea64832efdd1a4c0e74f03870a43774 authorConal Elliott <conal@conal.net> dateSun 11 Sep 2016, 12:14 (10 years ago) parent2616f3d
1 file changed+4−1
src/Data/MemoTrie.hs+4−1
src/Data/MemoTrie.hs+4−1
@@ -42,7 +42,7 @@
4242-- see @examples/Generic.hs@, which can be run with:
4343--
4444-- @
45−-- $ cabal configure -fexamples && cabal run generic
45+-- cabal configure -fexamples && cabal run generic
4646-- @
4747--
4848--
@@ -640,6 +640,7 @@ instance (HasTrie (f x)) => HasTrie (M1 i t f x) where
640640-- "unlifted" generic representation. (i.e. is a unary type constructor).
641641type Reg a = Rep a ()
642642
643+-- | 'Generic'-friendly default for 'trie'
643644trieGeneric :: (Generic a, HasTrie (Reg a))
644645 => ((Reg a :->: b) -> (a :->: b))
645646 -> (a -> b)
@@ -647,6 +648,7 @@ trieGeneric :: (Generic a, HasTrie (Reg a))
647648trieGeneric theConstructor f = theConstructor (trie (f . to))
648649{-# INLINEABLE trieGeneric #-}
649650
651+-- | 'Generic'-friendly default for 'untrie'
650652untrieGeneric :: (Generic a, HasTrie (Reg a))
651653 => ((a :->: b) -> (Reg a :->: b))
652654 -> (a :->: b)
@@ -654,6 +656,7 @@ untrieGeneric :: (Generic a, HasTrie (Reg a))
654656untrieGeneric theDestructor t = \a -> (untrie (theDestructor t)) (from a)
655657{-# INLINEABLE untrieGeneric #-}
656658
659+-- | 'Generic'-friendly default for 'enumerate'
657660enumerateGeneric :: (Generic a, HasTrie (Reg a))
658661 => ((a :->: b) -> (Reg a :->: b))
659662 -> (a :->: b)