@@ -5,6 +5,7 @@
5module Data.Fixed
5module Data.Fixed
8 , fromNumber
9 , fromNumber
9 , toNumber
10 , toNumber
10 , fromString
11 , fromString
@@ -36,6 +37,7 @@ import Prelude
37import Control.MonadZero (guard)
38import Control.MonadZero (guard)
38import Data.Array (replicate)
39import Data.Array (replicate)
40+import Data.BigInt (BigInt)
39import Data.BigInt as BigInt
41import Data.BigInt as BigInt
40import Data.Int as Int
42import Data.Int as Int
41import Data.Maybe (Maybe(..))
43import Data.Maybe (Maybe(..))
@@ -169,7 +171,15 @@ fromInt
169 . KnownPrecision precision
171 . KnownPrecision precision
171 -> Fixed precision
173 -> Fixed precision
174+fromInt = fromBigInt <<< BigInt.fromInt
176+-- | Create a `Fixed` representation of a `BigInt`.
179+ . KnownPrecision precision
172−fromInt i = Fixed (BigInt.fromInt i * reflectPrecision (PProxy :: PProxy precision))
182+fromBigInt i = Fixed (i * reflectPrecision (PProxy :: PProxy precision))
174-- | Approximate a `Number` as a `Fixed` value with the specified precision.
184-- | Approximate a `Number` as a `Fixed` value with the specified precision.