John Wiegley
e2afc783db
Increased file copyrights to 2012
2012-02-29 22:32:23 -06:00
John Wiegley
2f50e30b89
Scopes can now provide a description of themselves
...
This isn't being used yet, but it likely will to improve the information
presented to users if their value expressions fail to compile or
evaluate.
2010-06-24 19:53:59 -04:00
John Wiegley
5ec85538d9
account_t::add_post resets family_details.gathered
2010-06-13 01:03:48 -04:00
John Wiegley
dea2aed0b5
Untabified all source files
2010-06-11 17:02:25 -04:00
John Wiegley
ab416f759f
Updated copyrights to 2003-2010
2010-03-05 22:14:10 -05:00
John Wiegley
cd284f98c8
Added an ACCOUNT_GENERATED flag
2009-11-18 23:12:31 -05:00
John Wiegley
48dc654eda
Added has_xdata() methods for journal_t and xact_t
2009-11-12 05:11:06 -05:00
John Wiegley
394c7bd8df
Removed a bunch of empty comments
2009-11-08 14:59:11 -05:00
John Wiegley
3dc200983d
Moved xdata clearing code into each type proper
2009-11-05 02:27:39 -05:00
John Wiegley
40a430139e
Transactions, etc., are now accessed by iterators
2009-11-05 02:22:17 -05:00
John Wiegley
78e6770c4c
Segregated symbols into 5 separate namespaces
...
The different namespaces are:
Function Value expression functions, which receive a "context"
Option Command-line options
Precommand Commands which are invoked before reading the journal
Command Commands which are invoked after reading the journal
Directive Directives that occur at column 0 in a data file
This greatly eases the ability for Python uses to add intercept hooks to
change how the basic Ledger module functions. An example of what should
be possible soon:
import ledger
def my_foo_handler(value):
print "--foo received:", value
ledger.add_handler(ledger.Option, "foo=", my_foo_handler)
2009-11-04 20:40:48 -05:00
John Wiegley
b14c814fec
Whitespace fix
2009-11-04 20:40:42 -05:00
John Wiegley
ff5506801d
Whitespace fix
2009-11-02 17:19:53 -05:00
John Wiegley
3a0879aff0
Added "reported posts" into account xdata
...
This is necessary because sometimes, a post from one account will get
reported as though it were in another account (this happens with
--budget, to show child account postings within their parent account).
In that case, the account needs to remember which postings have been
reported as being within it, so that it can add these amounts to its own
total in the balance report.
2009-11-02 01:40:07 -05:00
John Wiegley
3adfaf0eaa
Removed unnecessary forward declaration
2009-10-31 17:54:30 -04:00
John Wiegley
a757b19f51
Added serialization methods for most type
...
This allows journal_t objects to be completed serialized to disk and
deserialized.
2009-10-30 18:06:37 -04:00
John Wiegley
07cca71893
Renamed two methods, for consistency's sake
2009-10-27 21:33:33 -04:00
John Wiegley
0fdb900c99
Redid the way temporaries are handled in filtering
2009-10-27 08:30:39 -04:00
John Wiegley
20e6451ff1
Removed two invalid comments
2009-10-27 05:22:03 -04:00
John Wiegley
bf30f989f6
Removed some dead code
2009-06-27 01:32:46 +01:00
John Wiegley
77faaa926f
Rewrote the balance report again, to fix --depth
2009-03-08 04:15:48 -04:00
John Wiegley
f340d50362
Revised the ways statistics are computed
...
It is no longer done in calc_posts, but recursively on each account.
This allows value expressions to ask statistical questions, like
"earliest cleared posting?" (TBD) from any specific account, computed
lazily.
2009-03-06 04:07:25 -04:00
John Wiegley
2728e4d55e
Changed the way that account balances are computed
2009-03-06 00:27:29 -04:00
John Wiegley
6ac79137f7
Don't compute running total for balance reports
2009-03-05 23:53:07 -04:00
John Wiegley
c11d325712
Reduced the #include dependency tree to a minimum
2009-03-04 23:53:43 -04:00
John Wiegley
1540ccec01
Gather account details in a details_t structure
2009-03-03 20:28:09 -04:00
John Wiegley
eb45a0a4f4
Normalized how account totals are calculated
2009-03-03 17:08:11 -04:00
John Wiegley
38122c2224
Corrected warnings g++-4.3.3 was complaining about
2009-02-28 04:54:54 -04:00
John Wiegley
944c63e6f2
The Great Renaming, Part II
...
The last commit did not contain the majority of changes because of a
slight mishap. This contains the real changeset.
2009-02-23 19:07:30 -04:00
John Wiegley
f2f52066d2
Added a --strict session option
...
When enabled, if any accounts or commodities are seen in an uncleared
transaction, which were not seen previously in a cleared or pending
transaction or a textual directive dealing with accounts or commodities,
a warning is generated about the unknown item.
2009-02-19 22:36:08 -04:00
John Wiegley
4ec2dfeef1
Added --flat option, to flatten the balance report
2009-02-17 21:19:31 -04:00
John Wiegley
93d195f1d9
Only display a final balance total if necessary
...
In the case where only one top-level account is being reported, there is
no reason to duplicate the total balance shown.
2009-02-17 19:48:42 -04:00
John Wiegley
ce8442a30d
Rewrote how the balance command displays accounts
...
The previous method bent over backwards to try and avoid multiple passes
through the account tree, but the result was a horribly complicated mess
that never ceased to dredge up obscure bugs. The new scheme is a very,
very simple two-pass algorithm, with multiple subpasses during the
second pass for refining the output based on the report options.
2009-02-17 04:49:10 -04:00
John Wiegley
e6934fbd3c
Removed an unused extended account xdata flag
2009-02-16 21:23:12 -04:00
John Wiegley
092542a3bf
Sorting expr now uses "-" to indicate descending
...
For example: -S payee,-date sorts 1) ascending by payee, then 2)
descending by date.
2009-02-12 20:45:33 -04:00
John Wiegley
02110394b4
Use the report's amount_expr everywhere that computes an xact's amount.
2009-02-09 14:53:29 -04:00
John Wiegley
f50def86c4
Moved get_partial_name from format.cc into account_t, where it belongs.
2009-02-08 23:28:30 -04:00
John Wiegley
f4c7f86e21
Removed unnused account_t::ident.
2009-02-07 18:41:06 -04:00
John Wiegley
2d941730b1
Largely removed all of Ledger's use of global variables, for the REPL's sake.
2009-02-04 19:55:27 -04:00
John Wiegley
43c4636d9d
Removed the global references to session->report.
2009-02-03 13:03:10 -04:00
John Wiegley
59a080cdb6
Changed many uses of "unsigned long" to std::size_t.
2009-02-01 18:33:46 -04:00
John Wiegley
1ece3f8b1c
Added documentation stubs for all include files and classes.
2009-01-31 15:28:23 -04:00
John Wiegley
05c77351e4
Stopped using the generic "unsigned int" in favor of more specific types.
2009-01-29 18:23:57 -04:00
John Wiegley
887828a40c
Increased copyright range to include 2009.
2009-01-20 01:53:31 -04:00
John Wiegley
fdc7a4e4c5
Factored common parts of entry_t and xact_t into new item_t
2008-09-19 08:06:20 -04:00
John Wiegley
0b206e86ef
Added a forward declaration for session_t.
2008-08-15 17:43:58 -04:00
John Wiegley
ba02f0a450
Fixed a memory leak that would show up if --verify --verbose was running and
...
an error or exception occurred.
2008-08-10 01:41:59 -04:00
John Wiegley
c9d575abce
Basic balance reports are working again!
2008-08-10 00:57:29 -04:00
John Wiegley
f6f4a46cf5
Moved around most of the files so that source code is in src/, documentation
...
is in doc/, etc.
2008-08-05 18:05:49 -04:00