{-# LANGUAGE Safe #-} {-# LANGUAGE MagicHash #-} {-# OPTIONS_HADDOCK not-home #-} -- | -- -- Module : GHC.Float -- Copyright : (c) The University of Glasgow 1994-2002 -- Portions obtained from hbc (c) Lennart Augusstson -- License : see libraries/base/LICENSE -- -- Maintainer : ghc-devs@haskell.org -- Stability : internal -- Portability : non-portable (GHC Extensions) -- -- The types 'Float' and 'Double', the classes 'Floating' and 'RealFloat' and -- casting between Word32 and Float and Word64 and Double. -- module GHC.Float (-- * Classes Floating(..), RealFloat(..), -- * 'Float' Float(..), Float#, -- ** Conversion float2Int, int2Float, word2Float, integerToFloat#, naturalToFloat#, rationalToFloat, castWord32ToFloat, castFloatToWord32, castWord32ToFloat#, castFloatToWord32#, float2Double, -- ** Operations floorFloat, ceilingFloat, truncateFloat, roundFloat, properFractionFloat, -- ** Predicate isFloatDenormalized, isFloatFinite, isFloatInfinite, isFloatNaN, isFloatNegativeZero, -- ** Comparison gtFloat, geFloat, leFloat, ltFloat, -- ** Arithmetic plusFloat, minusFloat, timesFloat, divideFloat, negateFloat, expFloat, expm1Float, logFloat, log1pFloat, sqrtFloat, fabsFloat, sinFloat, cosFloat, tanFloat, asinFloat, acosFloat, atanFloat, sinhFloat, coshFloat, tanhFloat, asinhFloat, acoshFloat, atanhFloat, -- * 'Double' Double(..), Double#, -- ** Conversion double2Int, int2Double, word2Double, integerToDouble#, naturalToDouble#, rationalToDouble, castWord64ToDouble, castDoubleToWord64, castWord64ToDouble#, castDoubleToWord64#, double2Float, -- ** Operations floorDouble, ceilingDouble, truncateDouble, roundDouble, properFractionDouble, -- ** Predicate isDoubleDenormalized, isDoubleFinite, isDoubleInfinite, isDoubleNaN, isDoubleNegativeZero, -- ** Comparison gtDouble, geDouble, leDouble, ltDouble, -- ** Arithmetic plusDouble, minusDouble, timesDouble, divideDouble, negateDouble, expDouble, expm1Double, logDouble, log1pDouble, sqrtDouble, fabsDouble, sinDouble, cosDouble, tanDouble, asinDouble, acosDouble, atanDouble, sinhDouble, coshDouble, tanhDouble, asinhDouble, acoshDouble, atanhDouble, -- * Formatting showFloat, FFFormat(..), formatRealFloat, formatRealFloatAlt, showSignedFloat, -- * Operations log1mexpOrd, roundTo, floatToDigits, integerToBinaryFloat', fromRat, fromRat', roundingMode#, -- * Monomorphic equality operators -- | See GHC.Classes#matching_overloaded_methods_in_rules eqFloat, eqDouble, -- * Internal -- | These may vanish in a future release clamp, expt, expts, expts10, fromRat'', maxExpt, maxExpt10, minExpt, powerDouble, powerFloat, stgDoubleToWord64, stgFloatToWord32, stgWord64ToDouble, stgWord32ToFloat ) where import GHC.Internal.Float