From 2510f011ffda0a6dda52dccc9ff1763a83b07617 Mon Sep 17 00:00:00 2001 From: Max Bolingbroke Date: Thu, 31 Jul 2008 01:23:53 +0000 Subject: [PATCH] Document FastTypes --- compiler/utils/FastTypes.lhs | 27 ++++++++++++++++++++++++--- 1 file changed, 24 insertions(+), 3 deletions(-) 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" -- 1.7.10.4