X-Git-Url: http://git.megacz.com/?p=ghc-hetmet.git;a=blobdiff_plain;f=compiler%2Futils%2FLazyUniqFM.lhs;h=709d4e0b67f763b7273944d978a23df705cc0d74;hp=99be1635c567406a2453f2c89b499c0c1f3004c4;hb=967fcc22c4ba4cdaf7851beafbf92b55e94717c6;hpb=2510f011ffda0a6dda52dccc9ff1763a83b07617 diff --git a/compiler/utils/LazyUniqFM.lhs b/compiler/utils/LazyUniqFM.lhs index 99be163..709d4e0 100644 --- a/compiler/utils/LazyUniqFM.lhs +++ b/compiler/utils/LazyUniqFM.lhs @@ -13,8 +13,10 @@ Basically, the things need to be in class @Uniquable@, and we use the \begin{code} {-# OPTIONS -Wall -fno-warn-name-shadowing -Werror #-} module LazyUniqFM ( + -- * Lazy unique-keyed mappings UniqFM, -- abstract type + -- ** Manipulating those mappings emptyUFM, unitUFM, unitDirectlyUFM, @@ -177,6 +179,7 @@ ufmToList :: UniqFM elt -> [(Unique, elt)] \begin{code} data Lazy a = Lazy { fromLazy :: a } +-- | @UniqFM a@ is a mapping from Unique to @a@ where the element @a@ is evaluated lazily. newtype UniqFM ele = MkUniqFM (S.UniqFM (Lazy ele)) instance Outputable a => Outputable (UniqFM a) where