From e2d1be275d53521beaf5d04139d49cf1d561a982 Mon Sep 17 00:00:00 2001 From: Ian Hinder Date: Fri, 27 Jan 2012 18:26:00 -0600 Subject: [PATCH] KrancScript.m: Raise an error if an unexpected item is found in a thorn --- Tools/CodeGen/KrancScript.m | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/Tools/CodeGen/KrancScript.m b/Tools/CodeGen/KrancScript.m index 87306db9..d5f1730a 100644 --- a/Tools/CodeGen/KrancScript.m +++ b/Tools/CodeGen/KrancScript.m @@ -95,9 +95,14 @@ process[thorn:"thorn"[content___]] := Module[ - {calcs, name,options}, - calcs = Cases[thorn, c:"calculation"[___]:>process[c]]; - name = Cases[thorn, "name"[n_]:>n][[1]]; + {calcs = {}, name, options}, + + Do[Switch[el, + "calculation"[___], AppendTo[calcs,process[el]], + "name"[_], name = el[[1]], + _, ThrowError["Unrecognised element '"<>Head[el]<>"' in thorn"]], + {el, {content}}]; + options = {Calculations -> calcs}; CreateThornTTExpression[groups,parentDirectory,name,Sequence@@options]];