X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=ghc%2Fcompiler%2FbasicTypes%2FOccName.lhs;h=756d6a955a7d9f9068fad4152bdcaf29d1eaea32;hb=10dd2a6d050e4779782800184014b8738fadc679;hp=ea58cbcac52d7ad89d140f22f5be5c33014876d4;hpb=741f70aa18baec781bd6c275e36f918b4dcdae75;p=ghc-hetmet.git diff --git a/ghc/compiler/basicTypes/OccName.lhs b/ghc/compiler/basicTypes/OccName.lhs index ea58cbc..756d6a9 100644 --- a/ghc/compiler/basicTypes/OccName.lhs +++ b/ghc/compiler/basicTypes/OccName.lhs @@ -35,7 +35,7 @@ module OccName ( mkDataConWrapperOcc, mkDataConWorkerOcc, isVarOcc, isTvOcc, isTcOcc, isDataOcc, isDataSymOcc, isSymOcc, isValOcc, - parenSymOcc, reportIfUnused, + parenSymOcc, reportIfUnused, isTcClsName, isVarName, occNameFS, occNameString, occNameUserString, occNameSpace, occNameFlavour, briefOccNameFlavour, @@ -52,8 +52,8 @@ module OccName ( -- The basic form of names isLexCon, isLexVar, isLexId, isLexSym, isLexConId, isLexConSym, isLexVarId, isLexVarSym, - isLowerISO, isUpperISO - + isLowerISO, isUpperISO, + startsVarSym, startsVarId, startsConSym, startsConId ) where #include "HsVersions.h" @@ -146,11 +146,21 @@ srcDataName = DataName -- Haskell-source data constructors should be tvName = TvName varName = VarName +isTcClsName :: NameSpace -> Bool +isTcClsName TcClsName = True +isTcClsName _ = False + +isVarName :: NameSpace -> Bool -- Variables or type variables, but not constructors +isVarName TvName = True +isVarName VarName = True +isVarName other = False + + nameSpaceString :: NameSpace -> String -nameSpaceString DataName = "Data constructor" -nameSpaceString VarName = "Variable" -nameSpaceString TvName = "Type variable" -nameSpaceString TcClsName = "Type constructor or class" +nameSpaceString DataName = "data constructor" +nameSpaceString VarName = "variable" +nameSpaceString TvName = "type variable" +nameSpaceString TcClsName = "type constructor or class" \end{code}