aboutsummaryrefslogtreecommitdiffstats
path: root/modelica-parser-lalrpop/helper_macros.txt
diff options
context:
space:
mode:
authorbnewbold <bnewbold@robocracy.org>2017-01-14 19:41:51 -0800
committerbnewbold <bnewbold@robocracy.org>2017-01-14 19:52:56 -0800
commit11569fdec123e9c7aeaf38d8a122842c4c758fdf (patch)
tree2940f78906772581812211e00f93228a63ac30de /modelica-parser-lalrpop/helper_macros.txt
parentf8b7d9d7e936bb53db3f978b54592b7af791d1ec (diff)
downloadmodelthing-11569fdec123e9c7aeaf38d8a122842c4c758fdf.tar.gz
modelthing-11569fdec123e9c7aeaf38d8a122842c4c758fdf.zip
parse out exponentiation
Diffstat (limited to 'modelica-parser-lalrpop/helper_macros.txt')
-rw-r--r--modelica-parser-lalrpop/helper_macros.txt24
1 files changed, 24 insertions, 0 deletions
diff --git a/modelica-parser-lalrpop/helper_macros.txt b/modelica-parser-lalrpop/helper_macros.txt
new file mode 100644
index 0000000..957586e
--- /dev/null
+++ b/modelica-parser-lalrpop/helper_macros.txt
@@ -0,0 +1,24 @@
+
+// === Helper Macros ==
+
+Comma<T>: Vec<T> = {
+ <v:(<T> ",")*> <e:T?> => match e {
+ None=> v,
+ Some(e) => {
+ let mut v = v;
+ v.push(e);
+ v
+ }
+ }
+};
+
+Dotted<T>: Vec<T> = {
+ <v:(<T> ".")*> <e:T?> => match e {
+ None=> v,
+ Some(e) => {
+ let mut v = v;
+ v.push(e);
+ v
+ }
+ }
+};