-----------------------------------------------------------------------------
---
+-- |
-- Module : GHC.Exts
--- Copyright : (c) The University of Glasgow 2001
--- License : BSD-style (see the file libraries/core/LICENSE)
+-- Copyright : (c) The University of Glasgow 2002
+-- License : see libraries/base/LICENSE
--
--- Maintainer : libraries@haskell.org
--- Stability : experimental
--- Portability : non-portable
---
--- $Id: Exts.hs,v 1.1 2002/01/02 14:40:10 simonmar Exp $
+-- Maintainer : cvs-ghc@haskell.org
+-- Stability : internal
+-- Portability : non-portable (GHC Extensions)
--
--- GHC Extensions: this is the Approved Way to get at GHC-specific stuff.
+-- GHC Extensions: this is the Approved Way to get at GHC-specific extensions.
--
-----------------------------------------------------------------------------
module GHC.Exts
(
- -- the representation of some basic types:
+ -- * Representations of some basic types
Int(..),Word(..),Float(..),Double(..),Integer(..),Char(..),
+ Ptr(..), FunPtr(..),
+
+ -- * Primitive operations
+ module GHC.Prim,
+ shiftL#, shiftRL#, iShiftL#, iShiftRA#, iShiftRL#,
- -- Fusion
+ -- * Fusion
build, augment,
- -- shifty wrappers from GHC.Base
- shiftL#, shiftRL#, iShiftL#, iShiftRA#, iShiftRL#,
+ -- * Linear implicit parameter support
+ Splittable(..),
+
+ -- * Debugging
+ breakpoint,
- -- and finally, all the unboxed primops of GHC!
- module GHC.Prim
+ -- * Ids with special behaviour
+ lazy, inline,
) where
-import {-# SOURCE #-} GHC.Prim
+import Prelude
+
+import GHC.Prim
import GHC.Base
import GHC.Word
import GHC.Num
import GHC.Float
+import GHC.Ptr
+
+class Splittable t where
+ split :: t -> (t,t)