John Wiegley
bf24b93818
Fixes to the value expression parser and evaluator
2009-11-10 02:26:20 -05:00
John Wiegley
c3535d06c8
Redesigned the expr_t, predicate_t, query_t classes
2009-11-09 02:06:06 -05:00
John Wiegley
394c7bd8df
Removed a bunch of empty comments
2009-11-08 14:59:11 -05:00
John Wiegley
b14c814fec
Whitespace fix
2009-11-04 20:40:42 -05:00
John Wiegley
aef7510f19
Renamed two debug categories
2009-11-02 01:21:35 -05: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
4481396913
Added an assert for op_t::left()
2009-10-30 18:02:10 -04:00
John Wiegley
9b13e77ff5
Improved debug output of "--debug expr.calc"
2009-10-25 05:01:47 -04:00
John Wiegley
2d63c9364a
Changed many assert() calls to VERIFY()
2009-03-04 04:29:10 -04:00
John Wiegley
e2c30cf6e4
Added ; as a sequencing operator in valexprs
2009-03-03 16:05:04 -04:00
John Wiegley
19cfd9e23b
Fixed the printing of O_CONS nodes
2009-02-28 06:13:49 -04:00
John Wiegley
e919f53c99
Renamed O_COMMA to O_CONS, and changed semantics
...
In the old scheme, nested values would simply flatten and concatenate,
so that '((1, 2), 3) = (1, 2, 3)'. Now sublists are preserved, so that
sequences may be passed as arguments to functions.
2009-02-23 15:04:07 -04:00
John Wiegley
d4d7090f3c
Perhaps expr_t objects to remember their scope "context".
2009-02-08 21:15:22 -04:00
John Wiegley
2d5ad7dee8
Added support for value expression definitions.
...
Example:
] expr f(x) := x + 100
] expr f(100)
200
2009-02-08 04:30:05 -04:00
John Wiegley
0c8970584e
Removed handling of the unnused INDEX operator.
2009-02-07 18:42:12 -04:00
John Wiegley
011f35b730
Implemented expr_context.
2009-02-07 04:27:28 -04:00
John Wiegley
682544ef17
Refer to empty expression operators as simply NULL.
2009-02-07 04:27:04 -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
3434650848
Removed the binary caching code, and the XML, QIF and Gnucash parsers.
2009-02-03 12:22:10 -04:00
John Wiegley
673f7f7173
Fixed bad parameter name.
2009-02-02 16:36:44 -04:00
John Wiegley
9540406af1
Simplified error context handling.
2009-02-02 00:24:26 -04:00
John Wiegley
fb5428ce85
Added support for metadata and tagging, and made regexs a first-class type.
2009-02-01 22:10:32 -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
8156e34136
ptr_op_t::copy(), in the TERMINALS case, wasn't copying enough.
2009-01-23 01:09:14 -04:00
John Wiegley
7b76ea5cbc
Errors while calculating value expressions now display meaningful error
...
context.
2009-01-22 18:54:24 -04:00
John Wiegley
ccedf7d57f
Parse != as !(==) and !~ as !(=~), for simplicity's sake.
2009-01-22 16:25:51 -04:00
John Wiegley
887828a40c
Increased copyright range to include 2009.
2009-01-20 01:53:31 -04:00
John Wiegley
06bbe56701
Fixed an assertion.
2008-08-17 04:55:01 -04:00
John Wiegley
08488d4cd7
Removed more dead code and todo comments, and made it possible to stream
...
compiled value expressions.
2008-08-17 04:41:02 -04:00
John Wiegley
891d7b87c8
Removed some dead code and updated the binary streaming code for op_t and
...
value_t.
2008-08-17 03:15:57 -04:00
John Wiegley
fd2e6c2502
Ledger now builds without any significant warnings, except for one file. Some
...
of the warnings had to be temporarily disabled, but will be checked again once
the code has moved into master.
2008-08-10 02:52:38 -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