|
GHC.Exts | Portability | non-portable (GHC Extensions) | Stability | internal | Maintainer | cvs-ghc@haskell.org |
|
|
|
|
Contents |
- Representations of some basic types
- Primitive operations
- Fusion
- Linear implicit parameter support
|
|
Description |
GHC Extensions: this is the Approved Way to get at GHC-specific extensions.
|
|
Synopsis |
|
|
|
|
Representations of some basic types |
|
data Int |
A fixed-precision integer type with at least the range [-2^29
.. 2^29-1]. The exact range for a given implementation can be
determined by using minBound and maxBound from the Bounded
class. | Constructors | | Instances | |
|
|
data Word |
A Word is an unsigned integral type, with the same size as Int. | Constructors | | Instances | |
|
|
data Float |
Single-precision floating point numbers. | Constructors | | Instances | |
|
|
data Double |
Double-precision floating point numbers. | Constructors | | Instances | |
|
|
data Integer |
Arbitrary-precision integers. | Constructors | S# Int# | | J# Int# ByteArray# | |
| Instances | |
|
|
data Char |
The character type Char is an enumeration whose values represent
Unicode characters. A character literal in Haskell has type Char. To convert a Char to or from an Int, use toEnum and
fromEnum from the Enum class respectively (equivalently
ord and chr also do the trick).
| Constructors | | Instances | |
|
|
data Ptr a |
A value of type Ptr a represents a pointer to an object, or an
array of objects, which may be marshalled to or from Haskell values
of type a. The type a will normally be an instance of class
Storable which provides the marshalling operations. | Constructors | | Instances | |
|
|
data FunPtr a |
A value of type FunPtr a is a pointer to a piece of code. It
may be the pointer to a C function or to a Haskell function created
using foreign export dynamic. A foreign export
dynamic should normally be declared to produce a
FunPtr of the correct type. For example: type Compare = 'Int' -> 'Int' -> 'Bool'
foreign export dynamic mkCompare :: Compare -> 'IO' ('FunPtr' Compare) | Constructors | | Instances | |
|
|
Primitive operations |
|
shiftL# :: Word# -> Int# -> Word# |
|
shiftRL# :: Word# -> Int# -> Word# |
|
iShiftL# :: Int# -> Int# -> Int# |
|
iShiftRA# :: Int# -> Int# -> Int# |
|
iShiftRL# :: Int# -> Int# -> Int# |
|
Fusion |
|
build :: forall a . (forall b . (a -> b -> b) -> b -> b) -> [a] |
|
augment :: forall a . (forall b . (a -> b -> b) -> b -> b) -> [a] -> [a] |
|
Linear implicit parameter support |
|
class Splittable t where |
|
|
Produced by Haddock version 0.4 |