clarify built-in commodities rounding
This commit is contained in:
parent
f83590021a
commit
099a1de3b6
@ -100,8 +100,10 @@ module Hledger.Data.Amount (
|
||||
) where
|
||||
|
||||
import Data.Char (isDigit)
|
||||
#ifndef DOUBLE
|
||||
import Data.Decimal
|
||||
#ifdef DOUBLE
|
||||
roundTo = flip const
|
||||
#else
|
||||
import Data.Decimal (roundTo)
|
||||
#endif
|
||||
import Data.Function (on)
|
||||
import Data.List
|
||||
@ -150,10 +152,8 @@ nullamt = amount
|
||||
missingamt :: Amount
|
||||
missingamt = amount{acommodity="AUTO"}
|
||||
|
||||
-- handy amount constructors for tests
|
||||
#ifdef DOUBLE
|
||||
roundTo = flip const
|
||||
#endif
|
||||
-- Handy amount constructors for tests.
|
||||
-- usd/eur/gbp round their argument to a whole number of pennies/cents.
|
||||
num n = amount{acommodity="", aquantity=n}
|
||||
usd n = amount{acommodity="$", aquantity=roundTo 2 n, astyle=amountstyle{asprecision=2}}
|
||||
eur n = amount{acommodity="€", aquantity=roundTo 2 n, astyle=amountstyle{asprecision=2}}
|
||||
|
||||
Loading…
Reference in New Issue
Block a user