intersectUFM_C,
foldUFM,
mapUFM,
+ elemUFM,
filterUFM,
sizeUFM,
isNullUFM,
import Unique ( Uniquable(..), Unique, u2i, mkUniqueGrimily )
import Util
-import Outputable ( Outputable(..) )
-import SrcLoc ( SrcLoc )
import GlaExts -- Lots of Int# operations
#if ! OMIT_NATIVE_CODEGEN
filterUFM :: (elt -> Bool) -> UniqFM elt -> UniqFM elt
sizeUFM :: UniqFM elt -> Int
+elemUFM :: Uniquable key => key -> UniqFM elt -> Bool
lookupUFM :: Uniquable key => UniqFM elt -> key -> Maybe elt
lookupUFM_Directly -- when you've got the Unique already
%************************************************************************
\begin{code}
+-- Turn off for now, these need to be updated (SDM 4/98)
+
+#if 0
#ifdef __GLASGOW_HASKELL__
-- I don't think HBC was too happy about this (WDP 94/10)
#-}
#endif {- __GLASGOW_HASKELL__ -}
+#endif
\end{code}
%************************************************************************
Lookup up a binary tree is easy (and fast).
\begin{code}
+elemUFM key fm = case lookUp fm (u2i (uniqueOf key)) of
+ Nothing -> False
+ Just _ -> True
+
lookupUFM fm key = lookUp fm (u2i (uniqueOf key))
lookupUFM_Directly fm key = lookUp fm (u2i key)