summaryrefslogtreecommitdiff
path: root/option.cc
Commit message (Collapse)AuthorAgeFilesLines
* Moved around most of the files so that source code is in src/, documentationJohn Wiegley2008-08-051-212/+0
| | | | is in doc/, etc.
* Moved the option code for 2.6.1 from option.cc into report.h. It's stillJohn Wiegley2008-08-051-543/+0
| | | | commented out, but now it's nearer the right place for conversion.
* Rearranged the code a bit, breaking walk.cc into several different files:John Wiegley2008-08-031-169/+0
| | | | | | | | | | compare compare_items<T> handler item_handler<T> iterators used to iterators sets of journal objects filters derived from item_handler, they morph the result set output derived from item_handler, these do the printing Also, created a new 'help' files which contains just Ledger's help text.
* Formatting now relies exclusively on value expressions.John Wiegley2008-08-021-5/+5
| | | | | | | | | | | | | | | | | | | | What this means is that the utility code, basic math, value expressions, string formatting and option handling are now entirely decoupled from the rest of the code. This decoupling not only greatly simplifies the more basic parts of Ledger, but makes it much easier to test and verify its completeness. For example, when the formatting code %X is seen by the format parser, it turns into a call to the expression function fmt_X, which must be defined when the format string is first compiled against an object. If that object is a transaction, the transaction's scope will be the first to have a chance at providing a definition. If an account is being reported, it will. If neither does, the next scope in sequence -- soon to be the current report -- will, and then the session object that "owns" the current Ledger session. In 2.6, the formatting code new everything about transaction and accounts, and relied on flags to communicate special details between them. Now the transaction will offer the details for its own reporting, while the formatter worries only about strings and how to output them.
* Added a new 'format' debugging command, which dissects the formattingJohn Wiegley2008-08-011-2/+2
| | | | expression in its argument.
* Change many uses of for+iterator to use Boost.Foreach.John Wiegley2008-07-311-3/+3
|
* Revised the way that exceptions are thrown around. Instead of context being aJohn Wiegley2008-07-311-28/+19
| | | | | | | complicated string of pointers, it's now just a global block of text that gets appended to as the error is being thrown up, and can be displayed at the catch point if desired. There are almost no cases where a thrown exception will not result in an error message being displayed to the user.
* Enabled a huge number of warning flags for g++ in acprep, and fixed them allJohn Wiegley2008-07-301-1/+1
| | | | | | except for several unused parameter warnings (because there is so much code still #if 0'd out), and one implicit conversion from long long to long which still has to be dealt with.
* Moved around and renamed a very large amount of code in order to rationalizeJohn Wiegley2008-07-291-1/+1
| | | | the way that value expressions extract information from journal objects.
* Value expression architecture is now rewritten, but the functionality of theJohn Wiegley2008-07-291-12/+12
| | | | | | | old system (for example, the meaning of 'a') has yet to be restored. In the new scheme, this will be done by definition a function outside of the value expression logic, rather than the tight coupling between journal innards and value expressions that occurred in 2.x.
* Cleaned up the value expression code a bit before undertaking the real work ofJohn Wiegley2008-07-271-8/+8
| | | | getting everything back up to what it was (plus the new code written for 3.0).
* Updated all copyright messages to 2003-2008.John Wiegley2008-07-271-1/+1
|
* Added the var_t helper class, which can be seen in the beginningJohn Wiegley2008-07-211-26/+4
| | | | implementation of register_command in main.cc.
* Added back the --version option, and changed acprep so that it hacks on theJohn Wiegley2008-07-211-2/+1
| | | | generated Makefile to greatly reduce unneeded verbosity.
* Merged in from master.John Wiegley2008-07-211-0/+734
|\
| * A patch from Juergen Daubert, which fixes the output from --version.John Wiegley2008-07-211-1/+1
| |
* | Brought in the final round of 3.0 code, although it does not compile yet:John Wiegley2008-07-201-982/+153
| | | | | | | | report, session, parts of xpath, main, journal, option.
* | Merged in bug fixes from master (done for 2.6.1b)John Wiegley2008-07-191-13/+10
|\|
| * Reverted changes to option.cc in commit 2bdafd71, since I do not want toJohn Wiegley2008-07-171-3/+3
| | | | | | | | change the exclusive (as opposed to inclusive) behavior of -e DATE.
| * Fix compile errors with gcc 4.3Nathan Jones2008-05-231-0/+1
| |
* | The code is compiling again, but it's far from being able to run yet.John Wiegley2008-05-081-81/+71
|/
* option.cc: Include unistd.h, to pull in the prototype for access(). This wasJohn Wiegley2008-05-071-0/+1
| | | | | | preventing OpenBSD 4 from building. acprep (CXXFLAGS): Don't use the compile flag -Wno-long-double except on OS X.
* Reverted the master branch back to the state of v2.6.0.90, because I intend toJohn Wiegley2008-05-021-3/+3
| | | | | | be much more thorough about what gets commited to the master and why. This will still be the branch where new work will be checked in, but only after thorough review in a development branch.
* Fixed #36: -e wasn't parsing the passed in date correctly.John Wiegley2008-04-131-3/+3
|
* Corrected help documentation for --budget flag.John Wiegley2008-04-131-2/+2
|
* Made separate modules for the csv command, since the prior method wasJohn Wiegley2008-04-131-25/+29
| | | | not fully correct.
* *** empty log message ***John Wiegley2008-04-131-0/+1
|
* Added elision styles.John Wiegley2008-04-131-5/+23
|
* Reworked the way date/times are handled.John Wiegley2008-04-131-25/+23
|
* Several fixes to lot price handling.John Wiegley2008-04-131-0/+874
|
* Added much better error location.John Wiegley2008-04-131-11/+32
|
* Began support for improved commodity handling.John Wiegley2008-04-131-7/+7
|
* Checked in all major updates.John Wiegley2008-04-131-106/+83
|
* Removed Python integration support.John Wiegley2008-04-131-91/+0
|
* (process_environment): If the environment tag is NULL (which is reallyJohn Wiegley2008-04-131-1/+1
| | | | should never be), then don't use it.
* updated to version 2.0John Wiegley2008-04-131-0/+261
|
* changesJohn Wiegley2008-04-131-257/+0
|
* fixed a serious problem that prevented environment settings from being readJohn Wiegley2004-09-271-2/+2
|
* made several of the buffers used non-staticJohn Wiegley2004-09-261-7/+9
|
* if a commodity price cannot be downloaded, report it as an errorJohn Wiegley2004-09-251-4/+2
|
* whitespace fixJohn Wiegley2004-09-231-1/+1
|
* make config_t visible to Python; almost possible to implement main.cc in main.pyJohn Wiegley2004-09-141-27/+40
|
* switch from using deque back to list; affects speed by up to 30%!John Wiegley2004-09-061-8/+8
|
* a bit of a reorg; still much more to goJohn Wiegley2004-08-291-22/+111
|
* added (disabled) code for Boost.PythonJohn Wiegley2004-08-271-3/+3
|
* removed all uses of std::vector; simplified some codeJohn Wiegley2004-08-241-4/+2
|
* a few fixesJohn Wiegley2004-08-241-1/+2
|
* use value_t instead of balance_pair_t; gains for 10% binary, 2% textualJohn Wiegley2004-08-211-0/+2
|
* added missing headerJohn Wiegley2004-08-171-0/+1
|
* several significant speed improvements (removed excessive copying of strings)John Wiegley2004-08-171-6/+15
|