X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=ghc%2Flib%2Fcompat%2FCompat%2FUnicode.hs;fp=ghc%2Flib%2Fcompat%2FCompat%2FUnicode.hs;h=0000000000000000000000000000000000000000;hb=0065d5ab628975892cea1ec7303f968c3338cbe1;hp=2637fac8182957aff12337cea4fe82eb708fdd7c;hpb=28a464a75e14cece5db40f2765a29348273ff2d2;p=ghc-hetmet.git diff --git a/ghc/lib/compat/Compat/Unicode.hs b/ghc/lib/compat/Compat/Unicode.hs deleted file mode 100644 index 2637fac..0000000 --- a/ghc/lib/compat/Compat/Unicode.hs +++ /dev/null @@ -1,66 +0,0 @@ -{-# OPTIONS -cpp #-} -module Compat.Unicode ( - GeneralCategory(..), generalCategory, isPrint, isUpper - ) where - -#if __GLASGOW_HASKELL__ > 604 - -import Data.Char (GeneralCategory(..), generalCategory,isPrint,isUpper) - -#else - -import Foreign.C ( CInt ) -import Data.Char ( ord ) - --- | Unicode General Categories (column 2 of the UnicodeData table) --- in the order they are listed in the Unicode standard. - -data GeneralCategory - = UppercaseLetter -- Lu Letter, Uppercase - | LowercaseLetter -- Ll Letter, Lowercase - | TitlecaseLetter -- Lt Letter, Titlecase - | ModifierLetter -- Lm Letter, Modifier - | OtherLetter -- Lo Letter, Other - | NonSpacingMark -- Mn Mark, Non-Spacing - | SpacingCombiningMark -- Mc Mark, Spacing Combining - | EnclosingMark -- Me Mark, Enclosing - | DecimalNumber -- Nd Number, Decimal - | LetterNumber -- Nl Number, Letter - | OtherNumber -- No Number, Other - | ConnectorPunctuation -- Pc Punctuation, Connector - | DashPunctuation -- Pd Punctuation, Dash - | OpenPunctuation -- Ps Punctuation, Open - | ClosePunctuation -- Pe Punctuation, Close - | InitialQuote -- Pi Punctuation, Initial quote - | FinalQuote -- Pf Punctuation, Final quote - | OtherPunctuation -- Po Punctuation, Other - | MathSymbol -- Sm Symbol, Math - | CurrencySymbol -- Sc Symbol, Currency - | ModifierSymbol -- Sk Symbol, Modifier - | OtherSymbol -- So Symbol, Other - | Space -- Zs Separator, Space - | LineSeparator -- Zl Separator, Line - | ParagraphSeparator -- Zp Separator, Paragraph - | Control -- Cc Other, Control - | Format -- Cf Other, Format - | Surrogate -- Cs Other, Surrogate - | PrivateUse -- Co Other, Private Use - | NotAssigned -- Cn Other, Not Assigned - deriving (Eq, Ord, Enum, Read, Show, Bounded) - --- | Retrieves the general Unicode category of the character. -generalCategory :: Char -> GeneralCategory -generalCategory c = toEnum (wgencat (fromIntegral (ord c))) - -foreign import ccall unsafe "u_gencat" - wgencat :: CInt -> Int - -isPrint c = iswprint (fromIntegral (ord c)) /= 0 -isUpper c = iswupper (fromIntegral (ord c)) /= 0 - -foreign import ccall unsafe "u_iswprint" - iswprint :: CInt -> CInt - -foreign import ccall unsafe "u_iswupper" - iswupper :: CInt -> CInt -#endif