[project @ 1998-12-02 13:17:09 by simonm]
[ghc-hetmet.git] / ghc / lib / std / PrelCCall.lhs
1 %
2 % (c) The AQUA Project, Glasgow University, 1994-1996
3 %
4
5 \section[PrelCCall]{Module @PrelCCall@}
6
7 \begin{code}
8 {-# OPTIONS -fno-implicit-prelude #-}
9
10 module PrelCCall (
11         CCallable(..),
12         CReturnable(..)
13    ) where
14
15 import PrelBase
16 import PrelGHC
17 \end{code}
18
19 %*********************************************************
20 %*                                                      *
21 \subsection{Classes @CCallable@ and @CReturnable@}
22 %*                                                      *
23 %*********************************************************
24
25 \begin{code}
26 instance CCallable Char
27 instance CCallable   Char#
28 instance CReturnable Char
29
30 instance CCallable   Int
31 instance CCallable   Int#
32 instance CReturnable Int
33
34 -- DsCCall knows how to pass strings...
35 instance CCallable   [Char]
36
37 instance CCallable   Float
38 instance CCallable   Float#
39 instance CReturnable Float
40
41 instance CCallable   Double
42 instance CCallable   Double#
43 instance CReturnable Double
44
45 instance CReturnable () -- Why, exactly?
46 \end{code}
47