Commit graph

1144 commits

Author SHA1 Message Date
John Wiegley
34ee358f5e Moved journal reading code into journal_t 2009-11-05 02:27:42 -05:00
John Wiegley
817f1ae161 std::string now only intercepted if STRING_VERIFY_ON 2009-11-05 02:27:42 -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
4a14f3224b Added value_t::push_front 2009-11-04 20:40:45 -05:00
John Wiegley
b14c814fec Whitespace fix 2009-11-04 20:40:42 -05:00
John Wiegley
fbd660af20 Removed several unneeded Python interface files 2009-11-04 20:01:04 -05:00
John Wiegley
a77d9fc261 Added error message if a predicate query is invalid 2009-11-03 15:34:08 -05:00
John Wiegley
bdb3ebca3f Initialize journal_t::basket to NULL 2009-11-03 15:33:52 -05:00
John Wiegley
6d835e52f5 Changed two callout comments 2009-11-03 14:51:36 -05:00
John Wiegley
d9963b0312 Removed an unnecessary comment 2009-11-03 14:51:22 -05:00
John Wiegley
1ef2274b3f Fixed a compiler warning 2009-11-03 14:51:11 -05:00
John Wiegley
f6f8ef1ba6 Added Python interface for account_t 2009-11-03 08:53:33 -05:00
John Wiegley
3d3d21150e Added Python interface for an item_t enum 2009-11-03 08:50:41 -05:00
John Wiegley
f86394d969 Added Python interface for xact_t 2009-11-03 08:49:18 -05:00
John Wiegley
682518fcee Added Python interface for journal_t 2009-11-03 08:48:30 -05:00
John Wiegley
7c79a745d3 Whitespace fix 2009-11-03 08:21:53 -05:00
John Wiegley
a462b93e30 Added Python interface for post_t 2009-11-03 02:25:25 -05:00
John Wiegley
ed0e01812a Added Python interface for item_t 2009-11-03 02:09:38 -05:00
John Wiegley
3043faf79f Completed Python bindings for value_t 2009-11-02 22:51:21 -05:00
John Wiegley
76fe7a5510 Added Python interface for annotated_commodity_t 2009-11-02 21:55:53 -05:00
John Wiegley
690e46117e Added Python interface for commodity_t 2009-11-02 21:55:53 -05:00
John Wiegley
4befcfa27d Added Python interface for commodity_pool_t 2009-11-02 21:55:47 -05:00
John Wiegley
ff5506801d Whitespace fix 2009-11-02 17:19:53 -05:00
John Wiegley
e663a13502 Changed protection level of many parts of commodity_t 2009-11-02 17:05:51 -05:00
John Wiegley
dea9530cb7 Renamed Python global "session" to "current_session" 2009-11-02 17:04:49 -05:00
John Wiegley
cec0f5ec49 Moved make_qualified_name into commodity_pool_t 2009-11-02 16:58:10 -05:00
John Wiegley
3f8c126c79 Use is_annotated() method rather than "annotated" 2009-11-02 16:57:53 -05:00
John Wiegley
ede73e8889 Corrected an incorrect call to remove_account 2009-11-02 16:00:32 -05:00
John Wiegley
c03fd75d09 Completed Python bindings for balance_t 2009-11-02 04:41:14 -05:00
John Wiegley
4e78dcff3f Fixes to the Python bindings for amount_t 2009-11-02 04:41:07 -05:00
John Wiegley
f9b833b685 Corrected balance_t's arithmetic interface 2009-11-02 04:40:51 -05:00
John Wiegley
60d016a21c Fleshed out the Python bindings for amount_t 2009-11-02 03:50:26 -05:00
John Wiegley
1d1b9465e4 Wire up the --european option 2009-11-02 03:44:32 -05:00
John Wiegley
a8db7bd303 Set default LESS options to -FRSX 2009-11-02 02:55:22 -05:00
John Wiegley
094794c640 Added a --european flag, to use commas for decimals
Ledger can often figure this out for itself, but this flag just makes it
the default behavior.  It is meant to be added to one's ~/.ledgerrc
file.
2009-11-02 02:39:31 -05:00
John Wiegley
4a249d6172 Fixed issues with period strings like "2009/10" 2009-11-02 01:59:24 -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
aef7510f19 Renamed two debug categories 2009-11-02 01:21:35 -05:00
John Wiegley
c0fe2b5300 Fixed a bug with budgeting
It only occurred if you asked for a budget report on the day that a
budgeting period started.
2009-11-02 01:21:28 -05:00
John Wiegley
1b7640dbb0 Don't delete acct_temps if it was never set 2009-11-02 00:32:18 -05:00
John Wiegley
6538a2d1b8 Extended xact example used by some pre-commands 2009-11-01 21:17:53 -05:00
John Wiegley
39973b1277 A posting's note includes its parent xact's note 2009-11-01 21:17:31 -05:00
John Wiegley
a0a91a61c4 If an item doesn't have a given tag, return "" 2009-11-01 21:16:47 -05:00
John Wiegley
1482298e41 Implemented "meta" query report operator 2009-11-01 21:16:31 -05:00
John Wiegley
0849bf24b1 Fixed a typo in the processing of "note" query term 2009-11-01 21:16:09 -05:00
John Wiegley
6a78c24463 Stream out item metadata last in item_t::serialize 2009-11-01 21:15:46 -05:00
John Wiegley
2ae2c47a38 When copying an item, copy its metadata 2009-11-01 21:15:31 -05:00
John Wiegley
449c7ca790 New: --set-reported-account, --set-reported-payee 2009-11-01 21:15:11 -05:00