-- |
-- Module : Data.Char
-- Copyright : (c) The University of Glasgow 2001
--- License : BSD-style (see the file libraries/core/LICENSE)
+-- License : BSD-style (see the file libraries/base/LICENSE)
--
-- Maintainer : libraries@haskell.org
-- Stability : provisional
-- Portability : portable
--
--- $Id: Char.hs,v 1.3 2002/04/24 16:31:39 simonmar Exp $
---
-- The Char type and associated operations.
--
-----------------------------------------------------------------------------
import GHC.Base
import GHC.Show
import GHC.Read (readLitChar, lexLitChar)
+import GHC.Unicode
+import GHC.Num
#endif
#ifdef __HUGS__
-isLatin1 c = True
+import Hugs.Char
+#endif
+
+#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