X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=GHC%2FTypes.hs;h=ca63c3131e6318f1e9a3e866a99ea4483fcdfd53;hb=a7bd533a3dfb03c754e85333bf176fc8b4dfcbfa;hp=8040fec3a44ee4e6d75979ca35300a8c68a81914;hpb=a5e24955ea9e3bfb971a3d9523e01893049e4d7e;p=ghc-prim.git diff --git a/GHC/Types.hs b/GHC/Types.hs index 8040fec..ca63c31 100644 --- a/GHC/Types.hs +++ b/GHC/Types.hs @@ -1,16 +1,46 @@ +----------------------------------------------------------------------------- +-- | +-- Module : GHC.Types +-- Copyright : (c) The University of Glasgow 2009 +-- License : see libraries/ghc-prim/LICENSE +-- +-- Maintainer : cvs-ghc@haskell.org +-- Stability : internal +-- Portability : non-portable (GHC Extensions) +-- +-- GHC type definitions. +-- Use GHC.Exts from the base package instead of importing this +-- module directly. +-- +----------------------------------------------------------------------------- {-# OPTIONS_GHC -XNoImplicitPrelude #-} +{-# OPTIONS_GHC -XNoGenerics #-} -module GHC.Types (Char(..), Int(..), Float(..), Double(..), IO(..)) where +module GHC.Types (Bool(..), Char(..), Int(..), Float(..), Double(..), IO(..)) where import GHC.Prim -- We need Inl etc behind the scenes for the type definitions -import GHC.Generics () +import GHC.Generics () -- JPM: Do we really need this? infixr 5 : data [] a = [] | a : [a] +data Bool = False | True + +{-| The character type 'Char' is an enumeration whose values represent +Unicode (or equivalently ISO\/IEC 10646) characters +(see for details). +This set extends the ISO 8859-1 (Latin-1) character set +(the first 256 charachers), which is itself an extension of the ASCII +character set (the first 128 characters). +A character literal in Haskell has type 'Char'. + +To convert a 'Char' to or from the corresponding 'Int' value defined +by Unicode, use 'Prelude.toEnum' and 'Prelude.fromEnum' from the +'Prelude.Enum' class respectively (or equivalently 'ord' and 'chr'). +-} data Char = C# Char# data Int = I# Int#