[project @ 2003-08-20 15:44:19 by panne]
[haskell-directory.git] / Data / Char.hs
index 360d364..001c83f 100644 (file)
@@ -42,11 +42,24 @@ module Data.Char
 import GHC.Base
 import GHC.Show
 import GHC.Read (readLitChar, lexLitChar)
+import GHC.Unicode
+import GHC.Num
 #endif
 
 #ifdef __HUGS__
-import Hugs.Prelude
+import Hugs.Char
+#endif
 
-isLatin1 c = True
+#ifdef __NHC__
+import Prelude
+import Prelude(Char,String)
+import Char
 #endif
 
+
+digitToInt :: Char -> Int
+digitToInt c
+ | isDigit c           =  ord c - ord '0'
+ | c >= 'a' && c <= 'f' =  ord c - ord 'a' + 10
+ | c >= 'A' && c <= 'F' =  ord c - ord 'A' + 10
+ | otherwise           =  error ("Char.digitToInt: not a digit " ++ show c) -- sigh