{-# GHC_PRAGMA INTERFACE VERSION 5 #-} interface FiniteMap where import PreludeStdIO(Maybe) data FiniteMap a b {-# GHC_PRAGMA EmptyFM | Branch a b Int# (FiniteMap a b) (FiniteMap a b) #-} addListToFM :: Ord a => FiniteMap a b -> [(a, b)] -> FiniteMap a b {-# GHC_PRAGMA _A_ 1 _U_ 111 _N_ _N_ _N_ _N_ #-} addListToFM_C :: Ord a => (b -> b -> b) -> FiniteMap a b -> [(a, b)] -> FiniteMap a b {-# GHC_PRAGMA _A_ 4 _U_ 1211 _N_ _S_ "LLLS" _N_ _N_ #-} addToFM :: Ord a => FiniteMap a b -> a -> b -> FiniteMap a b {-# GHC_PRAGMA _A_ 1 _U_ 1122 _N_ _N_ _N_ _N_ #-} addToFM_C :: Ord a => (b -> b -> b) -> FiniteMap a b -> a -> b -> FiniteMap a b {-# GHC_PRAGMA _A_ 1 _U_ 12122 _N_ _N_ _N_ _N_ #-} delFromFM :: Ord a => FiniteMap a b -> a -> FiniteMap a b {-# GHC_PRAGMA _A_ 1 _U_ 112 _N_ _N_ _N_ _N_ #-} delListFromFM :: Ord a => FiniteMap a b -> [a] -> FiniteMap a b {-# GHC_PRAGMA _A_ 1 _U_ 122 _N_ _N_ _N_ _N_ #-} elemFM :: Ord a => a -> FiniteMap a b -> Bool {-# GHC_PRAGMA _A_ 1 _U_ 121 _N_ _N_ _N_ _N_ #-} eltsFM :: FiniteMap a b -> [b] {-# GHC_PRAGMA _A_ 1 _U_ 1 _N_ _S_ "S" _N_ _N_ #-} emptyFM :: FiniteMap a b {-# GHC_PRAGMA _A_ 0 _N_ _N_ _N_ _F_ _IF_ARGS_ 2 0 X 1 _/\_ u0 u1 -> _!_ _ORIG_ FiniteMap EmptyFM [u0, u1] [] _N_ #-} filterFM :: Ord a => (a -> b -> Bool) -> FiniteMap a b -> FiniteMap a b {-# GHC_PRAGMA _A_ 1 _U_ 221 _N_ _N_ _N_ _N_ #-} fmToList :: FiniteMap a b -> [(a, b)] {-# GHC_PRAGMA _A_ 1 _U_ 1 _N_ _S_ "S" _N_ _N_ #-} foldFM :: (a -> b -> c -> c) -> c -> FiniteMap a b -> c {-# GHC_PRAGMA _A_ 3 _U_ 221 _N_ _S_ "LLS" _N_ _N_ #-} intersectFM :: Ord a => FiniteMap a b -> FiniteMap a b -> FiniteMap a b {-# GHC_PRAGMA _A_ 1 _U_ 221 _N_ _N_ _N_ _N_ #-} intersectFM_C :: Ord a => (b -> b -> b) -> FiniteMap a b -> FiniteMap a b -> FiniteMap a b {-# GHC_PRAGMA _A_ 1 _U_ 2221 _N_ _N_ _N_ _N_ #-} isEmptyFM :: FiniteMap a b -> Bool {-# GHC_PRAGMA _A_ 1 _U_ 1 _N_ _S_ "S" _N_ _N_ #-} keysFM :: FiniteMap b a -> [b] {-# GHC_PRAGMA _A_ 1 _U_ 1 _N_ _S_ "S" _N_ _N_ #-} listToFM :: Ord a => [(a, b)] -> FiniteMap a b {-# GHC_PRAGMA _A_ 1 _U_ 11 _N_ _N_ _N_ _N_ #-} lookupFM :: Ord a => FiniteMap a b -> a -> Maybe b {-# GHC_PRAGMA _A_ 1 _U_ 112 _N_ _N_ _N_ _N_ #-} lookupWithDefaultFM :: Ord a => FiniteMap a b -> b -> a -> b {-# GHC_PRAGMA _A_ 1 _U_ 1112 _N_ _N_ _N_ _N_ #-} mapFM :: (b -> a -> c) -> FiniteMap b a -> FiniteMap b c {-# GHC_PRAGMA _A_ 2 _U_ 21 _N_ _S_ "LS" _N_ _N_ #-} minusFM :: Ord a => FiniteMap a b -> FiniteMap a b -> FiniteMap a b {-# GHC_PRAGMA _A_ 1 _U_ 221 _N_ _N_ _N_ _N_ #-} plusFM :: Ord a => FiniteMap a b -> FiniteMap a b -> FiniteMap a b {-# GHC_PRAGMA _A_ 1 _U_ 221 _N_ _N_ _N_ _N_ #-} plusFM_C :: Ord a => (b -> b -> b) -> FiniteMap a b -> FiniteMap a b -> FiniteMap a b {-# GHC_PRAGMA _A_ 1 _U_ 2221 _N_ _N_ _N_ _N_ #-} singletonFM :: a -> b -> FiniteMap a b {-# GHC_PRAGMA _A_ 2 _U_ 22 _N_ _N_ _N_ _N_ #-} sizeFM :: FiniteMap a b -> Int {-# GHC_PRAGMA _A_ 1 _U_ 1 _N_ _S_ "S" _F_ _IF_ARGS_ 2 1 C 6 _/\_ u0 u1 -> \ (u2 :: FiniteMap u0 u1) -> case u2 of { _ALG_ _ORIG_ FiniteMap EmptyFM -> _!_ I# [] [0#]; _ORIG_ FiniteMap Branch (u3 :: u0) (u4 :: u1) (u5 :: Int#) (u6 :: FiniteMap u0 u1) (u7 :: FiniteMap u0 u1) -> _!_ I# [] [u5]; _NO_DEFLT_ } _N_ #-}