hledger-lib-0.26: Core data types, parsers and utilities for the hledger accounting tool.

Safe HaskellNone



Options common to most hledger reports.



data ReportOpts Source

Standard options for customising report filtering and output, corresponding to hledger's command-line options and query language arguments. Used in hledger-lib and above.

data BalanceType Source

Which balance is being shown in a multi-column balance report.



The change of balance in each period.


The accumulated balance at each period's end, starting from zero at the report start date.


The historical balance at each period's end, starting from the account balances at the report start date.

data AccountListMode Source

Should accounts be displayed: in the command's default style, hierarchically, or as a flat list ?



tree_ :: ReportOpts -> Bool Source

Legacy-compatible convenience aliases for accountlistmode_.

dateSpanFromOpts :: Day -> ReportOpts -> DateSpan Source

Figure out the date span we should report on, based on any beginendperiod options provided. A period option will cause begin and end options to be ignored.

intervalFromOpts :: ReportOpts -> Interval Source

Figure out the reporting interval, if any, specified by the options. --period overrides --daily overrides --weekly overrides --monthly etc.

clearedValueFromOpts :: ReportOpts -> Maybe ClearedStatus Source

Get a maybe boolean representing the last cleared/uncleared option if any.

whichDateFromOpts :: ReportOpts -> WhichDate Source

Report which date we will report on based on --date2.

journalSelectingAmountFromOpts :: ReportOpts -> Journal -> Journal Source

Convert this journal's postings' amounts to the cost basis amounts if specified by options.

queryFromOpts :: Day -> ReportOpts -> Query Source

Convert report options and arguments to a query.

queryFromOptsOnly :: Day -> ReportOpts -> Query Source

Convert report options to a query, ignoring any non-flag command line arguments.

queryOptsFromOpts :: Day -> ReportOpts -> [QueryOpt] Source

Convert report options and arguments to query options.

transactionDateFn :: ReportOpts -> Transaction -> Day Source

Select the Transaction date accessor based on --date2.

postingDateFn :: ReportOpts -> Posting -> Day Source

Select the Posting date accessor based on --date2.