%
+% (c) The University of Glasgow 2006
% (c) The AQUA Project, Glasgow University, 1994-1998
%
\section[UniqSet]{Specialised sets, for things with @Uniques@}
Basically, the things need to be in class @Uniquable@.
\begin{code}
+{-# OPTIONS -w #-}
+-- The above warning supression flag is a temporary kludge.
+-- While working on this module you are encouraged to remove it and fix
+-- any warnings in the module. See
+-- http://hackage.haskell.org/trac/ghc/wiki/Commentary/CodingStyle#Warnings
+-- for details
+
module UniqSet (
UniqSet, -- abstract type: NOT
#include "HsVersions.h"
-import {-# SOURCE #-} Name ( Name )
-
import Maybes ( maybeToBool )
import UniqFM
import Unique ( Unique, Uniquable(..) )
{-# SPECIALIZE
addOneToUniqSet :: UniqSet Unique -> Unique -> UniqSet Unique
#-}
+
+-- These next three specialisations disabled as importing Name creates a
+-- loop, and getting the Uniquable Name instance in particular is tricky.
+
{- SPECIALIZE
elementOfUniqSet :: Name -> UniqSet Name -> Bool
, Unique -> UniqSet Unique -> Bool