ChrisCScott / forecaster

A personal finances forecasting tool for Canadian retirement planning
Other
1 stars 2 forks source link

Elevate Timing attributes to all Account (Ledger?) objects #62

Closed ChrisCScott closed 5 years ago

ChrisCScott commented 5 years ago

We've recently added the Timing class as well as payment_timing attributes to Person and Debt and timing arguments to various methods. Since these are used so extensively, and are particularly useful for generic methods like max_inflows, consider adding a default_timing (or just timing?) attribute to Account, or perhaps even to Ledger (since Person and many SubForecast classes also use this).

Alternatively, add it to a subclass of Ledger (e.g. TransactionLedger? TimedLedger?) so that classes can selectively decide whether to inherit this functionality. (Perhaps not the best way to go, since most inherit from TaxSource, which doesn't necessarily require transaction timing information.)