Commit graph

3908 commits

Author SHA1 Message Date
John Wiegley
acb5e1beea Generalized function call parsing
Directly calling a lambda now works:

  (x -> x + 10)(10) => 20
2012-03-05 22:01:41 -06:00
John Wiegley
59a16e59ee Simplified Python import in a journal file 2012-03-05 21:48:45 -06:00
John Wiegley
97dbf379d5 Rewrote the way annotated commodities are managed
The new scheme should be much more efficient, and allows for future
growth of what annotations may appear on a commodity.
2012-03-05 17:50:17 -06:00
John Wiegley
ff9cf572fe Added (disabled) code to stop sorting generated balancing postings 2012-03-05 17:49:11 -06:00
John Wiegley
46b124a649 Added some DEBUG statements 2012-03-05 17:47:44 -06:00
John Wiegley
e5885cc8a8 Added annotation_t::operator<() 2012-03-05 17:47:12 -06:00
John Wiegley
f9de33d21c Removed an invalid assertion 2012-03-05 17:46:55 -06:00
John Wiegley
b6adc8f460 Use unique_ptr instead of std::auto_ptr 2012-03-05 17:46:42 -06:00
John Wiegley
477a9106e3 Prettified some code in report.cc 2012-03-05 17:45:45 -06:00
John Wiegley
121d878a0c When deleting a post from an xact, remove it from its account 2012-03-05 15:42:45 -06:00
John Wiegley
05725eab3f Look for valgrind in /opt/local/bin also 2012-03-05 15:42:33 -06:00
John Wiegley
e7aaaeab33 Added boost::noncopyable to format_t and format_t::element_t 2012-03-05 15:42:23 -06:00
John Wiegley
dc9ecc600a Guard against double-freeing of report objects 2012-03-05 15:17:59 -06:00
John Wiegley
b3e21e8ae2 Guarded a call to add_or_set_value 2012-03-05 05:53:49 -06:00
John Wiegley
fa3805282a Added an assert 2012-03-05 05:53:41 -06:00
John Wiegley
036200e959 Make copying of format_t objects memory-safe 2012-03-05 05:53:36 -06:00
John Wiegley
96ec764c4a Don't copy the next pointer in element_t's copy ctor 2012-03-05 05:06:57 -06:00
John Wiegley
eabd5c6a0c Create a FGraph each time a lookup is done 2012-03-05 05:03:53 -06:00
John Wiegley
5abbf44583 Corrected copy of format_t objects
Copying of sub-elements was causing pointer overlap.
2012-03-05 05:03:53 -06:00
John Wiegley
3ea5d88eb3 The last test is closer to working now 2012-03-05 05:03:52 -06:00
John Wiegley
8d6bf11334 All tests are working again but one 2012-03-05 05:03:52 -06:00
John Wiegley
5d8cb30774 Implemented first cut at price conversion logic 2012-03-05 05:03:52 -06:00
John Wiegley
e910878312 Changes to get all the code to compile 2012-03-05 05:03:52 -06:00
John Wiegley
48ab6ad1db Switched to using Boost.Graph for commodity pricing 2012-03-05 05:03:52 -06:00
John Wiegley
58d912827d Make --value a synonym for market 2012-03-05 05:03:51 -06:00
John Wiegley
4406155475 Make --change a synonym for --gain 2012-03-05 05:03:51 -06:00
John Wiegley
c8c2a17e28 Fixed invocation of lambda expressions
foo = x, y, z -> print(x, y, z)
  foo(1, 2, 3)

However, this still does not work:

  (x, y, z -> print(x, y, z))(1, 2, 3)
2012-03-05 05:03:51 -06:00
John Wiegley
35ace8816a Improvements to format parsing
Fixes #337
2012-03-02 10:58:16 -06:00
John Wiegley
8b9b9e9e72 Removed an old comment 2012-03-02 10:18:42 -06:00
John Wiegley
38c6953e10 Proof both the Python and non-Python variants 2012-03-02 02:00:26 -06:00
John Wiegley
a47653d24c Make sure Python works during proof builds 2012-03-02 02:00:19 -06:00
John Wiegley
f4feabaea1 Build Python support during proof builds 2012-03-02 01:49:23 -06:00
John Wiegley
4e4cbc6f1e Removed unneeded code 2012-03-02 01:49:07 -06:00
John Wiegley
1061cba97f Use Clang to do proof builds 2012-03-02 01:37:49 -06:00
John Wiegley
ddba59b703 This now works: ledger --import os eval 'os.path.isdir("/tmp")' 2012-03-02 01:36:58 -06:00
John Wiegley
116cbd050b Update lib/Makefile for Boost 1.49 2012-03-01 23:42:37 -06:00
John Wiegley
a125f24d29 Allow --options to be added by the user in Python 2012-03-01 23:40:02 -06:00
John Wiegley
cfd7ffb126 Provide more context if a valexpr function call fails 2012-03-01 22:20:38 -06:00
John Wiegley
a0c9ab08dc Added more baseline testing, for valexprs and Python 2012-03-01 22:20:20 -06:00
John Wiegley
4e37748999 Re-enabled some necessary code 2012-03-01 22:09:42 -06:00
John Wiegley
7a141edb49 Propagate out parsing context counts 2012-03-01 22:09:17 -06:00
John Wiegley
4cfa4bca08 Makefile fix 2012-03-01 21:39:23 -06:00
John Wiegley
0e81c60d70 Fixed a typo 2012-03-01 21:33:27 -06:00
John Wiegley
576aa90bb6 Fixed an explicit path within a unit test 2012-03-01 21:21:25 -06:00
John Wiegley
a3a877284a Was missing an assignment of context.scope 2012-03-01 21:18:49 -06:00
John Wiegley
72b1a948de Fixes to value_t to Python conversion 2012-03-01 17:45:25 -06:00
John Wiegley
f6c087cfe4 Added a new 'python' directive 2012-03-01 17:32:51 -06:00
John Wiegley
ff89cb9c4d Fixed a bug that was causing includes to crash
Fixes #661
2012-03-01 16:22:08 -06:00
John Wiegley
e493a3859c Use filesystem::complete not absolute with Boost < 1.46 2012-03-01 15:09:39 -06:00
John Wiegley
9ec9cdf41e Started writing Python unit tests 2012-03-01 05:50:07 -06:00