aboutsummaryrefslogtreecommitdiff
path: root/Tools/CodeGen/KrancScript.m
diff options
context:
space:
mode:
Diffstat (limited to 'Tools/CodeGen/KrancScript.m')
-rw-r--r--Tools/CodeGen/KrancScript.m6
1 files changed, 4 insertions, 2 deletions
diff --git a/Tools/CodeGen/KrancScript.m b/Tools/CodeGen/KrancScript.m
index d5f1730..cc8cf4c 100644
--- a/Tools/CodeGen/KrancScript.m
+++ b/Tools/CodeGen/KrancScript.m
@@ -95,15 +95,17 @@ process[h_[args___]] :=
process[thorn:"thorn"[content___]] :=
Module[
- {calcs = {}, name, options},
+ {calcs = {}, name, options, variables = {}, temporaries = {}},
Do[Switch[el,
"calculation"[___], AppendTo[calcs,process[el]],
"name"[_], name = el[[1]],
+ "variables"[__], variables = Join[variables,List@@Map[process,el]],
+ "temporaries"[__], temporaries = Join[temporaries,List@@Map[process,el]],
_, ThrowError["Unrecognised element '"<>Head[el]<>"' in thorn"]],
{el, {content}}];
- options = {Calculations -> calcs};
+ options = {Calculations -> calcs, Variables -> variables, Shorthands -> temporaries};
CreateThornTTExpression[groups,parentDirectory,name,Sequence@@options]];
process[calc:"calculation"[content___]] :=