mirror of
https://github.com/simonmichael/hledger.git
synced 2024-09-20 10:47:29 +03:00
24 lines
544 B
Haskell
24 lines
544 B
Haskell
{-|
|
|
|
|
An 'Account' stores, for efficiency: an 'AccountName', all transactions in
|
|
the account (excluding subaccounts), and the account balance (including
|
|
subaccounts).
|
|
|
|
-}
|
|
|
|
module Ledger.Account
|
|
where
|
|
import Ledger.Utils
|
|
import Ledger.Types
|
|
import Ledger.Amount
|
|
|
|
|
|
instance Show Account where
|
|
show (Account a ts b) = printf "Account %s with %d txns and %s balance" a (length ts) (showMixedAmount b)
|
|
|
|
instance Eq Account where
|
|
(==) (Account n1 t1 b1) (Account n2 t2 b2) = n1 == n2 && t1 == t2 && b1 == b2
|
|
|
|
nullacct = Account "" [] nullamt
|
|
|