numeric-prelude-0.0.5: An experimental alternative hierarchy of numeric type classesSource codeContentsIndex
Number.NonNegative
PortabilityHaskell 98
Stabilitystable
Maintainerhaskell@henning-thielemann.de
Description
A type for non-negative numbers. It performs a run-time check at construction time (i.e. at run-time) and is a member of the non-negative number type class Numeric.NonNegative.Class.C.
Synopsis
data T a
fromNumber :: (Ord a, C a) => a -> T a
fromNumberMsg :: (Ord a, C a) => String -> a -> T a
fromNumberClip :: (Ord a, C a) => a -> T a
fromNumberUnsafe :: a -> T a
toNumber :: T a -> a
type Int = T Int
type Integer = T Integer
type Float = T Float
type Double = T Double
type Ratio a = T (T a)
type Rational = T Rational
Documentation
data T a Source
show/hide Instances
(Ord a, Num a, Bounded a) => Bounded (T a)
(Ord a, Num a, Enum a) => Enum (T a)
Eq a => Eq (T a)
(Ord a, Floating a) => Floating (T a)
(Ord a, Fractional a) => Fractional (T a)
Integral a => Integral (T a)
(Ord a, Num a) => Num (T a)
Ord a => Ord (T a)
Real a => Real (T a)
RealFrac a => RealFrac (T a)
Show a => Show (T a)
(Num a, Arbitrary a) => Arbitrary (T a)
(Ord a, Num a) => C (T a)
(Ord a, C a) => C (T a)
(Ord a, C a) => C (T a)
C a => C (T a)
(Ord a, C a) => C (T a)
(C a, C a) => C (T a)
(Ord a, C a) => C (T a)
(Ord a, C a) => C (T a)
C a => C (T a)
C a => C (T a)
C a => C (T a)
(Ord a, C a) => C (T a)
C a => C (T a)
(Ord a, C a) => C (T a)
fromNumber :: (Ord a, C a) => a -> T aSource
Convert a number to a non-negative number. If a negative number is given, an error is raised.
fromNumberMsgSource
:: (Ord a, C a)
=> String
-> a
-> T a
fromNumberClip :: (Ord a, C a) => a -> T aSource
Convert a number to a non-negative number. A negative number will be replaced by zero. Use this function with care since it may hide bugs.
fromNumberUnsafe :: a -> T aSource
Wrap a number into a non-negative number without doing checks. This routine exists entirely for efficiency reasons and must be used only in cases where you are absolutely sure, that the input number is non-negative.
toNumber :: T a -> aSource
type Int = T IntSource
type Integer = T IntegerSource
type Float = T FloatSource
type Double = T DoubleSource
type Ratio a = T (T a)Source
type Rational = T RationalSource
Produced by Haddock version 2.6.0