infix 0.1 → 0.1.1
raw patch · 2 files changed
+11/−11 lines, 2 filesdep −FiniteMapPVP: major bump suggested
API removals or changes: PVP suggests a major version bump
Dependencies removed: FiniteMap
API changes (from Hackage documentation)
- Language.Haskell.Infix: type InfixMap = FiniteMap HsQName Fixity
+ Language.Haskell.Infix: type InfixMap = Map HsQName Fixity
Files
- Language/Haskell/Infix.hs +9/−9
- infix.cabal +2/−2
Language/Haskell/Infix.hs view
@@ -33,7 +33,7 @@ ) where import Language.Haskell.Syntax-import Data.FiniteMap+import qualified Data.Map as M (Map, union, lookup, insert, empty, assocs) -------------------------------------------------------------------------------- @@ -43,16 +43,16 @@ deriving Show -- a mapping from qualified operator names to fixity information-type InfixMap = FiniteMap HsQName Fixity+type InfixMap = M.Map HsQName Fixity plusInfixMap :: InfixMap -> InfixMap -> InfixMap-plusInfixMap = plusFM+plusInfixMap = flip M.union emptyInfixMap :: InfixMap-emptyInfixMap = emptyFM+emptyInfixMap = M.empty infixMapToList :: InfixMap -> [(HsQName, Fixity)]-infixMapToList = fmToList+infixMapToList = M.assocs -- pretty crude illustration of infix map showInfixMap :: InfixMap -> String@@ -116,7 +116,7 @@ = return $ Fixity {fixity_assoc = HsAssocRight, fixity_prec = 5} getFixityQName name = do infixMap <- getInfixMap- case lookupFM infixMap name of+ case (flip M.lookup) infixMap name of Nothing -> return defaultFixity Just fixity -> return fixity @@ -386,7 +386,7 @@ insertLocalOps _fixity [] imap = imap insertLocalOps fixity (op:ops) infixMap = let opName = nameFromOp op- map1 = addToFM infixMap (UnQual opName) fixity+ map1 = M.insert (UnQual opName) fixity infixMap in insertLocalOps fixity ops map1 insertLocalInfixDecls imap (_ : decls) = insertLocalInfixDecls imap decls@@ -408,8 +408,8 @@ = let opName = nameFromOp op -- insert qualified and unqualified versions of the name -- into the infix table- map1 = addToFM infixMap (UnQual opName) fixity- map2 = addToFM map1 (Qual modName $ opName) fixity+ map1 = M.insert (UnQual opName) fixity infixMap+ map2 = M.insert (Qual modName $ opName) fixity map1 in insertTopOps modName fixity ops map2 -- class decls can have infix decls and these are treated in the same way -- as top-level infix decls
infix.cabal view
@@ -1,5 +1,5 @@ name: infix-version: 0.1+version: 0.1.1 synopsis: Infix expression re-parsing (for HsParser library) description: The Haskell parser does not consider the fixity of operators when parsing infix applications.@@ -22,7 +22,7 @@ maintainer: None homepage: http://www.cs.mu.oz.au/~bjpop/code.html -build-depends: base, containers, haskell-src, FiniteMap+build-depends: base, containers, haskell-src build-type: Simple tested-with: GHC==6.5