From 190a55c0692ff7318bc4a9ac78313fde3a5cd108 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Alexis=20Laferri=C3=A8re?= Date: Tue, 11 Aug 2015 18:29:01 -0400 Subject: [PATCH] contrib/objcwrapper: report parsing errors MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Signed-off-by: Alexis Laferrière --- contrib/objcwrapper/src/objcwrapper.nit | 19 +++++++++++++++---- 1 file changed, 15 insertions(+), 4 deletions(-) diff --git a/contrib/objcwrapper/src/objcwrapper.nit b/contrib/objcwrapper/src/objcwrapper.nit index 396da6f..3a941ed 100644 --- a/contrib/objcwrapper/src/objcwrapper.nit +++ b/contrib/objcwrapper/src/objcwrapper.nit @@ -27,13 +27,24 @@ var v = new Interpretor var g = new CodeGenerator for arg in args do - var file = new FileReader.open(arg) - var lexer = new Lexer_objc(file.read_all) + # Read input + var content = arg.to_path.read_all + + # Parse + var lexer = new Lexer_objc(content) var parser = new Parser_objc var tokens = lexer.lex parser.tokens.add_all(tokens) - v.enter_visit(parser.parse) - file.close + var root = parser.parse + + # Check for errors + if root isa NError then + print_error "Syntax Error: {root.message}: {root.position or else ""}" + continue + end + + # Run analysis + v.enter_visit root end g.generator v.model.classes -- 1.7.9.5