summaryrefslogtreecommitdiff
path: root/Unique.hs
diff options
context:
space:
mode:
Diffstat (limited to 'Unique.hs')
-rw-r--r--Unique.hs5
1 files changed, 5 insertions, 0 deletions
diff --git a/Unique.hs b/Unique.hs
index d0d3eb1..1594b4a 100644
--- a/Unique.hs
+++ b/Unique.hs
@@ -1,8 +1,10 @@
1module Unique 1module Unique
2 ( UniqueFactory 2 ( UniqueFactory
3 , freshUniques 3 , freshUniques
4 , genUnique
4 , Unique 5 , Unique
5 , uniqueSymbol 6 , uniqueSymbol
7 , uniquePattern
6 , substituteUnique 8 , substituteUnique
7 , multipleOccurances 9 , multipleOccurances
8 ) where 10 ) where
@@ -25,6 +27,9 @@ genUnique (UniqueFactory c) = (Unique c, UniqueFactory (succ c))
25uniqueSymbol :: Unique -> Exp () 27uniqueSymbol :: Unique -> Exp ()
26uniqueSymbol (Unique i) = Var () (UnQual () (Ident () (showSym i))) 28uniqueSymbol (Unique i) = Var () (UnQual () (Ident () (showSym i)))
27 29
30uniquePattern :: Unique -> Pat ()
31uniquePattern (Unique i) = PVar () (Ident () (showSym i))
32
28showSym :: Integer -> String 33showSym :: Integer -> String
29showSym i = " u" ++ show i 34showSym i = " u" ++ show i
30 35