summaryrefslogtreecommitdiff
path: root/src/include/utili_Expression.h
diff options
context:
space:
mode:
authorrhaas <rhaas@17b73243-c579-4c4c-a9d2-2d5706c11dac>2012-04-11 20:50:07 +0000
committerrhaas <rhaas@17b73243-c579-4c4c-a9d2-2d5706c11dac>2012-04-11 20:50:07 +0000
commitce35b1de9d17c8cec1fa6fc60d9b25ba1bfcb295 (patch)
treea8c7d4094f2042e51f751e1b76e4bf9fa6067fa4 /src/include/utili_Expression.h
parent92f8622dbef1d7322bf36500a947ba4474035504 (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.h2
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,