summaryrefslogtreecommitdiff
path: root/src/op.cc
Commit message (Collapse)AuthorAgeFilesLines
* Update copyright yearAlexis Hildebrandt2023-02-021-1/+1
| | | | [skip ci]
* Update copyright statement for 2022Alexis Hildebrandt2022-07-021-1/+1
|
* Fix typos in commentsMartin Michlmayr2020-05-211-1/+1
|
* Drop support for gcc 2 and earlierTim Landscheidt2019-01-251-2/+2
|
* [misc] Update year in copyright notice to 2017Alexis Hildebrandt2018-01-271-1/+1
| | | | [ci skip]
* [misc] Update year in copyright notice to 2017Alexis Hildebrandt2017-01-051-1/+1
| | | | [ci skip]
* [misc] Update year in copyright notice to 2016Alexis Hildebrandt2016-01-021-1/+1
| | | | [ci skip]
* Bump copyright notice to 2015Alexis Hildebrandt2014-12-271-1/+1
| | | | | | The following script makes it a no-brainer: % NEXT_YEAR=2015; ag -l 'Copyright.*Wiegley' \ | xargs sed -i '' -e "s/\(Copyright.*\)-20[0-9]\{2\}/\1-${NEXT_YEAR}/"
* Bump copyright information to 2014Alexis Hildebrandt2014-02-021-1/+1
|
* Bump copyright information to 2013John Wiegley2013-02-181-1/+1
|
* Converted the Ledger build system to use CMakeJohn Wiegley2012-05-201-6/+6
|
* Switch to using Boost.FormatJohn Wiegley2012-05-141-11/+11
|
* Added a syntax error checkJohn Wiegley2012-03-131-0/+3
|
* Made split_cons_expr a global functionJohn Wiegley2012-03-131-21/+21
|
* Improve error reporting of nested function callsJohn Wiegley2012-03-111-6/+7
|
* Many improvements to lambdas and function callingJohn Wiegley2012-03-081-129/+211
|
* More work done on proper evaluation of lambdasJohn Wiegley2012-03-071-17/+25
|
* Many options now have additive effectJohn Wiegley2012-03-071-8/+9
| | | | | | | | | For example, -A and -V used to override each other, whereas now: -A report the average amount -V report all amounts at current value -AV report the current value of the average -VA report the average of all current values
* Fixed parameter and argument scoping for O_CALL nodesJohn Wiegley2012-03-071-15/+50
|
* Dump IDENT referral values in op_t::dumpJohn Wiegley2012-03-071-1/+1
|
* Corrected several compile and link problemsJohn Wiegley2012-03-061-0/+10
|
* Generalized function call parsingJohn Wiegley2012-03-051-7/+12
| | | | | | Directly calling a lambda now works: (x -> x + 10)(10) => 20
* Added an assertJohn Wiegley2012-03-051-0/+2
|
* Fixed invocation of lambda expressionsJohn Wiegley2012-03-051-1/+1
| | | | | | | | | 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)
* Provide more context if a valexpr function call failsJohn Wiegley2012-03-011-5/+12
|
* Increased file copyrights to 2012John Wiegley2012-02-291-1/+1
|
* Corrected handling of nested definitionsJohn Wiegley2012-02-211-20/+53
|
* The new SCOPE mechanism is workingJohn Wiegley2012-02-211-82/+57
|
* Introduced a new SCOPE expression terminalJohn Wiegley2012-02-201-36/+57
|
* Do not evaluate strings as booleansJohn Wiegley2012-02-111-1/+1
|
* Cleanup whitespaceJohn Wiegley2011-08-181-1/+1
|
* Changed an assert into a proper exceptionJohn Wiegley2011-07-171-3/+1
|
* O_DEFINE operator should always return NULL_VALUEJohn Wiegley2011-07-171-0/+5
|
* Added some debug codeJohn Wiegley2011-02-101-0/+24
|
* Added initial support for lambda functionsJohn Wiegley2010-09-061-11/+21
|
* Minor simplifications to valexpr parserJohn Wiegley2010-09-051-34/+11
| | | | | The most significant change is the way CONS sequences are parsed, and that now instead of =/:=, the operators are ==/=.
* Generalized the semantics of FOO.BAR in valexprsJohn Wiegley2010-06-241-17/+7
| | | | | | | | | | | | | Previously, FOO was evaluated to return a scope, and BAR was an identifier looked up in that scope. However, this prevented scope-local functions from being called (since that is a CALL, not a plain IDENT). Now the meaning of the "." operator is that it evaluates the left operand in a scope type context, pushes that scope as the current object context, and then evaluates BAR in that context. Thus the bare word "amount" in an account context calls the same function that "account.amount" would if evaluated in a posting context.
* Fixed how valexpr function defs and calls workJohn Wiegley2010-06-241-15/+32
|
* Changes for building with Visual Studio 2008John Wiegley2010-06-151-1/+1
|
* Report error context in expressions more preciselyJohn Wiegley2010-06-131-3/+3
|
* Completely reworked argument passing in expressionsJohn Wiegley2010-06-131-36/+16
|
* If a type context exists, confirm the result matchesJohn Wiegley2010-06-131-0/+15
|
* Expression evaluations now have a "type context"John Wiegley2010-06-131-6/+9
| | | | | | | | | Thus, an expression can know if the context in which it's being evaluated requires a string, and if so, determine it's output accordingly. For example: account ; returns the full name of the posting's account account.total ; here the context is SCOPE, so account is an obj
* Untabified all source filesJohn Wiegley2010-06-111-109/+109
|
* Allow opt -NDEBUG build to complete without warningsJohn Wiegley2010-06-041-0/+2
|
* Added O_EXPAND operator, to handle macrosJohn Wiegley2010-05-081-3/+49
|
* Updated copyrights to 2003-2010John Wiegley2010-03-051-1/+1
|
* Many improvements to Ledger's Python bindingsJohn Wiegley2009-11-191-1/+1
|
* Fixes to the value expression parser and evaluatorJohn Wiegley2009-11-101-45/+46
|
* Segregated symbols into 5 separate namespacesJohn Wiegley2009-11-041-6/+8
| | | | | | | | | | | | | | | | | | | | | 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)