diff options
author | simonmar <unknown> | 2001-06-28 14:15:04 +0000 |
---|---|---|
committer | simonmar <unknown> | 2001-06-28 14:15:04 +0000 |
commit | 4fb94ae5e5d632748fa2e6c35e259eccc5a1a3f4 (patch) | |
tree | dd5bc589e37efe68e84099180c16359a3acdb06b /libraries/base/Foreign/Storable.hs | |
download | haskell-4fb94ae5e5d632748fa2e6c35e259eccc5a1a3f4.tar.gz |
[project @ 2001-06-28 14:15:04 by simonmar]
First cut of the Haskell Core Libraries
=======================================
NOTE: it's not meant to be a working snapshot. The code is just here
to look at and so the NHC/Hugs guys can start playing around with it.
There is no build system. For GHC, the libraries tree is intended to
be grafted onto an existing fptools/ tree, and the Makefile in
libraries/core is a quick hack for that setup. This won't work at the
moment without the other changes needed in fptools/ghc, which I
haven't committed because they'll cause breakage. However, with the
changes required these sources build a working Prelude and libraries.
The layout mostly follows the one we agreed on, with one or two minor
changes; in particular the Data/Array layout probably isn't final
(there are several choices here).
The document is in libraries/core/doc as promised.
The cbits stuff is just a copy of ghc/lib/std/cbits and has
GHC-specific stuff in it. We should really separate the
compiler-specific C support from any compiler-independent C support
there might be.
Don't pay too much attention to the portability or stability status
indicated in the header of each source file at the moment - I haven't
gone through to make sure they're all consistent and make sense.
I'm using non-literate source outside of GHC/. Hope that's ok with
everyone.
We need to discuss how the build system is going to work...
Diffstat (limited to 'libraries/base/Foreign/Storable.hs')
-rw-r--r-- | libraries/base/Foreign/Storable.hs | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/libraries/base/Foreign/Storable.hs b/libraries/base/Foreign/Storable.hs new file mode 100644 index 0000000000..118a1a35f8 --- /dev/null +++ b/libraries/base/Foreign/Storable.hs @@ -0,0 +1,33 @@ +{-# OPTIONS -fno-implicit-prelude #-} +----------------------------------------------------------------------------- +-- +-- Module : Foreign.Storable +-- Copyright : (c) The FFI task force 2001 +-- License : BSD-style (see the file libraries/core/LICENSE) +-- +-- Maintainer : ffi@haskell.org +-- Stability : experimental +-- Portability : non-portable +-- +-- $Id: Storable.hs,v 1.1 2001/06/28 14:15:03 simonmar Exp $ +-- +-- A class for primitive marshaling +-- +----------------------------------------------------------------------------- + +module Foreign.Storable + ( Storable( + sizeOf, -- :: a -> Int + alignment, -- :: a -> Int + peekElemOff, -- :: Ptr a -> Int -> IO a + pokeElemOff, -- :: Ptr a -> Int -> a -> IO () + peekByteOff, -- :: Ptr b -> Int -> IO a + pokeByteOff, -- :: Ptr b -> Int -> a -> IO () + peek, -- :: Ptr a -> IO a + poke, -- :: Ptr a -> a -> IO () + destruct) -- :: Ptr a -> IO () + ) where + +#ifdef __GLASGOW_HASKELL__ +import GHC.Storable +#endif |