1 {-# GHC_PRAGMA INTERFACE VERSION 6 #-}
3 import FiniteMap(FiniteMap, keysFM, sizeFM)
4 data FiniteMap a b {-# GHC_PRAGMA EmptyFM | Branch a b Int# (FiniteMap a b) (FiniteMap a b) #-}
5 data Set a {-# GHC_PRAGMA MkSet (FiniteMap a ()) #-}
6 cardinality :: Set a -> Int
7 {-# GHC_PRAGMA _A_ 1 _U_ 1 _N_ _S_ "U(S)" {_A_ 1 _U_ 1 _N_ _N_ _F_ _IF_ARGS_ 1 0 X 1 _/\_ u0 -> _TYAPP_ _TYAPP_ _ORIG_ FiniteMap sizeFM { u0 } { () } _N_} _F_ _IF_ARGS_ 1 1 C 3 _/\_ u0 -> \ (u1 :: Set u0) -> case u1 of { _ALG_ _ORIG_ Set MkSet (u2 :: FiniteMap u0 ()) -> _APP_ _TYAPP_ _TYAPP_ _ORIG_ FiniteMap sizeFM { u0 } { () } [ u2 ]; _NO_DEFLT_ } _N_ #-}
8 elementOf :: Ord a => a -> Set a -> Bool
9 {-# GHC_PRAGMA _A_ 1 _U_ 121 _N_ _N_ _N_ _N_ #-}
11 {-# GHC_PRAGMA _A_ 0 _N_ _N_ _N_ _N_ _N_ #-}
12 intersect :: Ord a => Set a -> Set a -> Set a
13 {-# GHC_PRAGMA _A_ 1 _U_ 211 _N_ _N_ _N_ _N_ #-}
14 isEmptySet :: Set a -> Bool
15 {-# GHC_PRAGMA _A_ 1 _U_ 1 _N_ _S_ "U(S)" {_A_ 1 _U_ 1 _N_ _N_ _N_ _N_} _N_ _N_ #-}
16 keysFM :: FiniteMap b a -> [b]
17 {-# GHC_PRAGMA _A_ 1 _U_ 1 _N_ _S_ "S" _N_ _N_ #-}
18 mapSet :: Ord b => (a -> b) -> Set a -> Set b
19 {-# GHC_PRAGMA _A_ 1 _U_ 121 _N_ _N_ _N_ _N_ #-}
20 minusSet :: Ord a => Set a -> Set a -> Set a
21 {-# GHC_PRAGMA _A_ 1 _U_ 211 _N_ _N_ _N_ _N_ #-}
22 mkSet :: Ord a => [a] -> Set a
23 {-# GHC_PRAGMA _A_ 1 _U_ 11 _N_ _N_ _N_ _N_ #-}
24 setToList :: Set a -> [a]
25 {-# GHC_PRAGMA _A_ 1 _U_ 1 _N_ _S_ "U(S)" {_A_ 1 _U_ 1 _N_ _N_ _F_ _IF_ARGS_ 1 0 X 1 _/\_ u0 -> _TYAPP_ _TYAPP_ _ORIG_ FiniteMap keysFM { () } { u0 } _N_} _F_ _IF_ARGS_ 1 1 C 3 _/\_ u0 -> \ (u1 :: Set u0) -> case u1 of { _ALG_ _ORIG_ Set MkSet (u2 :: FiniteMap u0 ()) -> _APP_ _TYAPP_ _TYAPP_ _ORIG_ FiniteMap keysFM { () } { u0 } [ u2 ]; _NO_DEFLT_ } _N_ #-}
26 singletonSet :: a -> Set a
27 {-# GHC_PRAGMA _A_ 1 _U_ 2 _N_ _N_ _N_ _N_ #-}
28 sizeFM :: FiniteMap a b -> Int
29 {-# 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_ #-}
30 union :: Ord a => Set a -> Set a -> Set a
31 {-# GHC_PRAGMA _A_ 1 _U_ 211 _N_ _N_ _N_ _N_ #-}
32 unionManySets :: Ord a => [Set a] -> Set a
33 {-# GHC_PRAGMA _A_ 1 _U_ 22 _N_ _N_ _N_ _N_ #-}
34 instance (Eq a, Eq b) => Eq (FiniteMap a b)
35 {-# GHC_PRAGMA _M_ FiniteMap {-dfun-} _A_ 2 _U_ 22 _N_ _N_ _N_ _N_ #-}
36 instance Eq a => Eq (Set a)
37 {-# GHC_PRAGMA _M_ Set {-dfun-} _A_ 1 _U_ 2 _N_ _N_ _N_ _N_ #-}