John Wiegley
dea2aed0b5
Untabified all source files
2010-06-11 17:02:25 -04:00
John Wiegley
d580079df8
Scrub account totals before applying --percent
2010-06-11 17:02:25 -04:00
John Wiegley
ab749742d9
Several corrections to transaction finalization
2010-06-10 16:33:46 -04:00
John Wiegley
92d2eb9574
Use ptr_deque for value_t::sequence_t
...
This is to work around undefined behavior according to the Standard,
[lib.res.on.functions]/2:
"In particular, the effects are undefined in the following cases: [..]
- if an incomplete type (3.9) is used as a template argument when
instantiating a template component."
2010-06-10 16:32:24 -04:00
John Wiegley
3e05dce72e
gain/loss posting based on a virtual should also be
2010-06-10 14:45:44 -04:00
John Wiegley
bea90a2b98
Fixed the "generate" command
2010-06-10 14:28:07 -04:00
John Wiegley
685b12d8d3
Allow fixated costs, as well as prices
...
You can now establish a fixated price automatically by way of a fixated
cost. The syntax for this is:
2009/11/01 Sample
Assets 1 apple @ =$0.10
Equity
2010-06-10 12:29:58 -04:00
John Wiegley
a2bcfe4338
Increase item_t's flags to 16-bit
2010-06-10 12:04:00 -04:00
John Wiegley
4da78bb881
Corrected behavior of "draft" argument parser
2010-06-10 11:34:09 -04:00
John Wiegley
920dbc3f00
Corrected some math used by the budget command
2010-06-10 08:17:50 -04:00
John Wiegley
91a99fc88e
Fix to budgeting when fixed dates are involved
2010-06-10 08:17:32 -04:00
John Wiegley
77c5df4053
Errors involving value objects provide more context
2010-06-10 08:16:59 -04:00
John Wiegley
7be17fd779
Corrections to the way error strings are generated
2010-06-10 08:16:26 -04:00
John Wiegley
c28fad384c
The --anon option now anonymizes commodities
...
Fixes #227 / 1C90D8AF-830E-43C2-A5B7-D382F68EBDE3
2010-06-09 07:47:45 -04:00
John Wiegley
8637dd6ccf
New display flag AMOUNT_PRINT_ELIDE_COMMODITY_QUOTES
...
This is used by reports like register and balance so that separated
commodities without spaces in them needed be surrounded by quotes. It
will still occur in most other places.
Fixes #200 / F82CF11F-BFD9-4512-A562-202B04B68051
2010-06-09 06:45:07 -04:00
John Wiegley
da2f415f14
In value_t::print, pass along display flags
2010-06-09 06:36:40 -04:00
John Wiegley
158b9c92fd
Fixed minor rounding issue with priced commodities
2010-06-09 03:39:17 -04:00
John Wiegley
659741ac47
Insert <Rounding> posts within the affected xact
2010-06-09 02:25:53 -04:00
John Wiegley
fc09b69fb7
Fixed interaction with -V/X and grouped postings
...
With -s, -M/Y/D, -n, and a few other flags, postings get "grouped" into
meta-transactions that contain more postings than before. In all these
cases, -V use the date of the *earliest* posting in that group, which
makes little sense and caused breakages with -J. It now uses the latest
date.
Fixes #197 / 68EAF363-D0FE-4127-866E-A5AEBACB65D6
2010-06-09 02:22:50 -04:00
John Wiegley
524c98244e
Revert "Compute a posting's cost from an annotated price"
...
This reverts commit ae8ab81062 .
2010-06-08 04:44:35 -04:00
John Wiegley
be6cef93c4
A further simplification of -V and -X
...
With -X COMM, all values are computed in terms of COMM, regardless.
With -V, only secondary commodities will ever be computed, never
primaries. Further, if a secondary commodities has an associated price,
the valuation is done in terms of that price's commodity.
2010-06-07 09:49:17 -04:00
John Wiegley
ae8ab81062
Compute a posting's cost from an annotated price
2010-06-07 08:32:14 -04:00
John Wiegley
c85cf0d810
Fixed the way prices and costs are print'd
2010-06-07 08:32:14 -04:00
John Wiegley
a4d4f99794
amount_t::print and value_t::print now use flags
2010-06-07 08:32:13 -04:00
John Wiegley
8bd362b5d1
Minor optimization of how non --empty is handled
2010-06-07 08:32:13 -04:00
John Wiegley
39f9854e2c
Reworked the way that <Rounding> entries are shown
...
Fixes #188 / 53BCED29-F3B9-4E02-9A35-6C739ABB9662
2010-06-06 06:20:07 -04:00
John Wiegley
4197c88511
Corrected implementation of --percent
2010-06-06 06:05:51 -04:00
John Wiegley
41e4aea759
Made lookup of an account's "cost" a calc error
2010-06-06 06:03:56 -04:00
John Wiegley
6c01e4e090
Simplified some debug code
2010-06-06 05:04:22 -04:00
John Wiegley
7548c7fe2c
Corrected a typename visibility issue
2010-06-06 03:26:31 -04:00
John Wiegley
1417b40fdf
Enabled timers and logging in NDEBUG builds
2010-06-05 04:49:10 -04:00
John Wiegley
2c65b95e49
Made "expr" command a synonym for "parse"
2010-06-05 04:28:33 -04:00
John Wiegley
16f799767c
Value expression sequences are now comparable
...
Fixes #228 / ED9388D7-E523-40EB-841B-9AE9BAA70329
2010-06-05 03:26:43 -04:00
John Wiegley
63c7ba0322
Make --anon work with the print command
...
Fixes #226 / C1C1E731-D991-40ED-BE43-8ED55585386C
2010-06-05 02:46:22 -04:00
John Wiegley
653d2bd99a
Corrected a verification test
2010-06-05 02:18:01 -04:00
John Wiegley
b848ace768
Allow opt -NDEBUG build to complete without warnings
2010-06-04 06:02:00 -04:00
John Wiegley
f16a5382ed
commodity_t::find_price now uses memoization
...
This reduces the slowdown of using -V and -X from 36x in some cases down
to around 4-5x (for a debug build).
2010-06-04 05:16:30 -04:00
John Wiegley
a4a45cb4d6
any and all do not need to be reserved tokens
2010-06-04 03:40:39 -04:00
John Wiegley
b7e8cb9d54
More debug code cleanup
2010-06-04 03:34:56 -04:00
John Wiegley
7f7243ff93
Made the behavior of -V a bit more rational
...
It now only values non-primary commodities in terms of primary ones.
2010-06-04 03:11:14 -04:00
John Wiegley
2ae2dc86c6
Reorganized some debug code
2010-06-04 02:54:38 -04:00
John Wiegley
dbac09405f
Added new command: "pricemap [DATE]"
...
This outputs the pricing relationship of commodities in your data file,
as of DATE (optional), using the DOT language. If you have graphviz
installed, it can be viewed quite simply using:
ledger pricemap | dotty -
Each relationship in the graph shows the conversion factor to exchange
one commodity for another, and the date at which this factor was
determined.
2010-06-04 02:53:18 -04:00
John Wiegley
946534b102
A little bit of code cleanup
2010-06-04 02:23:04 -04:00
John Wiegley
45451125e3
Simplified some debug code
2010-06-03 23:23:12 -04:00
John Wiegley
f76b271d24
Removed a redundant check
2010-06-03 23:18:18 -04:00
John Wiegley
e8bf3da053
Short-circuit annotated commodity valuation
2010-06-03 17:59:43 -04:00
John Wiegley
e6c5837b2c
Corrected a debug statement
2010-06-03 17:57:09 -04:00
John Wiegley
27b86a5388
Avoid unnecessary object copying when using foreach
2010-06-03 17:43:38 -04:00
John Wiegley
0f1afdb3a7
Minor optimization of amount_t::operator*
2010-06-03 05:47:12 -04:00
John Wiegley
3a0f096cb6
Added new "addr" value expression function
...
It returns the address of the given object as an integer. This can be
used to uniquely compare entities.
2010-06-03 05:37:21 -04:00