hledger-lib-1.40: A library providing the core functionality of hledger
Safe HaskellNone
LanguageHaskell2010

Hledger.Read.InputOptions

Description

Various options to use when reading journal files. Similar to CliOptions.inputflags, simplifies the journal-reading functions.

Synopsis

Types and helpers for input options

data InputOpts Source #

Constructors

InputOpts 

Fields

  • mformat_ :: Maybe StorageFormat

    a file/storage format to try, unless overridden by a filename prefix. Nothing means try all.

  • mrules_file_ :: Maybe FilePath

    a conversion rules file to use (when reading CSV)

  • aliases_ :: [String]

    account name aliases to apply

  • anon_ :: Bool

    do light obfuscation of the data ? Now corresponds to --obfuscate, not the old --anon flag.

  • new_ :: Bool

    read only new transactions since this file was last read ?

  • new_save_ :: Bool

    save latest new transactions state for next time ?

  • pivot_ :: String

    use the given field's value as the account name

  • forecast_ :: Maybe DateSpan

    span in which to generate forecast transactions

  • verbose_tags_ :: Bool

    add user-visible tags when generating/modifying transactions & postings ?

  • reportspan_ :: DateSpan

    a dirty hack keeping the query dates in InputOpts. This rightfully lives in ReportSpec, but is duplicated here.

  • auto_ :: Bool

    generate extra postings according to auto posting rules ?

  • infer_equity_ :: Bool

    infer equity conversion postings from costs ?

  • infer_costs_ :: Bool

    infer costs from equity conversion postings ? distinct from BalancingOpts{infer_balancing_costs_}

  • balancingopts_ :: BalancingOpts

    options for transaction balancing

  • strict_ :: Bool

    do extra correctness checks ?

  • _defer :: Bool

    internal flag: postpone checks, because we are processing multiple files ?

  • _ioDay :: Day

    today's date, for use with forecast transactions XXX this duplicates _rsDay, and should eventually be removed when it's not needed anymore.

Instances

Instances details
Show InputOpts Source # 
Instance details

Defined in Hledger.Read.InputOptions

Methods

showsPrec :: Int -> InputOpts -> ShowS

show :: InputOpts -> String

showList :: [InputOpts] -> ShowS

HasBalancingOpts InputOpts Source # 
Instance details

Defined in Hledger.Read.InputOptions

HasInputOpts InputOpts Source # 
Instance details

Defined in Hledger.Read.InputOptions

Methods

inputOpts :: Lens' InputOpts InputOpts Source #

aliases :: Lens' InputOpts [String] Source #

anon__ :: Lens' InputOpts Bool Source #

auto__ :: Lens' InputOpts Bool Source #

balancingopts :: Lens' InputOpts BalancingOpts Source #

defer :: Lens' InputOpts Bool Source #

forecast :: Lens' InputOpts (Maybe DateSpan) Source #

infer_costs :: Lens' InputOpts Bool Source #

infer_equity :: Lens' InputOpts Bool Source #

ioDay :: Lens' InputOpts Day Source #

mformat :: Lens' InputOpts (Maybe StorageFormat) Source #

mrules_file :: Lens' InputOpts (Maybe FilePath) Source #

new__ :: Lens' InputOpts Bool Source #

new_save :: Lens' InputOpts Bool Source #

pivot :: Lens' InputOpts String Source #

reportspan :: Lens' InputOpts DateSpan Source #

strict :: Lens' InputOpts Bool Source #

verbose_tags :: Lens' InputOpts Bool Source #

class HasInputOpts c where Source #

Minimal complete definition

inputOpts

Methods

inputOpts :: Lens' c InputOpts Source #

aliases :: Lens' c [String] Source #

anon__ :: Lens' c Bool Source #

auto__ :: Lens' c Bool Source #

balancingopts :: Lens' c BalancingOpts Source #

defer :: Lens' c Bool Source #

forecast :: Lens' c (Maybe DateSpan) Source #

infer_costs :: Lens' c Bool Source #

infer_equity :: Lens' c Bool Source #

ioDay :: Lens' c Day Source #

mformat :: Lens' c (Maybe StorageFormat) Source #

mrules_file :: Lens' c (Maybe FilePath) Source #

new__ :: Lens' c Bool Source #

new_save :: Lens' c Bool Source #

pivot :: Lens' c String Source #

reportspan :: Lens' c DateSpan Source #

strict :: Lens' c Bool Source #

verbose_tags :: Lens' c Bool Source #

Instances

Instances details
HasInputOpts InputOpts Source # 
Instance details

Defined in Hledger.Read.InputOptions

Methods

inputOpts :: Lens' InputOpts InputOpts Source #

aliases :: Lens' InputOpts [String] Source #

anon__ :: Lens' InputOpts Bool Source #

auto__ :: Lens' InputOpts Bool Source #

balancingopts :: Lens' InputOpts BalancingOpts Source #

defer :: Lens' InputOpts Bool Source #

forecast :: Lens' InputOpts (Maybe DateSpan) Source #

infer_costs :: Lens' InputOpts Bool Source #

infer_equity :: Lens' InputOpts Bool Source #

ioDay :: Lens' InputOpts Day Source #

mformat :: Lens' InputOpts (Maybe StorageFormat) Source #

mrules_file :: Lens' InputOpts (Maybe FilePath) Source #

new__ :: Lens' InputOpts Bool Source #

new_save :: Lens' InputOpts Bool Source #

pivot :: Lens' InputOpts String Source #

reportspan :: Lens' InputOpts DateSpan Source #

strict :: Lens' InputOpts Bool Source #

verbose_tags :: Lens' InputOpts Bool Source #

forecastPeriod :: InputOpts -> Journal -> Maybe DateSpan Source #

Get the Maybe the DateSpan to generate forecast options from. This begins on: - the start date supplied to the `--forecast` argument, if present - otherwise, the later of - the report start date if specified with -b-pdate: - the day after the latest normal (non-periodic) transaction in the journal, if any - otherwise today. It ends on: - the end date supplied to the `--forecast` argument, if present - otherwise the report end date if specified with -e-pdate: - otherwise 180 days (6 months) from today.