From 0029bfc3cf4fdee2bcd86689a8d9a2a8f4dd553a Mon Sep 17 00:00:00 2001 From: "Benjamin J. Culkin" Date: Wed, 30 May 2018 15:57:04 -0300 Subject: Group changes Start work on getting groups to behave correctly --- base/src/bjc/dicelang/Parser.java | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) (limited to 'base/src/bjc/dicelang/Parser.java') diff --git a/base/src/bjc/dicelang/Parser.java b/base/src/bjc/dicelang/Parser.java index ffbfb9d..1b2a0bd 100644 --- a/base/src/bjc/dicelang/Parser.java +++ b/base/src/bjc/dicelang/Parser.java @@ -136,7 +136,21 @@ public class Parser { * AST forest. */ for(final ITree ast : working) { - results.add(ast); + /* Make sure that the tree are well-formed */ + if(ast.containsMatching((val) -> { + switch(val.type) { + case OGROUP: + return true; + default: + return false; + } + })) { + System.out.printf("\tERROR: Malformed tree:\n%s\n", ast); + + return false; + } else { + results.add(ast); + } } return true; -- cgit v1.2.3