Add DVarSet - a deterministic set of Vars
authorBartosz Nitka <niteria@gmail.com>
Sat, 21 Nov 2015 14:49:14 +0000 (15:49 +0100)
committerBen Gamari <ben@smart-cactus.org>
Sat, 21 Nov 2015 14:49:14 +0000 (15:49 +0100)
commit6664ab8356f00ef0b2186f30a0d29a9c0228c045
treeb65162a8759d3e353bcc79dcbcf9b1990374bc48
parent192dd068890701a7692890677d4cbf9f2abdb64a
Add DVarSet - a deterministic set of Vars

This implements `DVarSet`, a deterministic set of Vars, with an
interface very similar to `VarSet` with a couple of functions missing.

I will need this in changes that follow, one of them will be about
changing the type of the set of Vars that `RuleInfo` holds to make the
free variable computation deterministic.

Test Plan:
./validate
I can add new tests if anyone wants me to.

Reviewers: simonpj, simonmar, austin, bgamari

Reviewed By: simonmar, bgamari

Subscribers: thomie

Differential Revision: https://phabricator.haskell.org/D1487

GHC Trac Issues: #4012
compiler/basicTypes/VarSet.hs
compiler/ghc.cabal.in
compiler/ghc.mk
compiler/utils/UniqDFM.hs
compiler/utils/UniqDSet.hs [new file with mode: 0644]