Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | Restored min() and max() virtual functions | John Wiegley | 2010-06-13 | 2 | -0/+20 | |
| | ||||||
* | When parsing date expressions, assume current year | John Wiegley | 2010-06-13 | 1 | -1/+1 | |
| | ||||||
* | Added a missing break statement | John Wiegley | 2010-06-13 | 1 | -0/+1 | |
| | | | | This broke the meaning of -p "this month". | |||||
* | Fixed several misplaced parentheses | John Wiegley | 2010-06-13 | 2 | -6/+6 | |
| | ||||||
* | Report error context in expressions more precisely | John Wiegley | 2010-06-13 | 6 | -17/+27 | |
| | ||||||
* | Removed an invalid called to VERIFY() | John Wiegley | 2010-06-13 | 1 | -1/+0 | |
| | ||||||
* | Fixes to scope.h for the sake of Boost.Serialization | John Wiegley | 2010-06-13 | 1 | -2/+21 | |
| | ||||||
* | Removed unneeded debug code | John Wiegley | 2010-06-13 | 1 | -5/+0 | |
| | ||||||
* | Completely reworked argument passing in expressions | John Wiegley | 2010-06-13 | 21 | -750/+533 | |
| | ||||||
* | In value_t::_dup, test if storage is uninitialized | John Wiegley | 2010-06-13 | 1 | -1/+1 | |
| | ||||||
* | For value_t, use boost::any to refer to objects | John Wiegley | 2010-06-13 | 3 | -52/+75 | |
| | ||||||
* | Moved value_t::label() to value.cc | John Wiegley | 2010-06-13 | 2 | -33/+40 | |
| | ||||||
* | Improved support for value_t::in_place* functions | John Wiegley | 2010-06-13 | 1 | -36/+26 | |
| | ||||||
* | Moved join_args function to precmd.cc | John Wiegley | 2010-06-13 | 1 | -0/+16 | |
| | ||||||
* | Changed display order of format exceptions | John Wiegley | 2010-06-13 | 1 | -0/+5 | |
| | ||||||
* | If a type context exists, confirm the result matches | John Wiegley | 2010-06-13 | 2 | -5/+19 | |
| | ||||||
* | Expression evaluations now have a "type context" | John Wiegley | 2010-06-13 | 4 | -38/+54 | |
| | | | | | | | | | Thus, an expression can know if the context in which it's being evaluated requires a string, and if so, determine it's output accordingly. For example: account ; returns the full name of the posting's account account.total ; here the context is SCOPE, so account is an obj | |||||
* | Added a new scope_value() inline helper function | John Wiegley | 2010-06-13 | 5 | -12/+12 | |
| | ||||||
* | Added support for assert, check and expr directives | John Wiegley | 2010-06-13 | 3 | -18/+161 | |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | These can occur in many places: ; Within an automated transaction, the assert is evaluated every time ; a posting is matched, with the expression context set to the ; matching posting. = /Food/ assert account("Expenses:Food").total >= $100 2010-06-12 Sample Expenses:Food $100 Assets:Checking ; At file scope, the expression is evaluated with "global" scope. assert account("Expenses:Food").total == $100 ; At the top of a transction, the assertion's scope is the ; transaction. After a posting, the scope is that posting. Note ; however that account totals are only adjusted after successful ; parsing of a transaction, which means that all the assertions below ; are true, even though it appears as though the middle posting should ; affect the total immediately (which is not the case). 2010-06-12 Sample 2 assert account("Expenses:Food").total == $100 Expenses:Food $50 assert account("Expenses:Food").total == $100 Assets:Checking assert account("Expenses:Food").total == $100 | |||||
* | Removed an unused function | John Wiegley | 2010-06-13 | 1 | -7/+0 | |
| | ||||||
* | Automated xacts may now contain "deferred tags" | John Wiegley | 2010-06-13 | 5 | -12/+64 | |
| | | | | | | | | | | | | | | | | For example, consider the following automated transaction: = /Food/ ; Next Date:: date + 10 (Expenses:Tax) 1.00 ; Next Date:: date + 20 This will add a metadata field named 'Next Date' to the _matching posting_, with a value that is 10 days later than that posting. It will also generate a new posting for that transaction, whose amount is the same as the matching posting. Further, it will add a 'Next Date' metadata tag to the _generated posting_ whose value is 20 days later than the date of the matching posting. | |||||
* | account_t::add_post resets family_details.gathered | John Wiegley | 2010-06-13 | 2 | -3/+15 | |
| | ||||||
* | account(NAME) function can lookup account objects | John Wiegley | 2010-06-13 | 4 | -6/+61 | |
| | | | | | | For example, just the word "account" returns the name of the current posting's account, but account("Expenses:Food") returns the actual account object, so that it's total may be accessed. | |||||
* | Option --input-date-format adds to candidate list | John Wiegley | 2010-06-13 | 1 | -2/+2 | |
| | ||||||
* | Reformatted a comment | John Wiegley | 2010-06-13 | 1 | -3/+3 | |
| | ||||||
* | Fixed a spelling error | John Wiegley | 2010-06-13 | 1 | -3/+1 | |
| | ||||||
* | Minor whitespace fix | John Wiegley | 2010-06-13 | 1 | -3/+3 | |
| | ||||||
* | Add support for typed metadata | John Wiegley | 2010-06-12 | 6 | -23/+49 | |
| | | | | | | | | | | The metadata construct 'Key: Value' is now just a special case for 'Key:: "Value"'. Another after a :: in metadata setting is parsed as a full value expression and typed as such. For example: ; Key:: $400 + $500 ledger -l 'tag("Key") < $1000' | |||||
* | Improved value expression function 'commodity' | John Wiegley | 2010-06-12 | 3 | -8/+24 | |
| | | | | | | Without arguments -- and in a posting -- it is equivalent to "commodity(amount)". Otherwise, it returns the commodity symbol of its argument. | |||||
* | Store metadata values as value_t instead of string | John Wiegley | 2010-06-12 | 8 | -48/+50 | |
| | ||||||
* | The --anon option now randomizes its effect | John Wiegley | 2010-06-12 | 2 | -6/+19 | |
| | ||||||
* | Include serialize_ptr_deque, for Boost.Serialization | John Wiegley | 2010-06-12 | 1 | -1/+1 | |
| | ||||||
* | Untabified all source files | John Wiegley | 2010-06-11 | 110 | -5397/+5397 | |
| | ||||||
* | Scrub account totals before applying --percent | John Wiegley | 2010-06-11 | 1 | -1/+2 | |
| | ||||||
* | Several corrections to transaction finalization | John Wiegley | 2010-06-10 | 1 | -5/+13 | |
| | ||||||
* | Use ptr_deque for value_t::sequence_t | John Wiegley | 2010-06-10 | 4 | -7/+12 | |
| | | | | | | | | | 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." | |||||
* | gain/loss posting based on a virtual should also be | John Wiegley | 2010-06-10 | 1 | -1/+6 | |
| | ||||||
* | Fixed the "generate" command | John Wiegley | 2010-06-10 | 4 | -17/+11 | |
| | ||||||
* | Allow fixated costs, as well as prices | John Wiegley | 2010-06-10 | 3 | -6/+24 | |
| | | | | | | | | | 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 | |||||
* | Increase item_t's flags to 16-bit | John Wiegley | 2010-06-10 | 1 | -4/+4 | |
| | ||||||
* | Corrected behavior of "draft" argument parser | John Wiegley | 2010-06-10 | 1 | -37/+36 | |
| | ||||||
* | Corrected some math used by the budget command | John Wiegley | 2010-06-10 | 1 | -5/+5 | |
| | ||||||
* | Fix to budgeting when fixed dates are involved | John Wiegley | 2010-06-10 | 1 | -2/+1 | |
| | ||||||
* | Errors involving value objects provide more context | John Wiegley | 2010-06-10 | 2 | -9/+45 | |
| | ||||||
* | Corrections to the way error strings are generated | John Wiegley | 2010-06-10 | 6 | -6/+13 | |
| | ||||||
* | The --anon option now anonymizes commodities | John Wiegley | 2010-06-09 | 3 | -11/+69 | |
| | | | | Fixes #227 / 1C90D8AF-830E-43C2-A5B7-D382F68EBDE3 | |||||
* | New display flag AMOUNT_PRINT_ELIDE_COMMODITY_QUOTES | John Wiegley | 2010-06-09 | 5 | -7/+16 | |
| | | | | | | | | 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 | |||||
* | In value_t::print, pass along display flags | John Wiegley | 2010-06-09 | 1 | -1/+1 | |
| | ||||||
* | Fixed minor rounding issue with priced commodities | John Wiegley | 2010-06-09 | 1 | -4/+6 | |
| | ||||||
* | Insert <Rounding> posts within the affected xact | John Wiegley | 2010-06-09 | 1 | -11/+7 | |
| |