-- | The Penny balance report module Penny.Cabin.Balance (balanceReport, O.defaultOptions, O.Options(..), defaultBalanceReport) where import qualified Penny.Cabin.Balance.Parser as P import qualified Penny.Cabin.Balance.Options as O import qualified Penny.Cabin.Balance.Help as H import qualified Penny.Cabin.Interface as I import qualified Penny.Shield as S balanceReport :: (S.Runtime -> O.Options) -> I.Report balanceReport getOpts = I.Report H.help "balance" pr where pr = do fn <- P.parser let f rt _ _ bs ps = fn rt (getOpts rt) bs ps return f defaultBalanceReport :: I.Report defaultBalanceReport = balanceReport O.defaultOptions