X-Git-Url: http://git.megacz.com/?p=ghc-hetmet.git;a=blobdiff_plain;f=compiler%2Futils%2FFastTypes.lhs;h=ace46e6e1b344830f4c8536cfc83de296f6d2f0b;hp=a69ab25671ab99a20287fd0c4acb7c16d3b10639;hb=16b9e80dc14db24509f051f294b5b51943285090;hpb=30c122df62ec75f9ed7f392f24c2925675bf1d06 diff --git a/compiler/utils/FastTypes.lhs b/compiler/utils/FastTypes.lhs index a69ab25..ace46e6 100644 --- a/compiler/utils/FastTypes.lhs +++ b/compiler/utils/FastTypes.lhs @@ -10,8 +10,15 @@ --it's only used in an appropriate pattern of efficiency. --(it also makes `let`s and `case`s stricter...) +-- | Fast integers, characters and pointer types for use in many parts of GHC module FastTypes ( - FastInt, _ILIT, iBox, iUnbox, + -- * FastInt + FastInt, + + -- ** Getting in and out of FastInt + _ILIT, iBox, iUnbox, + + -- ** Arithmetic on FastInt (+#), (-#), (*#), quotFastInt, negateFastInt, --quotRemFastInt is difficult because unboxed values can't --be tupled, but unboxed tuples aren't portable. Just use @@ -32,11 +39,25 @@ module FastTypes ( bitAndFastInt, bitOrFastInt, --add more operations to this file as you need them + -- * FastChar + FastChar, + + -- ** Getting in and out of FastChar + _CLIT, cBox, cUnbox, + + -- ** Operations on FastChar + fastOrd, fastChr, eqFastChar, --note, fastChr is "unsafe"Chr: it doesn't check for --character values above the range of Unicode - FastChar, _CLIT, cBox, cUnbox, fastOrd, fastChr, eqFastChar, - FastPtr, pBox, pUnbox, castFastPtr + -- * FastPtr + FastPtr, + + -- ** Getting in and out of FastPtr + pBox, pUnbox, + + -- ** Casting FastPtrs + castFastPtr ) where #include "HsVersions.h"