diff options
author | rhaas <rhaas@17b73243-c579-4c4c-a9d2-2d5706c11dac> | 2012-04-11 20:50:07 +0000 |
---|---|---|
committer | rhaas <rhaas@17b73243-c579-4c4c-a9d2-2d5706c11dac> | 2012-04-11 20:50:07 +0000 |
commit | ce35b1de9d17c8cec1fa6fc60d9b25ba1bfcb295 (patch) | |
tree | a8c7d4094f2042e51f751e1b76e4bf9fa6067fa4 /src/include/utili_Expression.h | |
parent | 92f8622dbef1d7322bf36500a947ba4474035504 (diff) |
Allow arithmetic expression in ParameterSet
Expression are of the form:
foo::bar = 2*sin(foo:baz)
ie. arithmetic and access to already set parameters. The new behaviour is
triggered if the parameter string (for real, boolean and int parameters) does
not parser properly as a double/int/bool. This last test is mostly an
optimization.
The largest change is actually in the expression parser which has been extended
to handle eg. exponential notation and negations. It now uses a state machine
to parse its input.
git-svn-id: http://svn.cactuscode.org/flesh/trunk@4797 17b73243-c579-4c4c-a9d2-2d5706c11dac
Diffstat (limited to 'src/include/utili_Expression.h')
-rw-r--r-- | src/include/utili_Expression.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/src/include/utili_Expression.h b/src/include/utili_Expression.h index 148151a3..ad3d491c 100644 --- a/src/include/utili_Expression.h +++ b/src/include/utili_Expression.h @@ -31,6 +31,8 @@ typedef enum {OP_NONE, OP_TIMES, OP_POWER, OP_NOT, + OP_NEGATE, + OP_PASS, OP_ACOS, OP_ASIN, OP_ATAN, |