From: Jean Privat Date: Fri, 9 Aug 2013 15:37:41 +0000 (-0400) Subject: parser: `Visitor::visit` does not accepts `null` X-Git-Tag: v0.6.1~52 X-Git-Url: http://nitlanguage.org parser: `Visitor::visit` does not accepts `null` Signed-off-by: Jean Privat --- diff --git a/src/auto_super_init.nit b/src/auto_super_init.nit index b60ab85..316320a 100644 --- a/src/auto_super_init.nit +++ b/src/auto_super_init.nit @@ -39,7 +39,6 @@ private class AutoSuperInitVisitor redef fun visit(n) do - if n == null then return n.accept_auto_super_init(self) n.visit_all(self) end diff --git a/src/flow.nit b/src/flow.nit index cdc5ece..3f91b93 100644 --- a/src/flow.nit +++ b/src/flow.nit @@ -52,24 +52,22 @@ private class FlowVisitor redef fun visit(node) do - if node != null then - if first == null then first = node - - if current_flow_context.node == null then current_flow_context.node = node - node.accept_flow_visitor(self) - if node isa AExpr then - var flow = self.current_flow_context - node.after_flow_context = flow - # Force the creation of a specific merge after the analysis of the node. - if flow.when_true != flow or flow.when_false != flow then - self.make_sub_flow - self.current_flow_context.name = "AUTOSUB" - end + if first == null then first = node + + if current_flow_context.node == null then current_flow_context.node = node + node.accept_flow_visitor(self) + if node isa AExpr then + var flow = self.current_flow_context + node.after_flow_context = flow + # Force the creation of a specific merge after the analysis of the node. + if flow.when_true != flow or flow.when_false != flow then + self.make_sub_flow + self.current_flow_context.name = "AUTOSUB" end + end - if first == node then - #self.printflow - end + if first == node then + #self.printflow end end diff --git a/src/literal.nit b/src/literal.nit index e044bee..b4376a7 100644 --- a/src/literal.nit +++ b/src/literal.nit @@ -55,10 +55,8 @@ private class LiteralVisitor redef fun visit(n) do - if n != null then - n.accept_literal(self) - n.visit_all(self) - end + n.accept_literal(self) + n.visit_all(self) end end diff --git a/src/local_var_init.nit b/src/local_var_init.nit index cc389be..4ed1ff8 100644 --- a/src/local_var_init.nit +++ b/src/local_var_init.nit @@ -84,7 +84,7 @@ private class LocalVarInitVisitor redef fun visit(n) do - if n != null then n.accept_local_var_visitor(self) + n.accept_local_var_visitor(self) end end diff --git a/src/metrics/ast_metrics.nit b/src/metrics/ast_metrics.nit index d66115e..7909bbb 100644 --- a/src/metrics/ast_metrics.nit +++ b/src/metrics/ast_metrics.nit @@ -55,7 +55,6 @@ private class AstMetricsVisitor redef fun visit(n) do - if n == null then return n.visit_all(self) phase.node_counter.inc(n.class_name) if n isa TId or n isa TAttrid or n isa TClassid then diff --git a/src/parser/parser.nit b/src/parser/parser.nit index 1a7fbf4..4f8bbd5 100644 --- a/src/parser/parser.nit +++ b/src/parser/parser.nit @@ -1474,11 +1474,9 @@ private class ComputeProdLocationVisitor # Location of the last visited token in the current production var _last_location: nullable Location = null - redef fun visit(n: nullable ANode) + redef fun visit(n: ANode) do - if n == null then - return - else if n isa Token then + if n isa Token then var loc = n.location _last_location = loc diff --git a/src/parser/parser_nodes.nit b/src/parser/parser_nodes.nit index 0af05c6..9625050 100644 --- a/src/parser/parser_nodes.nit +++ b/src/parser/parser_nodes.nit @@ -103,13 +103,14 @@ abstract class Visitor # What the visitor do when a node is visited # Concrete visitors should implement this method. # @toimplement - protected fun visit(e: nullable ANode) is abstract + protected fun visit(e: ANode) is abstract # Ask the visitor to visit a given node. # Usually automatically called by visit_all* methods. # This method should not be redefined fun enter_visit(e: nullable ANode) do + if e == null then return var old = _current_node _current_node = e visit(e) diff --git a/src/parser/xss/parser.xss b/src/parser/xss/parser.xss index a461563..e2fabc5 100644 --- a/src/parser/xss/parser.xss +++ b/src/parser/xss/parser.xss @@ -197,11 +197,9 @@ private class ComputeProdLocationVisitor # Location of the last visited token in the current production var _last_location: nullable Location = null - redef fun visit(n: nullable PNode) + redef fun visit(n: PNode) do - if n == null then - return - else if n isa Token then + if n isa Token then var loc = n.location _last_location = loc diff --git a/src/parser_util.nit b/src/parser_util.nit index 8ca59e8..ed43555 100644 --- a/src/parser_util.nit +++ b/src/parser_util.nit @@ -110,7 +110,6 @@ private class CollectTokensByTextVisitor var result = new Array[Token] redef fun visit(node) do - if node == null then return node.visit_all(self) if node isa Token and node.text == text then result.add(node) end @@ -123,7 +122,6 @@ private class CollectAnnotationsByNameVisitor var result = new Array[AAnnotation] redef fun visit(node) do - if node == null then return node.visit_all(self) if node isa AAnnotation and node.n_atid.n_id.text == name then result.add(node) end diff --git a/src/rapid_type_analysis.nit b/src/rapid_type_analysis.nit index eb14c94..e779174 100644 --- a/src/rapid_type_analysis.nit +++ b/src/rapid_type_analysis.nit @@ -338,7 +338,6 @@ class RapidTypeVisitor redef fun visit(n) do - if n == null then return n.accept_rapid_type_visitor(self) if n isa AExpr then var implicit_cast_to = n.implicit_cast_to diff --git a/src/scope.nit b/src/scope.nit index 5197c19..9499312 100644 --- a/src/scope.nit +++ b/src/scope.nit @@ -114,7 +114,7 @@ private class ScopeVisitor return null end - redef fun visit(n: nullable ANode) + redef fun visit(n) do n.accept_scope_visitor(self) end diff --git a/src/simple_misc_analysis.nit b/src/simple_misc_analysis.nit index c5ec019..dac8da7 100644 --- a/src/simple_misc_analysis.nit +++ b/src/simple_misc_analysis.nit @@ -50,7 +50,7 @@ private class SimpleMiscVisitor super Visitor redef fun visit(n) do - if n != null then n.accept_simple_misc(self) + n.accept_simple_misc(self) end # Number of nested once diff --git a/src/syntax/typing.nit b/src/syntax/typing.nit index 863d41e..879f40a 100644 --- a/src/syntax/typing.nit +++ b/src/syntax/typing.nit @@ -40,7 +40,7 @@ private class TypingVisitor super AbsSyntaxVisitor redef fun visit(n) do - if n != null then n.accept_typing(self) + n.accept_typing(self) end # Current knowledge about scoped things (variable, labels, etc.) diff --git a/src/test_parser.nit b/src/test_parser.nit index f19857d..78f5799 100644 --- a/src/test_parser.nit +++ b/src/test_parser.nit @@ -22,9 +22,8 @@ import parser class PrintTreeVisitor super Visitor var _rank: Int - redef fun visit(n: nullable ANode) + redef fun visit(n) do - if n == null then return if n isa Token then printn(" " * _rank, n.to_s, " ... ", n.location, "\n") else diff --git a/tests/sav/test_parser_args1.res b/tests/sav/test_parser_args1.res index bccf533..9902641 100644 --- a/tests/sav/test_parser_args1.res +++ b/tests/sav/test_parser_args1.res @@ -1,5 +1,5 @@ -../src/test_parser.nit:17,1--111,1 - ../src/test_parser.nit:17,1--110,3 +../src/test_parser.nit:17,1--110,1 + ../src/test_parser.nit:17,1--109,3 ../src/test_parser.nit:17,1--18,19 ../src/test_parser.nit:17,1--18,0 '# Program used to test the NIT parser @@ -12,7 +12,7 @@ keyword 'import' ... ../src/test_parser.nit:20,1--6 ../src/test_parser.nit:20,8--13 identifier 'parser' ... ../src/test_parser.nit:20,8--13 - ../src/test_parser.nit:22,1--42,3 + ../src/test_parser.nit:22,1--41,3 ../src/test_parser.nit:22,1 ../src/test_parser.nit:22,1--5 keyword 'class' ... ../src/test_parser.nit:22,1--5 @@ -27,712 +27,698 @@ attribute '_rank' ... ../src/test_parser.nit:24,6--10 ../src/test_parser.nit:24,13--15 type identifier 'Int' ... ../src/test_parser.nit:24,13--15 - ../src/test_parser.nit:25,2--36,4 + ../src/test_parser.nit:25,2--35,4 keyword 'redef' ... ../src/test_parser.nit:25,2--6 ../src/test_parser.nit:25,12 keyword 'fun' ... ../src/test_parser.nit:25,8--10 ../src/test_parser.nit:25,12--16 identifier 'visit' ... ../src/test_parser.nit:25,12--16 - ../src/test_parser.nit:25,17--35 + ../src/test_parser.nit:25,17--19 '(' ... ../src/test_parser.nit:25,17 - ../src/test_parser.nit:25,18--34 + ../src/test_parser.nit:25,18 identifier 'n' ... ../src/test_parser.nit:25,18 - ../src/test_parser.nit:25,21--34 - keyword 'nullable' ... ../src/test_parser.nit:25,21--28 - type identifier 'ANode' ... ../src/test_parser.nit:25,30--34 - ')' ... ../src/test_parser.nit:25,35 - ../src/test_parser.nit:27,3--36,4 - ../src/test_parser.nit:27,3--26 + ')' ... ../src/test_parser.nit:25,19 + ../src/test_parser.nit:27,3--35,4 + ../src/test_parser.nit:27,3--31,5 keyword 'if' ... ../src/test_parser.nit:27,3--4 - ../src/test_parser.nit:27,6--14 + ../src/test_parser.nit:27,6--16 ../src/test_parser.nit:27,6 ../src/test_parser.nit:27,6 identifier 'n' ... ../src/test_parser.nit:27,6 ../src/test_parser.nit:27,6 - ../src/test_parser.nit:27,11--14 - keyword 'null' ... ../src/test_parser.nit:27,11--14 - ../src/test_parser.nit:27,21--26 - keyword 'return' ... ../src/test_parser.nit:27,21--26 - ../src/test_parser.nit:28,3--32,5 - keyword 'if' ... ../src/test_parser.nit:28,3--4 - ../src/test_parser.nit:28,6--16 - ../src/test_parser.nit:28,6 - ../src/test_parser.nit:28,6 - identifier 'n' ... ../src/test_parser.nit:28,6 - ../src/test_parser.nit:28,6 - ../src/test_parser.nit:28,12--16 - type identifier 'Token' ... ../src/test_parser.nit:28,12--16 - ../src/test_parser.nit:29,4--58 - ../src/test_parser.nit:29,4--58 - ../src/test_parser.nit:29,11 - identifier 'printn' ... ../src/test_parser.nit:29,4--9 - ../src/test_parser.nit:29,10--58 - '(' ... ../src/test_parser.nit:29,10 - ../src/test_parser.nit:29,11--22 - ../src/test_parser.nit:29,11--14 - literal value '" "' ... ../src/test_parser.nit:29,11--14 - ../src/test_parser.nit:29,18--22 - ../src/test_parser.nit:29,18 - attribute '_rank' ... ../src/test_parser.nit:29,18--22 - ../src/test_parser.nit:29,25--30 - ../src/test_parser.nit:29,25 - ../src/test_parser.nit:29,25 - identifier 'n' ... ../src/test_parser.nit:29,25 - ../src/test_parser.nit:29,25 - identifier 'to_s' ... ../src/test_parser.nit:29,27--30 - ../src/test_parser.nit:29,25 - ../src/test_parser.nit:29,33--39 - literal value '" ... "' ... ../src/test_parser.nit:29,33--39 - ../src/test_parser.nit:29,42--51 - ../src/test_parser.nit:29,42 - ../src/test_parser.nit:29,42 - identifier 'n' ... ../src/test_parser.nit:29,42 - ../src/test_parser.nit:29,42 - identifier 'location' ... ../src/test_parser.nit:29,44--51 - ../src/test_parser.nit:29,42 - ../src/test_parser.nit:29,54--57 - literal value '"\n"' ... ../src/test_parser.nit:29,54--57 - ')' ... ../src/test_parser.nit:29,58 - ../src/test_parser.nit:31,4--32,5 - ../src/test_parser.nit:31,4--41 - ../src/test_parser.nit:31,11 - identifier 'printn' ... ../src/test_parser.nit:31,4--9 - ../src/test_parser.nit:31,10--41 - '(' ... ../src/test_parser.nit:31,10 - ../src/test_parser.nit:31,11--22 - ../src/test_parser.nit:31,11--14 - literal value '" "' ... ../src/test_parser.nit:31,11--14 - ../src/test_parser.nit:31,18--22 - ../src/test_parser.nit:31,18 - attribute '_rank' ... ../src/test_parser.nit:31,18--22 - ../src/test_parser.nit:31,25--34 - ../src/test_parser.nit:31,25 - ../src/test_parser.nit:31,25 - identifier 'n' ... ../src/test_parser.nit:31,25 - ../src/test_parser.nit:31,25 - identifier 'location' ... ../src/test_parser.nit:31,27--34 - ../src/test_parser.nit:31,25 - ../src/test_parser.nit:31,37--40 - literal value '"\n"' ... ../src/test_parser.nit:31,37--40 - ')' ... ../src/test_parser.nit:31,41 - keyword 'end' ... ../src/test_parser.nit:32,3--5 + ../src/test_parser.nit:27,12--16 + type identifier 'Token' ... ../src/test_parser.nit:27,12--16 + ../src/test_parser.nit:28,4--58 + ../src/test_parser.nit:28,4--58 + ../src/test_parser.nit:28,11 + identifier 'printn' ... ../src/test_parser.nit:28,4--9 + ../src/test_parser.nit:28,10--58 + '(' ... ../src/test_parser.nit:28,10 + ../src/test_parser.nit:28,11--22 + ../src/test_parser.nit:28,11--14 + literal value '" "' ... ../src/test_parser.nit:28,11--14 + ../src/test_parser.nit:28,18--22 + ../src/test_parser.nit:28,18 + attribute '_rank' ... ../src/test_parser.nit:28,18--22 + ../src/test_parser.nit:28,25--30 + ../src/test_parser.nit:28,25 + ../src/test_parser.nit:28,25 + identifier 'n' ... ../src/test_parser.nit:28,25 + ../src/test_parser.nit:28,25 + identifier 'to_s' ... ../src/test_parser.nit:28,27--30 + ../src/test_parser.nit:28,25 + ../src/test_parser.nit:28,33--39 + literal value '" ... "' ... ../src/test_parser.nit:28,33--39 + ../src/test_parser.nit:28,42--51 + ../src/test_parser.nit:28,42 + ../src/test_parser.nit:28,42 + identifier 'n' ... ../src/test_parser.nit:28,42 + ../src/test_parser.nit:28,42 + identifier 'location' ... ../src/test_parser.nit:28,44--51 + ../src/test_parser.nit:28,42 + ../src/test_parser.nit:28,54--57 + literal value '"\n"' ... ../src/test_parser.nit:28,54--57 + ')' ... ../src/test_parser.nit:28,58 + ../src/test_parser.nit:30,4--31,5 + ../src/test_parser.nit:30,4--41 + ../src/test_parser.nit:30,11 + identifier 'printn' ... ../src/test_parser.nit:30,4--9 + ../src/test_parser.nit:30,10--41 + '(' ... ../src/test_parser.nit:30,10 + ../src/test_parser.nit:30,11--22 + ../src/test_parser.nit:30,11--14 + literal value '" "' ... ../src/test_parser.nit:30,11--14 + ../src/test_parser.nit:30,18--22 + ../src/test_parser.nit:30,18 + attribute '_rank' ... ../src/test_parser.nit:30,18--22 + ../src/test_parser.nit:30,25--34 + ../src/test_parser.nit:30,25 + ../src/test_parser.nit:30,25 + identifier 'n' ... ../src/test_parser.nit:30,25 + ../src/test_parser.nit:30,25 + identifier 'location' ... ../src/test_parser.nit:30,27--34 + ../src/test_parser.nit:30,25 + ../src/test_parser.nit:30,37--40 + literal value '"\n"' ... ../src/test_parser.nit:30,37--40 + ')' ... ../src/test_parser.nit:30,41 + keyword 'end' ... ../src/test_parser.nit:31,3--5 + ../src/test_parser.nit:32,3--19 + ../src/test_parser.nit:32,11 + attribute '_rank' ... ../src/test_parser.nit:32,3--7 + '=' ... ../src/test_parser.nit:32,9 + ../src/test_parser.nit:32,11--19 + ../src/test_parser.nit:32,11--15 + ../src/test_parser.nit:32,11 + attribute '_rank' ... ../src/test_parser.nit:32,11--15 + ../src/test_parser.nit:32,19 + literal value '1' ... ../src/test_parser.nit:32,19 ../src/test_parser.nit:33,3--19 - ../src/test_parser.nit:33,11 - attribute '_rank' ... ../src/test_parser.nit:33,3--7 - '=' ... ../src/test_parser.nit:33,9 - ../src/test_parser.nit:33,11--19 - ../src/test_parser.nit:33,11--15 - ../src/test_parser.nit:33,11 - attribute '_rank' ... ../src/test_parser.nit:33,11--15 - ../src/test_parser.nit:33,19 - literal value '1' ... ../src/test_parser.nit:33,19 + ../src/test_parser.nit:33,3 + ../src/test_parser.nit:33,3 + identifier 'n' ... ../src/test_parser.nit:33,3 + ../src/test_parser.nit:33,3 + identifier 'visit_all' ... ../src/test_parser.nit:33,5--13 + ../src/test_parser.nit:33,14--19 + '(' ... ../src/test_parser.nit:33,14 + ../src/test_parser.nit:33,15--18 + keyword 'self' ... ../src/test_parser.nit:33,15--18 + ')' ... ../src/test_parser.nit:33,19 ../src/test_parser.nit:34,3--19 - ../src/test_parser.nit:34,3 - ../src/test_parser.nit:34,3 - identifier 'n' ... ../src/test_parser.nit:34,3 - ../src/test_parser.nit:34,3 - identifier 'visit_all' ... ../src/test_parser.nit:34,5--13 - ../src/test_parser.nit:34,14--19 - '(' ... ../src/test_parser.nit:34,14 - ../src/test_parser.nit:34,15--18 - keyword 'self' ... ../src/test_parser.nit:34,15--18 - ')' ... ../src/test_parser.nit:34,19 - ../src/test_parser.nit:35,3--19 - ../src/test_parser.nit:35,11 - attribute '_rank' ... ../src/test_parser.nit:35,3--7 - '=' ... ../src/test_parser.nit:35,9 - ../src/test_parser.nit:35,11--19 - ../src/test_parser.nit:35,11--15 - ../src/test_parser.nit:35,11 - attribute '_rank' ... ../src/test_parser.nit:35,11--15 - ../src/test_parser.nit:35,19 - literal value '1' ... ../src/test_parser.nit:35,19 - keyword 'end' ... ../src/test_parser.nit:36,2--4 - ../src/test_parser.nit:38,2--41,4 - ../src/test_parser.nit:40,11 - keyword 'init' ... ../src/test_parser.nit:38,2--5 - ../src/test_parser.nit:40,11 - ../src/test_parser.nit:40,3--41,4 - ../src/test_parser.nit:40,3--11 - ../src/test_parser.nit:40,11 - attribute '_rank' ... ../src/test_parser.nit:40,3--7 - '=' ... ../src/test_parser.nit:40,9 - ../src/test_parser.nit:40,11 - literal value '0' ... ../src/test_parser.nit:40,11 - keyword 'end' ... ../src/test_parser.nit:41,2--4 - keyword 'end' ... ../src/test_parser.nit:42,1--3 - ../src/test_parser.nit:44,1--110,3 - ../src/test_parser.nit:44,1--110,3 - ../src/test_parser.nit:44,1--110,3 - ../src/test_parser.nit:44,1--20 + ../src/test_parser.nit:34,11 + attribute '_rank' ... ../src/test_parser.nit:34,3--7 + '=' ... ../src/test_parser.nit:34,9 + ../src/test_parser.nit:34,11--19 + ../src/test_parser.nit:34,11--15 + ../src/test_parser.nit:34,11 + attribute '_rank' ... ../src/test_parser.nit:34,11--15 + ../src/test_parser.nit:34,19 + literal value '1' ... ../src/test_parser.nit:34,19 + keyword 'end' ... ../src/test_parser.nit:35,2--4 + ../src/test_parser.nit:37,2--40,4 + ../src/test_parser.nit:39,11 + keyword 'init' ... ../src/test_parser.nit:37,2--5 + ../src/test_parser.nit:39,11 + ../src/test_parser.nit:39,3--40,4 + ../src/test_parser.nit:39,3--11 + ../src/test_parser.nit:39,11 + attribute '_rank' ... ../src/test_parser.nit:39,3--7 + '=' ... ../src/test_parser.nit:39,9 + ../src/test_parser.nit:39,11 + literal value '0' ... ../src/test_parser.nit:39,11 + keyword 'end' ... ../src/test_parser.nit:40,2--4 + keyword 'end' ... ../src/test_parser.nit:41,1--3 + ../src/test_parser.nit:43,1--109,3 + ../src/test_parser.nit:43,1--109,3 + ../src/test_parser.nit:43,1--109,3 + ../src/test_parser.nit:43,1--20 + keyword 'var' ... ../src/test_parser.nit:43,1--3 + identifier 'no_print' ... ../src/test_parser.nit:43,5--12 + '=' ... ../src/test_parser.nit:43,14 + ../src/test_parser.nit:43,16--20 + keyword 'false' ... ../src/test_parser.nit:43,16--20 + ../src/test_parser.nit:44,1--22 keyword 'var' ... ../src/test_parser.nit:44,1--3 - identifier 'no_print' ... ../src/test_parser.nit:44,5--12 - '=' ... ../src/test_parser.nit:44,14 - ../src/test_parser.nit:44,16--20 - keyword 'false' ... ../src/test_parser.nit:44,16--20 - ../src/test_parser.nit:45,1--22 + identifier 'only_lexer' ... ../src/test_parser.nit:44,5--14 + '=' ... ../src/test_parser.nit:44,16 + ../src/test_parser.nit:44,18--22 + keyword 'false' ... ../src/test_parser.nit:44,18--22 + ../src/test_parser.nit:45,1--21 keyword 'var' ... ../src/test_parser.nit:45,1--3 - identifier 'only_lexer' ... ../src/test_parser.nit:45,5--14 - '=' ... ../src/test_parser.nit:45,16 - ../src/test_parser.nit:45,18--22 - keyword 'false' ... ../src/test_parser.nit:45,18--22 - ../src/test_parser.nit:46,1--21 + identifier 'need_help' ... ../src/test_parser.nit:45,5--13 + '=' ... ../src/test_parser.nit:45,15 + ../src/test_parser.nit:45,17--21 + keyword 'false' ... ../src/test_parser.nit:45,17--21 + ../src/test_parser.nit:46,1--19 keyword 'var' ... ../src/test_parser.nit:46,1--3 - identifier 'need_help' ... ../src/test_parser.nit:46,5--13 - '=' ... ../src/test_parser.nit:46,15 - ../src/test_parser.nit:46,17--21 - keyword 'false' ... ../src/test_parser.nit:46,17--21 - ../src/test_parser.nit:47,1--19 - keyword 'var' ... ../src/test_parser.nit:47,1--3 - identifier 'no_file' ... ../src/test_parser.nit:47,5--11 - '=' ... ../src/test_parser.nit:47,13 - ../src/test_parser.nit:47,15--19 - keyword 'false' ... ../src/test_parser.nit:47,15--19 - ../src/test_parser.nit:49,1--65,3 - keyword 'while' ... ../src/test_parser.nit:49,1--5 - ../src/test_parser.nit:49,7--51 - ../src/test_parser.nit:49,7--23 - keyword 'not' ... ../src/test_parser.nit:49,7--9 - ../src/test_parser.nit:49,11--23 - ../src/test_parser.nit:49,11--14 - ../src/test_parser.nit:49,11 - identifier 'args' ... ../src/test_parser.nit:49,11--14 - ../src/test_parser.nit:49,11 - identifier 'is_empty' ... ../src/test_parser.nit:49,16--23 - ../src/test_parser.nit:49,11 - ../src/test_parser.nit:49,29--51 - ../src/test_parser.nit:49,29--44 - ../src/test_parser.nit:49,29--38 - ../src/test_parser.nit:49,29--32 - ../src/test_parser.nit:49,29 - identifier 'args' ... ../src/test_parser.nit:49,29--32 - ../src/test_parser.nit:49,29 - identifier 'first' ... ../src/test_parser.nit:49,34--38 - ../src/test_parser.nit:49,29 - identifier 'first' ... ../src/test_parser.nit:49,40--44 - ../src/test_parser.nit:49,29 - ../src/test_parser.nit:49,49--51 - literal value ''-'' ... ../src/test_parser.nit:49,49--51 - keyword 'do' ... ../src/test_parser.nit:49,53--54 - ../src/test_parser.nit:50,2--65,3 - ../src/test_parser.nit:50,2--63,4 - keyword 'if' ... ../src/test_parser.nit:50,2--3 - ../src/test_parser.nit:50,5--22 - ../src/test_parser.nit:50,5--14 - ../src/test_parser.nit:50,5--8 - ../src/test_parser.nit:50,5 - identifier 'args' ... ../src/test_parser.nit:50,5--8 - ../src/test_parser.nit:50,5 - identifier 'first' ... ../src/test_parser.nit:50,10--14 - ../src/test_parser.nit:50,5 - ../src/test_parser.nit:50,19--22 - literal value '"-n"' ... ../src/test_parser.nit:50,19--22 - ../src/test_parser.nit:51,3--17 - ../src/test_parser.nit:51,3--17 - ../src/test_parser.nit:51,14 - identifier 'no_print' ... ../src/test_parser.nit:51,3--10 - ../src/test_parser.nit:51,14 - '=' ... ../src/test_parser.nit:51,12 - ../src/test_parser.nit:51,14--17 - keyword 'true' ... ../src/test_parser.nit:51,14--17 - ../src/test_parser.nit:52,7--63,4 - keyword 'if' ... ../src/test_parser.nit:52,7--8 - ../src/test_parser.nit:52,10--27 - ../src/test_parser.nit:52,10--19 - ../src/test_parser.nit:52,10--13 - ../src/test_parser.nit:52,10 - identifier 'args' ... ../src/test_parser.nit:52,10--13 - ../src/test_parser.nit:52,10 - identifier 'first' ... ../src/test_parser.nit:52,15--19 - ../src/test_parser.nit:52,10 - ../src/test_parser.nit:52,24--27 - literal value '"-l"' ... ../src/test_parser.nit:52,24--27 - ../src/test_parser.nit:53,3--19 - ../src/test_parser.nit:53,3--19 - ../src/test_parser.nit:53,16 - identifier 'only_lexer' ... ../src/test_parser.nit:53,3--12 - ../src/test_parser.nit:53,16 - '=' ... ../src/test_parser.nit:53,14 - ../src/test_parser.nit:53,16--19 - keyword 'true' ... ../src/test_parser.nit:53,16--19 - ../src/test_parser.nit:54,7--63,4 - keyword 'if' ... ../src/test_parser.nit:54,7--8 - ../src/test_parser.nit:54,10--27 - ../src/test_parser.nit:54,10--19 - ../src/test_parser.nit:54,10--13 - ../src/test_parser.nit:54,10 - identifier 'args' ... ../src/test_parser.nit:54,10--13 - ../src/test_parser.nit:54,10 - identifier 'first' ... ../src/test_parser.nit:54,15--19 - ../src/test_parser.nit:54,10 - ../src/test_parser.nit:54,24--27 - literal value '"-p"' ... ../src/test_parser.nit:54,24--27 - ../src/test_parser.nit:55,3--20 - ../src/test_parser.nit:55,3--20 - ../src/test_parser.nit:55,16 - identifier 'only_lexer' ... ../src/test_parser.nit:55,3--12 - ../src/test_parser.nit:55,16 - '=' ... ../src/test_parser.nit:55,14 - ../src/test_parser.nit:55,16--20 - keyword 'false' ... ../src/test_parser.nit:55,16--20 - ../src/test_parser.nit:56,7--63,4 - keyword 'if' ... ../src/test_parser.nit:56,7--8 - ../src/test_parser.nit:56,10--27 - ../src/test_parser.nit:56,10--19 - ../src/test_parser.nit:56,10--13 - ../src/test_parser.nit:56,10 - identifier 'args' ... ../src/test_parser.nit:56,10--13 - ../src/test_parser.nit:56,10 - identifier 'first' ... ../src/test_parser.nit:56,15--19 - ../src/test_parser.nit:56,10 - ../src/test_parser.nit:56,24--27 - literal value '"-e"' ... ../src/test_parser.nit:56,24--27 - ../src/test_parser.nit:57,3--16 - ../src/test_parser.nit:57,3--16 - ../src/test_parser.nit:57,13 - identifier 'no_file' ... ../src/test_parser.nit:57,3--9 - ../src/test_parser.nit:57,13 - '=' ... ../src/test_parser.nit:57,11 - ../src/test_parser.nit:57,13--16 - keyword 'true' ... ../src/test_parser.nit:57,13--16 - ../src/test_parser.nit:58,7--63,4 - keyword 'if' ... ../src/test_parser.nit:58,7--8 - ../src/test_parser.nit:58,10--49 - ../src/test_parser.nit:58,10--27 - ../src/test_parser.nit:58,10--19 - ../src/test_parser.nit:58,10--13 - ../src/test_parser.nit:58,10 - identifier 'args' ... ../src/test_parser.nit:58,10--13 - ../src/test_parser.nit:58,10 - identifier 'first' ... ../src/test_parser.nit:58,15--19 - ../src/test_parser.nit:58,10 - ../src/test_parser.nit:58,24--27 - literal value '"-h"' ... ../src/test_parser.nit:58,24--27 - ../src/test_parser.nit:58,32--49 - ../src/test_parser.nit:58,32--41 - ../src/test_parser.nit:58,32--35 - ../src/test_parser.nit:58,32 - identifier 'args' ... ../src/test_parser.nit:58,32--35 - ../src/test_parser.nit:58,32 - identifier 'first' ... ../src/test_parser.nit:58,37--41 - ../src/test_parser.nit:58,32 - ../src/test_parser.nit:58,46--49 - literal value '"-?"' ... ../src/test_parser.nit:58,46--49 - ../src/test_parser.nit:59,3--18 - ../src/test_parser.nit:59,3--18 - ../src/test_parser.nit:59,15 - identifier 'need_help' ... ../src/test_parser.nit:59,3--11 - ../src/test_parser.nit:59,15 - '=' ... ../src/test_parser.nit:59,13 - ../src/test_parser.nit:59,15--18 - keyword 'true' ... ../src/test_parser.nit:59,15--18 - ../src/test_parser.nit:61,3--63,4 - ../src/test_parser.nit:61,3--48 - ../src/test_parser.nit:61,3--8 - ../src/test_parser.nit:61,3 - identifier 'stderr' ... ../src/test_parser.nit:61,3--8 - ../src/test_parser.nit:61,3 - identifier 'write' ... ../src/test_parser.nit:61,10--14 - ../src/test_parser.nit:61,15--48 - '(' ... ../src/test_parser.nit:61,15 - ../src/test_parser.nit:61,16--47 - ../src/test_parser.nit:61,16--32 - literal value '"Unknown option {' ... ../src/test_parser.nit:61,16--32 - ../src/test_parser.nit:61,33--42 - ../src/test_parser.nit:61,33--36 - ../src/test_parser.nit:61,33 - identifier 'args' ... ../src/test_parser.nit:61,33--36 - ../src/test_parser.nit:61,33 - identifier 'first' ... ../src/test_parser.nit:61,38--42 - ../src/test_parser.nit:61,33 - ../src/test_parser.nit:61,43--47 - '}.\n"' ... ../src/test_parser.nit:61,43--47 - ')' ... ../src/test_parser.nit:61,48 - ../src/test_parser.nit:62,3--9 - ../src/test_parser.nit:62,8 - identifier 'exit' ... ../src/test_parser.nit:62,3--6 - ../src/test_parser.nit:62,7--9 - '(' ... ../src/test_parser.nit:62,7 - ../src/test_parser.nit:62,8 - literal value '0' ... ../src/test_parser.nit:62,8 - ')' ... ../src/test_parser.nit:62,9 - keyword 'end' ... ../src/test_parser.nit:63,2--4 - ../src/test_parser.nit:64,2--11 - ../src/test_parser.nit:64,2--5 - ../src/test_parser.nit:64,2 - identifier 'args' ... ../src/test_parser.nit:64,2--5 - ../src/test_parser.nit:64,2 - identifier 'shift' ... ../src/test_parser.nit:64,7--11 - ../src/test_parser.nit:64,2 - keyword 'end' ... ../src/test_parser.nit:65,1--3 - ../src/test_parser.nit:67,1--110,3 - keyword 'if' ... ../src/test_parser.nit:67,1--2 - ../src/test_parser.nit:67,4--29 - ../src/test_parser.nit:67,4--16 - ../src/test_parser.nit:67,4--7 - ../src/test_parser.nit:67,4 - identifier 'args' ... ../src/test_parser.nit:67,4--7 - ../src/test_parser.nit:67,4 - identifier 'is_empty' ... ../src/test_parser.nit:67,9--16 - ../src/test_parser.nit:67,4 - ../src/test_parser.nit:67,21--29 - ../src/test_parser.nit:67,21 - identifier 'need_help' ... ../src/test_parser.nit:67,21--29 - ../src/test_parser.nit:67,21 - ../src/test_parser.nit:68,2--75,30 - ../src/test_parser.nit:68,2--16 + identifier 'no_file' ... ../src/test_parser.nit:46,5--11 + '=' ... ../src/test_parser.nit:46,13 + ../src/test_parser.nit:46,15--19 + keyword 'false' ... ../src/test_parser.nit:46,15--19 + ../src/test_parser.nit:48,1--64,3 + keyword 'while' ... ../src/test_parser.nit:48,1--5 + ../src/test_parser.nit:48,7--51 + ../src/test_parser.nit:48,7--23 + keyword 'not' ... ../src/test_parser.nit:48,7--9 + ../src/test_parser.nit:48,11--23 + ../src/test_parser.nit:48,11--14 + ../src/test_parser.nit:48,11 + identifier 'args' ... ../src/test_parser.nit:48,11--14 + ../src/test_parser.nit:48,11 + identifier 'is_empty' ... ../src/test_parser.nit:48,16--23 + ../src/test_parser.nit:48,11 + ../src/test_parser.nit:48,29--51 + ../src/test_parser.nit:48,29--44 + ../src/test_parser.nit:48,29--38 + ../src/test_parser.nit:48,29--32 + ../src/test_parser.nit:48,29 + identifier 'args' ... ../src/test_parser.nit:48,29--32 + ../src/test_parser.nit:48,29 + identifier 'first' ... ../src/test_parser.nit:48,34--38 + ../src/test_parser.nit:48,29 + identifier 'first' ... ../src/test_parser.nit:48,40--44 + ../src/test_parser.nit:48,29 + ../src/test_parser.nit:48,49--51 + literal value ''-'' ... ../src/test_parser.nit:48,49--51 + keyword 'do' ... ../src/test_parser.nit:48,53--54 + ../src/test_parser.nit:49,2--64,3 + ../src/test_parser.nit:49,2--62,4 + keyword 'if' ... ../src/test_parser.nit:49,2--3 + ../src/test_parser.nit:49,5--22 + ../src/test_parser.nit:49,5--14 + ../src/test_parser.nit:49,5--8 + ../src/test_parser.nit:49,5 + identifier 'args' ... ../src/test_parser.nit:49,5--8 + ../src/test_parser.nit:49,5 + identifier 'first' ... ../src/test_parser.nit:49,10--14 + ../src/test_parser.nit:49,5 + ../src/test_parser.nit:49,19--22 + literal value '"-n"' ... ../src/test_parser.nit:49,19--22 + ../src/test_parser.nit:50,3--17 + ../src/test_parser.nit:50,3--17 + ../src/test_parser.nit:50,14 + identifier 'no_print' ... ../src/test_parser.nit:50,3--10 + ../src/test_parser.nit:50,14 + '=' ... ../src/test_parser.nit:50,12 + ../src/test_parser.nit:50,14--17 + keyword 'true' ... ../src/test_parser.nit:50,14--17 + ../src/test_parser.nit:51,7--62,4 + keyword 'if' ... ../src/test_parser.nit:51,7--8 + ../src/test_parser.nit:51,10--27 + ../src/test_parser.nit:51,10--19 + ../src/test_parser.nit:51,10--13 + ../src/test_parser.nit:51,10 + identifier 'args' ... ../src/test_parser.nit:51,10--13 + ../src/test_parser.nit:51,10 + identifier 'first' ... ../src/test_parser.nit:51,15--19 + ../src/test_parser.nit:51,10 + ../src/test_parser.nit:51,24--27 + literal value '"-l"' ... ../src/test_parser.nit:51,24--27 + ../src/test_parser.nit:52,3--19 + ../src/test_parser.nit:52,3--19 + ../src/test_parser.nit:52,16 + identifier 'only_lexer' ... ../src/test_parser.nit:52,3--12 + ../src/test_parser.nit:52,16 + '=' ... ../src/test_parser.nit:52,14 + ../src/test_parser.nit:52,16--19 + keyword 'true' ... ../src/test_parser.nit:52,16--19 + ../src/test_parser.nit:53,7--62,4 + keyword 'if' ... ../src/test_parser.nit:53,7--8 + ../src/test_parser.nit:53,10--27 + ../src/test_parser.nit:53,10--19 + ../src/test_parser.nit:53,10--13 + ../src/test_parser.nit:53,10 + identifier 'args' ... ../src/test_parser.nit:53,10--13 + ../src/test_parser.nit:53,10 + identifier 'first' ... ../src/test_parser.nit:53,15--19 + ../src/test_parser.nit:53,10 + ../src/test_parser.nit:53,24--27 + literal value '"-p"' ... ../src/test_parser.nit:53,24--27 + ../src/test_parser.nit:54,3--20 + ../src/test_parser.nit:54,3--20 + ../src/test_parser.nit:54,16 + identifier 'only_lexer' ... ../src/test_parser.nit:54,3--12 + ../src/test_parser.nit:54,16 + '=' ... ../src/test_parser.nit:54,14 + ../src/test_parser.nit:54,16--20 + keyword 'false' ... ../src/test_parser.nit:54,16--20 + ../src/test_parser.nit:55,7--62,4 + keyword 'if' ... ../src/test_parser.nit:55,7--8 + ../src/test_parser.nit:55,10--27 + ../src/test_parser.nit:55,10--19 + ../src/test_parser.nit:55,10--13 + ../src/test_parser.nit:55,10 + identifier 'args' ... ../src/test_parser.nit:55,10--13 + ../src/test_parser.nit:55,10 + identifier 'first' ... ../src/test_parser.nit:55,15--19 + ../src/test_parser.nit:55,10 + ../src/test_parser.nit:55,24--27 + literal value '"-e"' ... ../src/test_parser.nit:55,24--27 + ../src/test_parser.nit:56,3--16 + ../src/test_parser.nit:56,3--16 + ../src/test_parser.nit:56,13 + identifier 'no_file' ... ../src/test_parser.nit:56,3--9 + ../src/test_parser.nit:56,13 + '=' ... ../src/test_parser.nit:56,11 + ../src/test_parser.nit:56,13--16 + keyword 'true' ... ../src/test_parser.nit:56,13--16 + ../src/test_parser.nit:57,7--62,4 + keyword 'if' ... ../src/test_parser.nit:57,7--8 + ../src/test_parser.nit:57,10--49 + ../src/test_parser.nit:57,10--27 + ../src/test_parser.nit:57,10--19 + ../src/test_parser.nit:57,10--13 + ../src/test_parser.nit:57,10 + identifier 'args' ... ../src/test_parser.nit:57,10--13 + ../src/test_parser.nit:57,10 + identifier 'first' ... ../src/test_parser.nit:57,15--19 + ../src/test_parser.nit:57,10 + ../src/test_parser.nit:57,24--27 + literal value '"-h"' ... ../src/test_parser.nit:57,24--27 + ../src/test_parser.nit:57,32--49 + ../src/test_parser.nit:57,32--41 + ../src/test_parser.nit:57,32--35 + ../src/test_parser.nit:57,32 + identifier 'args' ... ../src/test_parser.nit:57,32--35 + ../src/test_parser.nit:57,32 + identifier 'first' ... ../src/test_parser.nit:57,37--41 + ../src/test_parser.nit:57,32 + ../src/test_parser.nit:57,46--49 + literal value '"-?"' ... ../src/test_parser.nit:57,46--49 + ../src/test_parser.nit:58,3--18 + ../src/test_parser.nit:58,3--18 + ../src/test_parser.nit:58,15 + identifier 'need_help' ... ../src/test_parser.nit:58,3--11 + ../src/test_parser.nit:58,15 + '=' ... ../src/test_parser.nit:58,13 + ../src/test_parser.nit:58,15--18 + keyword 'true' ... ../src/test_parser.nit:58,15--18 + ../src/test_parser.nit:60,3--62,4 + ../src/test_parser.nit:60,3--48 + ../src/test_parser.nit:60,3--8 + ../src/test_parser.nit:60,3 + identifier 'stderr' ... ../src/test_parser.nit:60,3--8 + ../src/test_parser.nit:60,3 + identifier 'write' ... ../src/test_parser.nit:60,10--14 + ../src/test_parser.nit:60,15--48 + '(' ... ../src/test_parser.nit:60,15 + ../src/test_parser.nit:60,16--47 + ../src/test_parser.nit:60,16--32 + literal value '"Unknown option {' ... ../src/test_parser.nit:60,16--32 + ../src/test_parser.nit:60,33--42 + ../src/test_parser.nit:60,33--36 + ../src/test_parser.nit:60,33 + identifier 'args' ... ../src/test_parser.nit:60,33--36 + ../src/test_parser.nit:60,33 + identifier 'first' ... ../src/test_parser.nit:60,38--42 + ../src/test_parser.nit:60,33 + ../src/test_parser.nit:60,43--47 + '}.\n"' ... ../src/test_parser.nit:60,43--47 + ')' ... ../src/test_parser.nit:60,48 + ../src/test_parser.nit:61,3--9 + ../src/test_parser.nit:61,8 + identifier 'exit' ... ../src/test_parser.nit:61,3--6 + ../src/test_parser.nit:61,7--9 + '(' ... ../src/test_parser.nit:61,7 + ../src/test_parser.nit:61,8 + literal value '0' ... ../src/test_parser.nit:61,8 + ')' ... ../src/test_parser.nit:61,9 + keyword 'end' ... ../src/test_parser.nit:62,2--4 + ../src/test_parser.nit:63,2--11 + ../src/test_parser.nit:63,2--5 + ../src/test_parser.nit:63,2 + identifier 'args' ... ../src/test_parser.nit:63,2--5 + ../src/test_parser.nit:63,2 + identifier 'shift' ... ../src/test_parser.nit:63,7--11 + ../src/test_parser.nit:63,2 + keyword 'end' ... ../src/test_parser.nit:64,1--3 + ../src/test_parser.nit:66,1--109,3 + keyword 'if' ... ../src/test_parser.nit:66,1--2 + ../src/test_parser.nit:66,4--29 + ../src/test_parser.nit:66,4--16 + ../src/test_parser.nit:66,4--7 + ../src/test_parser.nit:66,4 + identifier 'args' ... ../src/test_parser.nit:66,4--7 + ../src/test_parser.nit:66,4 + identifier 'is_empty' ... ../src/test_parser.nit:66,9--16 + ../src/test_parser.nit:66,4 + ../src/test_parser.nit:66,21--29 + ../src/test_parser.nit:66,21 + identifier 'need_help' ... ../src/test_parser.nit:66,21--29 + ../src/test_parser.nit:66,21 + ../src/test_parser.nit:67,2--74,30 + ../src/test_parser.nit:67,2--16 + ../src/test_parser.nit:67,8 + identifier 'print' ... ../src/test_parser.nit:67,2--6 + ../src/test_parser.nit:67,7--16 + '(' ... ../src/test_parser.nit:67,7 + ../src/test_parser.nit:67,8--15 + literal value '"usage:"' ... ../src/test_parser.nit:67,8--15 + ')' ... ../src/test_parser.nit:67,16 + ../src/test_parser.nit:68,2--54 ../src/test_parser.nit:68,8 identifier 'print' ... ../src/test_parser.nit:68,2--6 - ../src/test_parser.nit:68,7--16 + ../src/test_parser.nit:68,7--54 '(' ... ../src/test_parser.nit:68,7 - ../src/test_parser.nit:68,8--15 - literal value '"usage:"' ... ../src/test_parser.nit:68,8--15 - ')' ... ../src/test_parser.nit:68,16 - ../src/test_parser.nit:69,2--54 + ../src/test_parser.nit:68,8--53 + literal value '" test_parser [options]... ..."' ... ../src/test_parser.nit:68,8--53 + ')' ... ../src/test_parser.nit:68,54 + ../src/test_parser.nit:69,2--18 ../src/test_parser.nit:69,8 identifier 'print' ... ../src/test_parser.nit:69,2--6 - ../src/test_parser.nit:69,7--54 + ../src/test_parser.nit:69,7--18 '(' ... ../src/test_parser.nit:69,7 - ../src/test_parser.nit:69,8--53 - literal value '" test_parser [options]... ..."' ... ../src/test_parser.nit:69,8--53 - ')' ... ../src/test_parser.nit:69,54 - ../src/test_parser.nit:70,2--18 + ../src/test_parser.nit:69,8--17 + literal value '"options:"' ... ../src/test_parser.nit:69,8--17 + ')' ... ../src/test_parser.nit:69,18 + ../src/test_parser.nit:70,2--36 ../src/test_parser.nit:70,8 identifier 'print' ... ../src/test_parser.nit:70,2--6 - ../src/test_parser.nit:70,7--18 + ../src/test_parser.nit:70,7--36 '(' ... ../src/test_parser.nit:70,7 - ../src/test_parser.nit:70,8--17 - literal value '"options:"' ... ../src/test_parser.nit:70,8--17 - ')' ... ../src/test_parser.nit:70,18 - ../src/test_parser.nit:71,2--36 + ../src/test_parser.nit:70,8--35 + literal value '" -n do not print anything"' ... ../src/test_parser.nit:70,8--35 + ')' ... ../src/test_parser.nit:70,36 + ../src/test_parser.nit:71,2--25 ../src/test_parser.nit:71,8 identifier 'print' ... ../src/test_parser.nit:71,2--6 - ../src/test_parser.nit:71,7--36 + ../src/test_parser.nit:71,7--25 '(' ... ../src/test_parser.nit:71,7 - ../src/test_parser.nit:71,8--35 - literal value '" -n do not print anything"' ... ../src/test_parser.nit:71,8--35 - ')' ... ../src/test_parser.nit:71,36 - ../src/test_parser.nit:72,2--25 + ../src/test_parser.nit:71,8--24 + literal value '" -l only lexer"' ... ../src/test_parser.nit:71,8--24 + ')' ... ../src/test_parser.nit:71,25 + ../src/test_parser.nit:72,2--41 ../src/test_parser.nit:72,8 identifier 'print' ... ../src/test_parser.nit:72,2--6 - ../src/test_parser.nit:72,7--25 + ../src/test_parser.nit:72,7--41 '(' ... ../src/test_parser.nit:72,7 - ../src/test_parser.nit:72,8--24 - literal value '" -l only lexer"' ... ../src/test_parser.nit:72,8--24 - ')' ... ../src/test_parser.nit:72,25 - ../src/test_parser.nit:73,2--41 + ../src/test_parser.nit:72,8--40 + literal value '" -p lexer and parser (default)"' ... ../src/test_parser.nit:72,8--40 + ')' ... ../src/test_parser.nit:72,41 + ../src/test_parser.nit:73,2--68 ../src/test_parser.nit:73,8 identifier 'print' ... ../src/test_parser.nit:73,2--6 - ../src/test_parser.nit:73,7--41 + ../src/test_parser.nit:73,7--68 '(' ... ../src/test_parser.nit:73,7 - ../src/test_parser.nit:73,8--40 - literal value '" -p lexer and parser (default)"' ... ../src/test_parser.nit:73,8--40 - ')' ... ../src/test_parser.nit:73,41 - ../src/test_parser.nit:74,2--68 + ../src/test_parser.nit:73,8--67 + literal value '" -e instead on files, each argument is a content to parse"' ... ../src/test_parser.nit:73,8--67 + ')' ... ../src/test_parser.nit:73,68 + ../src/test_parser.nit:74,2--30 ../src/test_parser.nit:74,8 identifier 'print' ... ../src/test_parser.nit:74,2--6 - ../src/test_parser.nit:74,7--68 + ../src/test_parser.nit:74,7--30 '(' ... ../src/test_parser.nit:74,7 - ../src/test_parser.nit:74,8--67 - literal value '" -e instead on files, each argument is a content to parse"' ... ../src/test_parser.nit:74,8--67 - ')' ... ../src/test_parser.nit:74,68 - ../src/test_parser.nit:75,2--30 - ../src/test_parser.nit:75,8 - identifier 'print' ... ../src/test_parser.nit:75,2--6 - ../src/test_parser.nit:75,7--30 - '(' ... ../src/test_parser.nit:75,7 - ../src/test_parser.nit:75,8--29 - literal value '" -h print this help"' ... ../src/test_parser.nit:75,8--29 - ')' ... ../src/test_parser.nit:75,30 - ../src/test_parser.nit:77,2--110,3 - ../src/test_parser.nit:77,2--109,4 - keyword 'for' ... ../src/test_parser.nit:77,2--4 - identifier 'a' ... ../src/test_parser.nit:77,6 - ../src/test_parser.nit:77,11--14 - ../src/test_parser.nit:77,11 - identifier 'args' ... ../src/test_parser.nit:77,11--14 - ../src/test_parser.nit:77,11 - keyword 'do' ... ../src/test_parser.nit:77,16--17 - ../src/test_parser.nit:78,3--109,4 - ../src/test_parser.nit:78,3--12 - keyword 'var' ... ../src/test_parser.nit:78,3--5 - identifier 'source' ... ../src/test_parser.nit:78,7--12 - ../src/test_parser.nit:79,3--85,5 - keyword 'if' ... ../src/test_parser.nit:79,3--4 - ../src/test_parser.nit:79,6--12 - ../src/test_parser.nit:79,6 - identifier 'no_file' ... ../src/test_parser.nit:79,6--12 - ../src/test_parser.nit:79,6 - ../src/test_parser.nit:80,4--45 - ../src/test_parser.nit:80,4--45 - ../src/test_parser.nit:80,17 - identifier 'source' ... ../src/test_parser.nit:80,4--9 - ../src/test_parser.nit:80,17 - '=' ... ../src/test_parser.nit:80,11 - ../src/test_parser.nit:80,13--45 - keyword 'new' ... ../src/test_parser.nit:80,13--15 - ../src/test_parser.nit:80,17--26 - type identifier 'SourceFile' ... ../src/test_parser.nit:80,17--26 - identifier 'from_string' ... ../src/test_parser.nit:80,28--38 - ../src/test_parser.nit:80,39--45 - '(' ... ../src/test_parser.nit:80,39 - ../src/test_parser.nit:80,40--41 - literal value '""' ... ../src/test_parser.nit:80,40--41 - ../src/test_parser.nit:80,44 - ../src/test_parser.nit:80,44 - identifier 'a' ... ../src/test_parser.nit:80,44 - ../src/test_parser.nit:80,44 - ')' ... ../src/test_parser.nit:80,45 - ../src/test_parser.nit:82,4--85,5 - ../src/test_parser.nit:82,4--31 - keyword 'var' ... ../src/test_parser.nit:82,4--6 - identifier 'f' ... ../src/test_parser.nit:82,8 - '=' ... ../src/test_parser.nit:82,10 - ../src/test_parser.nit:82,12--31 - keyword 'new' ... ../src/test_parser.nit:82,12--14 - ../src/test_parser.nit:82,16--23 - type identifier 'IFStream' ... ../src/test_parser.nit:82,16--23 - identifier 'open' ... ../src/test_parser.nit:82,25--28 - ../src/test_parser.nit:82,29--31 - '(' ... ../src/test_parser.nit:82,29 - ../src/test_parser.nit:82,30 - ../src/test_parser.nit:82,30 - identifier 'a' ... ../src/test_parser.nit:82,30 - ../src/test_parser.nit:82,30 - ')' ... ../src/test_parser.nit:82,31 - ../src/test_parser.nit:83,4--32 - ../src/test_parser.nit:83,17 - identifier 'source' ... ../src/test_parser.nit:83,4--9 - ../src/test_parser.nit:83,17 - '=' ... ../src/test_parser.nit:83,11 - ../src/test_parser.nit:83,13--32 - keyword 'new' ... ../src/test_parser.nit:83,13--15 - ../src/test_parser.nit:83,17--26 - type identifier 'SourceFile' ... ../src/test_parser.nit:83,17--26 - ../src/test_parser.nit:83,27--32 - '(' ... ../src/test_parser.nit:83,27 - ../src/test_parser.nit:83,28 - ../src/test_parser.nit:83,28 - identifier 'a' ... ../src/test_parser.nit:83,28 - ../src/test_parser.nit:83,28 - ../src/test_parser.nit:83,31 - ../src/test_parser.nit:83,31 - identifier 'f' ... ../src/test_parser.nit:83,31 - ../src/test_parser.nit:83,31 - ')' ... ../src/test_parser.nit:83,32 - ../src/test_parser.nit:84,4--10 - ../src/test_parser.nit:84,4 - ../src/test_parser.nit:84,4 - identifier 'f' ... ../src/test_parser.nit:84,4 - ../src/test_parser.nit:84,4 - identifier 'close' ... ../src/test_parser.nit:84,6--10 - ../src/test_parser.nit:84,4 - keyword 'end' ... ../src/test_parser.nit:85,3--5 - ../src/test_parser.nit:86,3--31 - keyword 'var' ... ../src/test_parser.nit:86,3--5 - identifier 'lexer' ... ../src/test_parser.nit:86,7--11 - '=' ... ../src/test_parser.nit:86,13 - ../src/test_parser.nit:86,15--31 - keyword 'new' ... ../src/test_parser.nit:86,15--17 - ../src/test_parser.nit:86,19--23 - type identifier 'Lexer' ... ../src/test_parser.nit:86,19--23 - ../src/test_parser.nit:86,24--31 - '(' ... ../src/test_parser.nit:86,24 - ../src/test_parser.nit:86,25--30 - ../src/test_parser.nit:86,25 - identifier 'source' ... ../src/test_parser.nit:86,25--30 - ../src/test_parser.nit:86,25 - ')' ... ../src/test_parser.nit:86,31 - ../src/test_parser.nit:87,3--108,5 - keyword 'if' ... ../src/test_parser.nit:87,3--4 - ../src/test_parser.nit:87,6--15 - ../src/test_parser.nit:87,6 - identifier 'only_lexer' ... ../src/test_parser.nit:87,6--15 - ../src/test_parser.nit:87,6 - ../src/test_parser.nit:88,4--94,6 - ../src/test_parser.nit:88,4--25 - keyword 'var' ... ../src/test_parser.nit:88,4--6 - identifier 'token' ... ../src/test_parser.nit:88,8--12 - '=' ... ../src/test_parser.nit:88,14 - ../src/test_parser.nit:88,16--25 - ../src/test_parser.nit:88,16--20 - ../src/test_parser.nit:88,16 - identifier 'lexer' ... ../src/test_parser.nit:88,16--20 - ../src/test_parser.nit:88,16 - identifier 'next' ... ../src/test_parser.nit:88,22--25 - ../src/test_parser.nit:88,16 - ../src/test_parser.nit:89,4--94,6 - keyword 'while' ... ../src/test_parser.nit:89,4--8 - ../src/test_parser.nit:89,10--26 - keyword 'not' ... ../src/test_parser.nit:89,10--12 - ../src/test_parser.nit:89,14--26 - ../src/test_parser.nit:89,14--18 - ../src/test_parser.nit:89,14 - identifier 'token' ... ../src/test_parser.nit:89,14--18 - ../src/test_parser.nit:89,14 - ../src/test_parser.nit:89,24--26 - type identifier 'EOF' ... ../src/test_parser.nit:89,24--26 - keyword 'do' ... ../src/test_parser.nit:89,28--29 - ../src/test_parser.nit:90,5--94,6 - ../src/test_parser.nit:90,5--92,7 - keyword 'if' ... ../src/test_parser.nit:90,5--6 - ../src/test_parser.nit:90,8--19 - keyword 'not' ... ../src/test_parser.nit:90,8--10 - ../src/test_parser.nit:90,12--19 + ../src/test_parser.nit:74,8--29 + literal value '" -h print this help"' ... ../src/test_parser.nit:74,8--29 + ')' ... ../src/test_parser.nit:74,30 + ../src/test_parser.nit:76,2--109,3 + ../src/test_parser.nit:76,2--108,4 + keyword 'for' ... ../src/test_parser.nit:76,2--4 + identifier 'a' ... ../src/test_parser.nit:76,6 + ../src/test_parser.nit:76,11--14 + ../src/test_parser.nit:76,11 + identifier 'args' ... ../src/test_parser.nit:76,11--14 + ../src/test_parser.nit:76,11 + keyword 'do' ... ../src/test_parser.nit:76,16--17 + ../src/test_parser.nit:77,3--108,4 + ../src/test_parser.nit:77,3--12 + keyword 'var' ... ../src/test_parser.nit:77,3--5 + identifier 'source' ... ../src/test_parser.nit:77,7--12 + ../src/test_parser.nit:78,3--84,5 + keyword 'if' ... ../src/test_parser.nit:78,3--4 + ../src/test_parser.nit:78,6--12 + ../src/test_parser.nit:78,6 + identifier 'no_file' ... ../src/test_parser.nit:78,6--12 + ../src/test_parser.nit:78,6 + ../src/test_parser.nit:79,4--45 + ../src/test_parser.nit:79,4--45 + ../src/test_parser.nit:79,17 + identifier 'source' ... ../src/test_parser.nit:79,4--9 + ../src/test_parser.nit:79,17 + '=' ... ../src/test_parser.nit:79,11 + ../src/test_parser.nit:79,13--45 + keyword 'new' ... ../src/test_parser.nit:79,13--15 + ../src/test_parser.nit:79,17--26 + type identifier 'SourceFile' ... ../src/test_parser.nit:79,17--26 + identifier 'from_string' ... ../src/test_parser.nit:79,28--38 + ../src/test_parser.nit:79,39--45 + '(' ... ../src/test_parser.nit:79,39 + ../src/test_parser.nit:79,40--41 + literal value '""' ... ../src/test_parser.nit:79,40--41 + ../src/test_parser.nit:79,44 + ../src/test_parser.nit:79,44 + identifier 'a' ... ../src/test_parser.nit:79,44 + ../src/test_parser.nit:79,44 + ')' ... ../src/test_parser.nit:79,45 + ../src/test_parser.nit:81,4--84,5 + ../src/test_parser.nit:81,4--31 + keyword 'var' ... ../src/test_parser.nit:81,4--6 + identifier 'f' ... ../src/test_parser.nit:81,8 + '=' ... ../src/test_parser.nit:81,10 + ../src/test_parser.nit:81,12--31 + keyword 'new' ... ../src/test_parser.nit:81,12--14 + ../src/test_parser.nit:81,16--23 + type identifier 'IFStream' ... ../src/test_parser.nit:81,16--23 + identifier 'open' ... ../src/test_parser.nit:81,25--28 + ../src/test_parser.nit:81,29--31 + '(' ... ../src/test_parser.nit:81,29 + ../src/test_parser.nit:81,30 + ../src/test_parser.nit:81,30 + identifier 'a' ... ../src/test_parser.nit:81,30 + ../src/test_parser.nit:81,30 + ')' ... ../src/test_parser.nit:81,31 + ../src/test_parser.nit:82,4--32 + ../src/test_parser.nit:82,17 + identifier 'source' ... ../src/test_parser.nit:82,4--9 + ../src/test_parser.nit:82,17 + '=' ... ../src/test_parser.nit:82,11 + ../src/test_parser.nit:82,13--32 + keyword 'new' ... ../src/test_parser.nit:82,13--15 + ../src/test_parser.nit:82,17--26 + type identifier 'SourceFile' ... ../src/test_parser.nit:82,17--26 + ../src/test_parser.nit:82,27--32 + '(' ... ../src/test_parser.nit:82,27 + ../src/test_parser.nit:82,28 + ../src/test_parser.nit:82,28 + identifier 'a' ... ../src/test_parser.nit:82,28 + ../src/test_parser.nit:82,28 + ../src/test_parser.nit:82,31 + ../src/test_parser.nit:82,31 + identifier 'f' ... ../src/test_parser.nit:82,31 + ../src/test_parser.nit:82,31 + ')' ... ../src/test_parser.nit:82,32 + ../src/test_parser.nit:83,4--10 + ../src/test_parser.nit:83,4 + ../src/test_parser.nit:83,4 + identifier 'f' ... ../src/test_parser.nit:83,4 + ../src/test_parser.nit:83,4 + identifier 'close' ... ../src/test_parser.nit:83,6--10 + ../src/test_parser.nit:83,4 + keyword 'end' ... ../src/test_parser.nit:84,3--5 + ../src/test_parser.nit:85,3--31 + keyword 'var' ... ../src/test_parser.nit:85,3--5 + identifier 'lexer' ... ../src/test_parser.nit:85,7--11 + '=' ... ../src/test_parser.nit:85,13 + ../src/test_parser.nit:85,15--31 + keyword 'new' ... ../src/test_parser.nit:85,15--17 + ../src/test_parser.nit:85,19--23 + type identifier 'Lexer' ... ../src/test_parser.nit:85,19--23 + ../src/test_parser.nit:85,24--31 + '(' ... ../src/test_parser.nit:85,24 + ../src/test_parser.nit:85,25--30 + ../src/test_parser.nit:85,25 + identifier 'source' ... ../src/test_parser.nit:85,25--30 + ../src/test_parser.nit:85,25 + ')' ... ../src/test_parser.nit:85,31 + ../src/test_parser.nit:86,3--107,5 + keyword 'if' ... ../src/test_parser.nit:86,3--4 + ../src/test_parser.nit:86,6--15 + ../src/test_parser.nit:86,6 + identifier 'only_lexer' ... ../src/test_parser.nit:86,6--15 + ../src/test_parser.nit:86,6 + ../src/test_parser.nit:87,4--93,6 + ../src/test_parser.nit:87,4--25 + keyword 'var' ... ../src/test_parser.nit:87,4--6 + identifier 'token' ... ../src/test_parser.nit:87,8--12 + '=' ... ../src/test_parser.nit:87,14 + ../src/test_parser.nit:87,16--25 + ../src/test_parser.nit:87,16--20 + ../src/test_parser.nit:87,16 + identifier 'lexer' ... ../src/test_parser.nit:87,16--20 + ../src/test_parser.nit:87,16 + identifier 'next' ... ../src/test_parser.nit:87,22--25 + ../src/test_parser.nit:87,16 + ../src/test_parser.nit:88,4--93,6 + keyword 'while' ... ../src/test_parser.nit:88,4--8 + ../src/test_parser.nit:88,10--26 + keyword 'not' ... ../src/test_parser.nit:88,10--12 + ../src/test_parser.nit:88,14--26 + ../src/test_parser.nit:88,14--18 + ../src/test_parser.nit:88,14 + identifier 'token' ... ../src/test_parser.nit:88,14--18 + ../src/test_parser.nit:88,14 + ../src/test_parser.nit:88,24--26 + type identifier 'EOF' ... ../src/test_parser.nit:88,24--26 + keyword 'do' ... ../src/test_parser.nit:88,28--29 + ../src/test_parser.nit:89,5--93,6 + ../src/test_parser.nit:89,5--91,7 + keyword 'if' ... ../src/test_parser.nit:89,5--6 + ../src/test_parser.nit:89,8--19 + keyword 'not' ... ../src/test_parser.nit:89,8--10 + ../src/test_parser.nit:89,12--19 + ../src/test_parser.nit:89,12 + identifier 'no_print' ... ../src/test_parser.nit:89,12--19 + ../src/test_parser.nit:89,12 + ../src/test_parser.nit:90,6--64 + ../src/test_parser.nit:90,6--64 ../src/test_parser.nit:90,12 - identifier 'no_print' ... ../src/test_parser.nit:90,12--19 - ../src/test_parser.nit:90,12 - ../src/test_parser.nit:91,6--64 - ../src/test_parser.nit:91,6--64 - ../src/test_parser.nit:91,12 - identifier 'print' ... ../src/test_parser.nit:91,6--10 - ../src/test_parser.nit:91,11--64 - '(' ... ../src/test_parser.nit:91,11 - ../src/test_parser.nit:91,12--63 - ../src/test_parser.nit:91,12--27 - literal value '"Read token at {' ... ../src/test_parser.nit:91,12--27 - ../src/test_parser.nit:91,28--41 - ../src/test_parser.nit:91,28--32 - ../src/test_parser.nit:91,28 - identifier 'token' ... ../src/test_parser.nit:91,28--32 - ../src/test_parser.nit:91,28 - identifier 'location' ... ../src/test_parser.nit:91,34--41 - ../src/test_parser.nit:91,28 - ../src/test_parser.nit:91,42--50 - literal value '} text='{' ... ../src/test_parser.nit:91,42--50 - ../src/test_parser.nit:91,51--60 - ../src/test_parser.nit:91,51--55 - ../src/test_parser.nit:91,51 - identifier 'token' ... ../src/test_parser.nit:91,51--55 - ../src/test_parser.nit:91,51 - identifier 'text' ... ../src/test_parser.nit:91,57--60 - ../src/test_parser.nit:91,51 - ../src/test_parser.nit:91,61--63 - '}'"' ... ../src/test_parser.nit:91,61--63 - ')' ... ../src/test_parser.nit:91,64 - ../src/test_parser.nit:92,5--7 - keyword 'end' ... ../src/test_parser.nit:92,5--7 - ../src/test_parser.nit:93,5--22 - ../src/test_parser.nit:93,13 - identifier 'token' ... ../src/test_parser.nit:93,5--9 - ../src/test_parser.nit:93,13 - '=' ... ../src/test_parser.nit:93,11 - ../src/test_parser.nit:93,13--22 - ../src/test_parser.nit:93,13--17 - ../src/test_parser.nit:93,13 - identifier 'lexer' ... ../src/test_parser.nit:93,13--17 - ../src/test_parser.nit:93,13 - identifier 'next' ... ../src/test_parser.nit:93,19--22 - ../src/test_parser.nit:93,13 - keyword 'end' ... ../src/test_parser.nit:94,4--6 - ../src/test_parser.nit:96,4--108,5 - ../src/test_parser.nit:96,4--33 + identifier 'print' ... ../src/test_parser.nit:90,6--10 + ../src/test_parser.nit:90,11--64 + '(' ... ../src/test_parser.nit:90,11 + ../src/test_parser.nit:90,12--63 + ../src/test_parser.nit:90,12--27 + literal value '"Read token at {' ... ../src/test_parser.nit:90,12--27 + ../src/test_parser.nit:90,28--41 + ../src/test_parser.nit:90,28--32 + ../src/test_parser.nit:90,28 + identifier 'token' ... ../src/test_parser.nit:90,28--32 + ../src/test_parser.nit:90,28 + identifier 'location' ... ../src/test_parser.nit:90,34--41 + ../src/test_parser.nit:90,28 + ../src/test_parser.nit:90,42--50 + literal value '} text='{' ... ../src/test_parser.nit:90,42--50 + ../src/test_parser.nit:90,51--60 + ../src/test_parser.nit:90,51--55 + ../src/test_parser.nit:90,51 + identifier 'token' ... ../src/test_parser.nit:90,51--55 + ../src/test_parser.nit:90,51 + identifier 'text' ... ../src/test_parser.nit:90,57--60 + ../src/test_parser.nit:90,51 + ../src/test_parser.nit:90,61--63 + '}'"' ... ../src/test_parser.nit:90,61--63 + ')' ... ../src/test_parser.nit:90,64 + ../src/test_parser.nit:91,5--7 + keyword 'end' ... ../src/test_parser.nit:91,5--7 + ../src/test_parser.nit:92,5--22 + ../src/test_parser.nit:92,13 + identifier 'token' ... ../src/test_parser.nit:92,5--9 + ../src/test_parser.nit:92,13 + '=' ... ../src/test_parser.nit:92,11 + ../src/test_parser.nit:92,13--22 + ../src/test_parser.nit:92,13--17 + ../src/test_parser.nit:92,13 + identifier 'lexer' ... ../src/test_parser.nit:92,13--17 + ../src/test_parser.nit:92,13 + identifier 'next' ... ../src/test_parser.nit:92,19--22 + ../src/test_parser.nit:92,13 + keyword 'end' ... ../src/test_parser.nit:93,4--6 + ../src/test_parser.nit:95,4--107,5 + ../src/test_parser.nit:95,4--33 + keyword 'var' ... ../src/test_parser.nit:95,4--6 + identifier 'parser' ... ../src/test_parser.nit:95,8--13 + '=' ... ../src/test_parser.nit:95,15 + ../src/test_parser.nit:95,17--33 + keyword 'new' ... ../src/test_parser.nit:95,17--19 + ../src/test_parser.nit:95,21--26 + type identifier 'Parser' ... ../src/test_parser.nit:95,21--26 + ../src/test_parser.nit:95,27--33 + '(' ... ../src/test_parser.nit:95,27 + ../src/test_parser.nit:95,28--32 + ../src/test_parser.nit:95,28 + identifier 'lexer' ... ../src/test_parser.nit:95,28--32 + ../src/test_parser.nit:95,28 + ')' ... ../src/test_parser.nit:95,33 + ../src/test_parser.nit:96,4--26 keyword 'var' ... ../src/test_parser.nit:96,4--6 - identifier 'parser' ... ../src/test_parser.nit:96,8--13 - '=' ... ../src/test_parser.nit:96,15 - ../src/test_parser.nit:96,17--33 - keyword 'new' ... ../src/test_parser.nit:96,17--19 - ../src/test_parser.nit:96,21--26 - type identifier 'Parser' ... ../src/test_parser.nit:96,21--26 - ../src/test_parser.nit:96,27--33 - '(' ... ../src/test_parser.nit:96,27 - ../src/test_parser.nit:96,28--32 - ../src/test_parser.nit:96,28 - identifier 'lexer' ... ../src/test_parser.nit:96,28--32 - ../src/test_parser.nit:96,28 - ')' ... ../src/test_parser.nit:96,33 - ../src/test_parser.nit:97,4--26 - keyword 'var' ... ../src/test_parser.nit:97,4--6 - identifier 'tree' ... ../src/test_parser.nit:97,8--11 - '=' ... ../src/test_parser.nit:97,13 - ../src/test_parser.nit:97,15--26 - ../src/test_parser.nit:97,15--20 - ../src/test_parser.nit:97,15 - identifier 'parser' ... ../src/test_parser.nit:97,15--20 - ../src/test_parser.nit:97,15 - identifier 'parse' ... ../src/test_parser.nit:97,22--26 - ../src/test_parser.nit:97,15 - ../src/test_parser.nit:99,4--25 - keyword 'var' ... ../src/test_parser.nit:99,4--6 - identifier 'error' ... ../src/test_parser.nit:99,8--12 - '=' ... ../src/test_parser.nit:99,14 - ../src/test_parser.nit:99,16--25 - ../src/test_parser.nit:99,16--19 - ../src/test_parser.nit:99,16 - identifier 'tree' ... ../src/test_parser.nit:99,16--19 - ../src/test_parser.nit:99,16 - identifier 'n_eof' ... ../src/test_parser.nit:99,21--25 - ../src/test_parser.nit:99,16 - ../src/test_parser.nit:100,4--103,6 - keyword 'if' ... ../src/test_parser.nit:100,4--5 - ../src/test_parser.nit:100,7--22 - ../src/test_parser.nit:100,7--11 - ../src/test_parser.nit:100,7 - identifier 'error' ... ../src/test_parser.nit:100,7--11 - ../src/test_parser.nit:100,7 - ../src/test_parser.nit:100,17--22 - type identifier 'AError' ... ../src/test_parser.nit:100,17--22 - ../src/test_parser.nit:101,5--102,10 - ../src/test_parser.nit:101,5--58 - ../src/test_parser.nit:101,11 - identifier 'print' ... ../src/test_parser.nit:101,5--9 - ../src/test_parser.nit:101,10--58 - '(' ... ../src/test_parser.nit:101,10 - ../src/test_parser.nit:101,11--57 - ../src/test_parser.nit:101,11--21 - literal value '"Error at {' ... ../src/test_parser.nit:101,11--21 - ../src/test_parser.nit:101,22--35 - ../src/test_parser.nit:101,22--26 - ../src/test_parser.nit:101,22 - identifier 'error' ... ../src/test_parser.nit:101,22--26 - ../src/test_parser.nit:101,22 - identifier 'location' ... ../src/test_parser.nit:101,28--35 - ../src/test_parser.nit:101,22 - ../src/test_parser.nit:101,36--42 - literal value '}:\n\t{' ... ../src/test_parser.nit:101,36--42 - ../src/test_parser.nit:101,43--55 - ../src/test_parser.nit:101,43--47 - ../src/test_parser.nit:101,43 - identifier 'error' ... ../src/test_parser.nit:101,43--47 - ../src/test_parser.nit:101,43 - identifier 'message' ... ../src/test_parser.nit:101,49--55 - ../src/test_parser.nit:101,43 - ../src/test_parser.nit:101,56--57 - '}"' ... ../src/test_parser.nit:101,56--57 - ')' ... ../src/test_parser.nit:101,58 - ../src/test_parser.nit:102,5--10 - keyword 'return' ... ../src/test_parser.nit:102,5--10 - ../src/test_parser.nit:103,4--6 - keyword 'end' ... ../src/test_parser.nit:103,4--6 - ../src/test_parser.nit:105,4--107,6 - keyword 'if' ... ../src/test_parser.nit:105,4--5 - ../src/test_parser.nit:105,7--18 - keyword 'not' ... ../src/test_parser.nit:105,7--9 - ../src/test_parser.nit:105,11--18 - ../src/test_parser.nit:105,11 - identifier 'no_print' ... ../src/test_parser.nit:105,11--18 - ../src/test_parser.nit:105,11 - ../src/test_parser.nit:106,5--44 - ../src/test_parser.nit:106,5--44 - ../src/test_parser.nit:106,5--26 - '(' ... ../src/test_parser.nit:106,5 - ../src/test_parser.nit:106,6--25 - keyword 'new' ... ../src/test_parser.nit:106,6--8 - ../src/test_parser.nit:106,10--25 - type identifier 'PrintTreeVisitor' ... ../src/test_parser.nit:106,10--25 - ../src/test_parser.nit:106,6 - ')' ... ../src/test_parser.nit:106,26 - identifier 'enter_visit' ... ../src/test_parser.nit:106,28--38 - ../src/test_parser.nit:106,39--44 - '(' ... ../src/test_parser.nit:106,39 - ../src/test_parser.nit:106,40--43 - ../src/test_parser.nit:106,40 - identifier 'tree' ... ../src/test_parser.nit:106,40--43 - ../src/test_parser.nit:106,40 - ')' ... ../src/test_parser.nit:106,44 - ../src/test_parser.nit:107,4--6 - keyword 'end' ... ../src/test_parser.nit:107,4--6 - keyword 'end' ... ../src/test_parser.nit:108,3--5 - keyword 'end' ... ../src/test_parser.nit:109,2--4 - keyword 'end' ... ../src/test_parser.nit:110,1--3 - end of file ... ../src/test_parser.nit:111,1 + identifier 'tree' ... ../src/test_parser.nit:96,8--11 + '=' ... ../src/test_parser.nit:96,13 + ../src/test_parser.nit:96,15--26 + ../src/test_parser.nit:96,15--20 + ../src/test_parser.nit:96,15 + identifier 'parser' ... ../src/test_parser.nit:96,15--20 + ../src/test_parser.nit:96,15 + identifier 'parse' ... ../src/test_parser.nit:96,22--26 + ../src/test_parser.nit:96,15 + ../src/test_parser.nit:98,4--25 + keyword 'var' ... ../src/test_parser.nit:98,4--6 + identifier 'error' ... ../src/test_parser.nit:98,8--12 + '=' ... ../src/test_parser.nit:98,14 + ../src/test_parser.nit:98,16--25 + ../src/test_parser.nit:98,16--19 + ../src/test_parser.nit:98,16 + identifier 'tree' ... ../src/test_parser.nit:98,16--19 + ../src/test_parser.nit:98,16 + identifier 'n_eof' ... ../src/test_parser.nit:98,21--25 + ../src/test_parser.nit:98,16 + ../src/test_parser.nit:99,4--102,6 + keyword 'if' ... ../src/test_parser.nit:99,4--5 + ../src/test_parser.nit:99,7--22 + ../src/test_parser.nit:99,7--11 + ../src/test_parser.nit:99,7 + identifier 'error' ... ../src/test_parser.nit:99,7--11 + ../src/test_parser.nit:99,7 + ../src/test_parser.nit:99,17--22 + type identifier 'AError' ... ../src/test_parser.nit:99,17--22 + ../src/test_parser.nit:100,5--101,10 + ../src/test_parser.nit:100,5--58 + ../src/test_parser.nit:100,11 + identifier 'print' ... ../src/test_parser.nit:100,5--9 + ../src/test_parser.nit:100,10--58 + '(' ... ../src/test_parser.nit:100,10 + ../src/test_parser.nit:100,11--57 + ../src/test_parser.nit:100,11--21 + literal value '"Error at {' ... ../src/test_parser.nit:100,11--21 + ../src/test_parser.nit:100,22--35 + ../src/test_parser.nit:100,22--26 + ../src/test_parser.nit:100,22 + identifier 'error' ... ../src/test_parser.nit:100,22--26 + ../src/test_parser.nit:100,22 + identifier 'location' ... ../src/test_parser.nit:100,28--35 + ../src/test_parser.nit:100,22 + ../src/test_parser.nit:100,36--42 + literal value '}:\n\t{' ... ../src/test_parser.nit:100,36--42 + ../src/test_parser.nit:100,43--55 + ../src/test_parser.nit:100,43--47 + ../src/test_parser.nit:100,43 + identifier 'error' ... ../src/test_parser.nit:100,43--47 + ../src/test_parser.nit:100,43 + identifier 'message' ... ../src/test_parser.nit:100,49--55 + ../src/test_parser.nit:100,43 + ../src/test_parser.nit:100,56--57 + '}"' ... ../src/test_parser.nit:100,56--57 + ')' ... ../src/test_parser.nit:100,58 + ../src/test_parser.nit:101,5--10 + keyword 'return' ... ../src/test_parser.nit:101,5--10 + ../src/test_parser.nit:102,4--6 + keyword 'end' ... ../src/test_parser.nit:102,4--6 + ../src/test_parser.nit:104,4--106,6 + keyword 'if' ... ../src/test_parser.nit:104,4--5 + ../src/test_parser.nit:104,7--18 + keyword 'not' ... ../src/test_parser.nit:104,7--9 + ../src/test_parser.nit:104,11--18 + ../src/test_parser.nit:104,11 + identifier 'no_print' ... ../src/test_parser.nit:104,11--18 + ../src/test_parser.nit:104,11 + ../src/test_parser.nit:105,5--44 + ../src/test_parser.nit:105,5--44 + ../src/test_parser.nit:105,5--26 + '(' ... ../src/test_parser.nit:105,5 + ../src/test_parser.nit:105,6--25 + keyword 'new' ... ../src/test_parser.nit:105,6--8 + ../src/test_parser.nit:105,10--25 + type identifier 'PrintTreeVisitor' ... ../src/test_parser.nit:105,10--25 + ../src/test_parser.nit:105,6 + ')' ... ../src/test_parser.nit:105,26 + identifier 'enter_visit' ... ../src/test_parser.nit:105,28--38 + ../src/test_parser.nit:105,39--44 + '(' ... ../src/test_parser.nit:105,39 + ../src/test_parser.nit:105,40--43 + ../src/test_parser.nit:105,40 + identifier 'tree' ... ../src/test_parser.nit:105,40--43 + ../src/test_parser.nit:105,40 + ')' ... ../src/test_parser.nit:105,44 + ../src/test_parser.nit:106,4--6 + keyword 'end' ... ../src/test_parser.nit:106,4--6 + keyword 'end' ... ../src/test_parser.nit:107,3--5 + keyword 'end' ... ../src/test_parser.nit:108,2--4 + keyword 'end' ... ../src/test_parser.nit:109,1--3 + end of file ... ../src/test_parser.nit:110,1 diff --git a/tests/sav/test_parser_args2.res b/tests/sav/test_parser_args2.res index 4b39a6b..2730912 100644 --- a/tests/sav/test_parser_args2.res +++ b/tests/sav/test_parser_args2.res @@ -63,545 +63,534 @@ Read token at ../src/test_parser.nit:25,8--10 text='fun' Read token at ../src/test_parser.nit:25,12--16 text='visit' Read token at ../src/test_parser.nit:25,17 text='(' Read token at ../src/test_parser.nit:25,18 text='n' -Read token at ../src/test_parser.nit:25,19 text=':' -Read token at ../src/test_parser.nit:25,21--28 text='nullable' -Read token at ../src/test_parser.nit:25,30--34 text='ANode' -Read token at ../src/test_parser.nit:25,35 text=')' -Read token at ../src/test_parser.nit:25,36--26,0 text=' +Read token at ../src/test_parser.nit:25,19 text=')' +Read token at ../src/test_parser.nit:25,20--26,0 text=' ' Read token at ../src/test_parser.nit:26,2--3 text='do' Read token at ../src/test_parser.nit:26,4--27,0 text=' ' Read token at ../src/test_parser.nit:27,3--4 text='if' Read token at ../src/test_parser.nit:27,6 text='n' -Read token at ../src/test_parser.nit:27,8--9 text='==' -Read token at ../src/test_parser.nit:27,11--14 text='null' -Read token at ../src/test_parser.nit:27,16--19 text='then' -Read token at ../src/test_parser.nit:27,21--26 text='return' -Read token at ../src/test_parser.nit:27,27--28,0 text=' -' -Read token at ../src/test_parser.nit:28,3--4 text='if' -Read token at ../src/test_parser.nit:28,6 text='n' -Read token at ../src/test_parser.nit:28,8--10 text='isa' -Read token at ../src/test_parser.nit:28,12--16 text='Token' -Read token at ../src/test_parser.nit:28,18--21 text='then' -Read token at ../src/test_parser.nit:28,22--29,0 text=' -' -Read token at ../src/test_parser.nit:29,4--9 text='printn' -Read token at ../src/test_parser.nit:29,10 text='(' -Read token at ../src/test_parser.nit:29,11--14 text='" "' -Read token at ../src/test_parser.nit:29,16 text='*' -Read token at ../src/test_parser.nit:29,18--22 text='_rank' -Read token at ../src/test_parser.nit:29,23 text=',' -Read token at ../src/test_parser.nit:29,25 text='n' -Read token at ../src/test_parser.nit:29,26 text='.' -Read token at ../src/test_parser.nit:29,27--30 text='to_s' -Read token at ../src/test_parser.nit:29,31 text=',' -Read token at ../src/test_parser.nit:29,33--39 text='" ... "' -Read token at ../src/test_parser.nit:29,40 text=',' -Read token at ../src/test_parser.nit:29,42 text='n' -Read token at ../src/test_parser.nit:29,43 text='.' -Read token at ../src/test_parser.nit:29,44--51 text='location' -Read token at ../src/test_parser.nit:29,52 text=',' -Read token at ../src/test_parser.nit:29,54--57 text='"\n"' -Read token at ../src/test_parser.nit:29,58 text=')' -Read token at ../src/test_parser.nit:29,59--30,0 text=' -' -Read token at ../src/test_parser.nit:30,3--6 text='else' -Read token at ../src/test_parser.nit:30,7--31,0 text=' -' -Read token at ../src/test_parser.nit:31,4--9 text='printn' -Read token at ../src/test_parser.nit:31,10 text='(' -Read token at ../src/test_parser.nit:31,11--14 text='" "' -Read token at ../src/test_parser.nit:31,16 text='*' -Read token at ../src/test_parser.nit:31,18--22 text='_rank' -Read token at ../src/test_parser.nit:31,23 text=',' -Read token at ../src/test_parser.nit:31,25 text='n' -Read token at ../src/test_parser.nit:31,26 text='.' -Read token at ../src/test_parser.nit:31,27--34 text='location' -Read token at ../src/test_parser.nit:31,35 text=',' -Read token at ../src/test_parser.nit:31,37--40 text='"\n"' -Read token at ../src/test_parser.nit:31,41 text=')' -Read token at ../src/test_parser.nit:31,42--32,0 text=' -' -Read token at ../src/test_parser.nit:32,3--5 text='end' -Read token at ../src/test_parser.nit:32,6--33,0 text=' -' -Read token at ../src/test_parser.nit:33,3--7 text='_rank' -Read token at ../src/test_parser.nit:33,9 text='=' -Read token at ../src/test_parser.nit:33,11--15 text='_rank' -Read token at ../src/test_parser.nit:33,17 text='+' -Read token at ../src/test_parser.nit:33,19 text='1' +Read token at ../src/test_parser.nit:27,8--10 text='isa' +Read token at ../src/test_parser.nit:27,12--16 text='Token' +Read token at ../src/test_parser.nit:27,18--21 text='then' +Read token at ../src/test_parser.nit:27,22--28,0 text=' +' +Read token at ../src/test_parser.nit:28,4--9 text='printn' +Read token at ../src/test_parser.nit:28,10 text='(' +Read token at ../src/test_parser.nit:28,11--14 text='" "' +Read token at ../src/test_parser.nit:28,16 text='*' +Read token at ../src/test_parser.nit:28,18--22 text='_rank' +Read token at ../src/test_parser.nit:28,23 text=',' +Read token at ../src/test_parser.nit:28,25 text='n' +Read token at ../src/test_parser.nit:28,26 text='.' +Read token at ../src/test_parser.nit:28,27--30 text='to_s' +Read token at ../src/test_parser.nit:28,31 text=',' +Read token at ../src/test_parser.nit:28,33--39 text='" ... "' +Read token at ../src/test_parser.nit:28,40 text=',' +Read token at ../src/test_parser.nit:28,42 text='n' +Read token at ../src/test_parser.nit:28,43 text='.' +Read token at ../src/test_parser.nit:28,44--51 text='location' +Read token at ../src/test_parser.nit:28,52 text=',' +Read token at ../src/test_parser.nit:28,54--57 text='"\n"' +Read token at ../src/test_parser.nit:28,58 text=')' +Read token at ../src/test_parser.nit:28,59--29,0 text=' +' +Read token at ../src/test_parser.nit:29,3--6 text='else' +Read token at ../src/test_parser.nit:29,7--30,0 text=' +' +Read token at ../src/test_parser.nit:30,4--9 text='printn' +Read token at ../src/test_parser.nit:30,10 text='(' +Read token at ../src/test_parser.nit:30,11--14 text='" "' +Read token at ../src/test_parser.nit:30,16 text='*' +Read token at ../src/test_parser.nit:30,18--22 text='_rank' +Read token at ../src/test_parser.nit:30,23 text=',' +Read token at ../src/test_parser.nit:30,25 text='n' +Read token at ../src/test_parser.nit:30,26 text='.' +Read token at ../src/test_parser.nit:30,27--34 text='location' +Read token at ../src/test_parser.nit:30,35 text=',' +Read token at ../src/test_parser.nit:30,37--40 text='"\n"' +Read token at ../src/test_parser.nit:30,41 text=')' +Read token at ../src/test_parser.nit:30,42--31,0 text=' +' +Read token at ../src/test_parser.nit:31,3--5 text='end' +Read token at ../src/test_parser.nit:31,6--32,0 text=' +' +Read token at ../src/test_parser.nit:32,3--7 text='_rank' +Read token at ../src/test_parser.nit:32,9 text='=' +Read token at ../src/test_parser.nit:32,11--15 text='_rank' +Read token at ../src/test_parser.nit:32,17 text='+' +Read token at ../src/test_parser.nit:32,19 text='1' +Read token at ../src/test_parser.nit:32,20--33,0 text=' +' +Read token at ../src/test_parser.nit:33,3 text='n' +Read token at ../src/test_parser.nit:33,4 text='.' +Read token at ../src/test_parser.nit:33,5--13 text='visit_all' +Read token at ../src/test_parser.nit:33,14 text='(' +Read token at ../src/test_parser.nit:33,15--18 text='self' +Read token at ../src/test_parser.nit:33,19 text=')' Read token at ../src/test_parser.nit:33,20--34,0 text=' ' -Read token at ../src/test_parser.nit:34,3 text='n' -Read token at ../src/test_parser.nit:34,4 text='.' -Read token at ../src/test_parser.nit:34,5--13 text='visit_all' -Read token at ../src/test_parser.nit:34,14 text='(' -Read token at ../src/test_parser.nit:34,15--18 text='self' -Read token at ../src/test_parser.nit:34,19 text=')' +Read token at ../src/test_parser.nit:34,3--7 text='_rank' +Read token at ../src/test_parser.nit:34,9 text='=' +Read token at ../src/test_parser.nit:34,11--15 text='_rank' +Read token at ../src/test_parser.nit:34,17 text='-' +Read token at ../src/test_parser.nit:34,19 text='1' Read token at ../src/test_parser.nit:34,20--35,0 text=' ' -Read token at ../src/test_parser.nit:35,3--7 text='_rank' -Read token at ../src/test_parser.nit:35,9 text='=' -Read token at ../src/test_parser.nit:35,11--15 text='_rank' -Read token at ../src/test_parser.nit:35,17 text='-' -Read token at ../src/test_parser.nit:35,19 text='1' -Read token at ../src/test_parser.nit:35,20--36,0 text=' +Read token at ../src/test_parser.nit:35,2--4 text='end' +Read token at ../src/test_parser.nit:35,5--36,0 text=' ' -Read token at ../src/test_parser.nit:36,2--4 text='end' -Read token at ../src/test_parser.nit:36,5--37,0 text=' +Read token at ../src/test_parser.nit:36,1--37,0 text=' ' -Read token at ../src/test_parser.nit:37,1--38,0 text=' +Read token at ../src/test_parser.nit:37,2--5 text='init' +Read token at ../src/test_parser.nit:37,6--38,0 text=' ' -Read token at ../src/test_parser.nit:38,2--5 text='init' -Read token at ../src/test_parser.nit:38,6--39,0 text=' +Read token at ../src/test_parser.nit:38,2--3 text='do' +Read token at ../src/test_parser.nit:38,4--39,0 text=' ' -Read token at ../src/test_parser.nit:39,2--3 text='do' -Read token at ../src/test_parser.nit:39,4--40,0 text=' +Read token at ../src/test_parser.nit:39,3--7 text='_rank' +Read token at ../src/test_parser.nit:39,9 text='=' +Read token at ../src/test_parser.nit:39,11 text='0' +Read token at ../src/test_parser.nit:39,12--40,0 text=' ' -Read token at ../src/test_parser.nit:40,3--7 text='_rank' -Read token at ../src/test_parser.nit:40,9 text='=' -Read token at ../src/test_parser.nit:40,11 text='0' -Read token at ../src/test_parser.nit:40,12--41,0 text=' +Read token at ../src/test_parser.nit:40,2--4 text='end' +Read token at ../src/test_parser.nit:40,5--41,0 text=' ' -Read token at ../src/test_parser.nit:41,2--4 text='end' -Read token at ../src/test_parser.nit:41,5--42,0 text=' +Read token at ../src/test_parser.nit:41,1--3 text='end' +Read token at ../src/test_parser.nit:41,4--42,0 text=' ' -Read token at ../src/test_parser.nit:42,1--3 text='end' -Read token at ../src/test_parser.nit:42,4--43,0 text=' +Read token at ../src/test_parser.nit:42,1--43,0 text=' ' -Read token at ../src/test_parser.nit:43,1--44,0 text=' +Read token at ../src/test_parser.nit:43,1--3 text='var' +Read token at ../src/test_parser.nit:43,5--12 text='no_print' +Read token at ../src/test_parser.nit:43,14 text='=' +Read token at ../src/test_parser.nit:43,16--20 text='false' +Read token at ../src/test_parser.nit:43,21--44,0 text=' ' Read token at ../src/test_parser.nit:44,1--3 text='var' -Read token at ../src/test_parser.nit:44,5--12 text='no_print' -Read token at ../src/test_parser.nit:44,14 text='=' -Read token at ../src/test_parser.nit:44,16--20 text='false' -Read token at ../src/test_parser.nit:44,21--45,0 text=' +Read token at ../src/test_parser.nit:44,5--14 text='only_lexer' +Read token at ../src/test_parser.nit:44,16 text='=' +Read token at ../src/test_parser.nit:44,18--22 text='false' +Read token at ../src/test_parser.nit:44,23--45,0 text=' ' Read token at ../src/test_parser.nit:45,1--3 text='var' -Read token at ../src/test_parser.nit:45,5--14 text='only_lexer' -Read token at ../src/test_parser.nit:45,16 text='=' -Read token at ../src/test_parser.nit:45,18--22 text='false' -Read token at ../src/test_parser.nit:45,23--46,0 text=' +Read token at ../src/test_parser.nit:45,5--13 text='need_help' +Read token at ../src/test_parser.nit:45,15 text='=' +Read token at ../src/test_parser.nit:45,17--21 text='false' +Read token at ../src/test_parser.nit:45,22--46,0 text=' ' Read token at ../src/test_parser.nit:46,1--3 text='var' -Read token at ../src/test_parser.nit:46,5--13 text='need_help' -Read token at ../src/test_parser.nit:46,15 text='=' -Read token at ../src/test_parser.nit:46,17--21 text='false' -Read token at ../src/test_parser.nit:46,22--47,0 text=' -' -Read token at ../src/test_parser.nit:47,1--3 text='var' -Read token at ../src/test_parser.nit:47,5--11 text='no_file' -Read token at ../src/test_parser.nit:47,13 text='=' -Read token at ../src/test_parser.nit:47,15--19 text='false' -Read token at ../src/test_parser.nit:47,20--48,0 text=' -' -Read token at ../src/test_parser.nit:48,1--49,0 text=' -' -Read token at ../src/test_parser.nit:49,1--5 text='while' -Read token at ../src/test_parser.nit:49,7--9 text='not' -Read token at ../src/test_parser.nit:49,11--14 text='args' -Read token at ../src/test_parser.nit:49,15 text='.' -Read token at ../src/test_parser.nit:49,16--23 text='is_empty' -Read token at ../src/test_parser.nit:49,25--27 text='and' -Read token at ../src/test_parser.nit:49,29--32 text='args' -Read token at ../src/test_parser.nit:49,33 text='.' -Read token at ../src/test_parser.nit:49,34--38 text='first' -Read token at ../src/test_parser.nit:49,39 text='.' -Read token at ../src/test_parser.nit:49,40--44 text='first' -Read token at ../src/test_parser.nit:49,46--47 text='==' -Read token at ../src/test_parser.nit:49,49--51 text=''-'' -Read token at ../src/test_parser.nit:49,53--54 text='do' -Read token at ../src/test_parser.nit:49,55--50,0 text=' -' -Read token at ../src/test_parser.nit:50,2--3 text='if' -Read token at ../src/test_parser.nit:50,5--8 text='args' -Read token at ../src/test_parser.nit:50,9 text='.' -Read token at ../src/test_parser.nit:50,10--14 text='first' -Read token at ../src/test_parser.nit:50,16--17 text='==' -Read token at ../src/test_parser.nit:50,19--22 text='"-n"' -Read token at ../src/test_parser.nit:50,24--27 text='then' -Read token at ../src/test_parser.nit:50,28--51,0 text=' -' -Read token at ../src/test_parser.nit:51,3--10 text='no_print' -Read token at ../src/test_parser.nit:51,12 text='=' -Read token at ../src/test_parser.nit:51,14--17 text='true' -Read token at ../src/test_parser.nit:51,18--52,0 text=' -' -Read token at ../src/test_parser.nit:52,2--5 text='else' -Read token at ../src/test_parser.nit:52,7--8 text='if' -Read token at ../src/test_parser.nit:52,10--13 text='args' -Read token at ../src/test_parser.nit:52,14 text='.' -Read token at ../src/test_parser.nit:52,15--19 text='first' -Read token at ../src/test_parser.nit:52,21--22 text='==' -Read token at ../src/test_parser.nit:52,24--27 text='"-l"' -Read token at ../src/test_parser.nit:52,29--32 text='then' -Read token at ../src/test_parser.nit:52,33--53,0 text=' -' -Read token at ../src/test_parser.nit:53,3--12 text='only_lexer' -Read token at ../src/test_parser.nit:53,14 text='=' -Read token at ../src/test_parser.nit:53,16--19 text='true' -Read token at ../src/test_parser.nit:53,20--54,0 text=' -' -Read token at ../src/test_parser.nit:54,2--5 text='else' -Read token at ../src/test_parser.nit:54,7--8 text='if' -Read token at ../src/test_parser.nit:54,10--13 text='args' -Read token at ../src/test_parser.nit:54,14 text='.' -Read token at ../src/test_parser.nit:54,15--19 text='first' -Read token at ../src/test_parser.nit:54,21--22 text='==' -Read token at ../src/test_parser.nit:54,24--27 text='"-p"' -Read token at ../src/test_parser.nit:54,29--32 text='then' -Read token at ../src/test_parser.nit:54,33--55,0 text=' -' -Read token at ../src/test_parser.nit:55,3--12 text='only_lexer' -Read token at ../src/test_parser.nit:55,14 text='=' -Read token at ../src/test_parser.nit:55,16--20 text='false' -Read token at ../src/test_parser.nit:55,21--56,0 text=' -' -Read token at ../src/test_parser.nit:56,2--5 text='else' -Read token at ../src/test_parser.nit:56,7--8 text='if' -Read token at ../src/test_parser.nit:56,10--13 text='args' -Read token at ../src/test_parser.nit:56,14 text='.' -Read token at ../src/test_parser.nit:56,15--19 text='first' -Read token at ../src/test_parser.nit:56,21--22 text='==' -Read token at ../src/test_parser.nit:56,24--27 text='"-e"' -Read token at ../src/test_parser.nit:56,29--32 text='then' -Read token at ../src/test_parser.nit:56,33--57,0 text=' -' -Read token at ../src/test_parser.nit:57,3--9 text='no_file' -Read token at ../src/test_parser.nit:57,11 text='=' -Read token at ../src/test_parser.nit:57,13--16 text='true' -Read token at ../src/test_parser.nit:57,17--58,0 text=' -' -Read token at ../src/test_parser.nit:58,2--5 text='else' -Read token at ../src/test_parser.nit:58,7--8 text='if' -Read token at ../src/test_parser.nit:58,10--13 text='args' -Read token at ../src/test_parser.nit:58,14 text='.' -Read token at ../src/test_parser.nit:58,15--19 text='first' -Read token at ../src/test_parser.nit:58,21--22 text='==' -Read token at ../src/test_parser.nit:58,24--27 text='"-h"' -Read token at ../src/test_parser.nit:58,29--30 text='or' -Read token at ../src/test_parser.nit:58,32--35 text='args' -Read token at ../src/test_parser.nit:58,36 text='.' -Read token at ../src/test_parser.nit:58,37--41 text='first' -Read token at ../src/test_parser.nit:58,43--44 text='==' -Read token at ../src/test_parser.nit:58,46--49 text='"-?"' -Read token at ../src/test_parser.nit:58,51--54 text='then' -Read token at ../src/test_parser.nit:58,55--59,0 text=' -' -Read token at ../src/test_parser.nit:59,3--11 text='need_help' -Read token at ../src/test_parser.nit:59,13 text='=' -Read token at ../src/test_parser.nit:59,15--18 text='true' -Read token at ../src/test_parser.nit:59,19--60,0 text=' -' -Read token at ../src/test_parser.nit:60,2--5 text='else' -Read token at ../src/test_parser.nit:60,6--61,0 text=' -' -Read token at ../src/test_parser.nit:61,3--8 text='stderr' -Read token at ../src/test_parser.nit:61,9 text='.' -Read token at ../src/test_parser.nit:61,10--14 text='write' -Read token at ../src/test_parser.nit:61,15 text='(' -Read token at ../src/test_parser.nit:61,16--32 text='"Unknown option {' -Read token at ../src/test_parser.nit:61,33--36 text='args' -Read token at ../src/test_parser.nit:61,37 text='.' -Read token at ../src/test_parser.nit:61,38--42 text='first' -Read token at ../src/test_parser.nit:61,43--47 text='}.\n"' -Read token at ../src/test_parser.nit:61,48 text=')' -Read token at ../src/test_parser.nit:61,49--62,0 text=' -' -Read token at ../src/test_parser.nit:62,3--6 text='exit' -Read token at ../src/test_parser.nit:62,7 text='(' -Read token at ../src/test_parser.nit:62,8 text='0' -Read token at ../src/test_parser.nit:62,9 text=')' -Read token at ../src/test_parser.nit:62,10--63,0 text=' -' -Read token at ../src/test_parser.nit:63,2--4 text='end' -Read token at ../src/test_parser.nit:63,5--64,0 text=' -' -Read token at ../src/test_parser.nit:64,2--5 text='args' -Read token at ../src/test_parser.nit:64,6 text='.' -Read token at ../src/test_parser.nit:64,7--11 text='shift' -Read token at ../src/test_parser.nit:64,12--65,0 text=' -' -Read token at ../src/test_parser.nit:65,1--3 text='end' -Read token at ../src/test_parser.nit:65,4--66,0 text=' -' -Read token at ../src/test_parser.nit:66,1--67,0 text=' -' -Read token at ../src/test_parser.nit:67,1--2 text='if' -Read token at ../src/test_parser.nit:67,4--7 text='args' -Read token at ../src/test_parser.nit:67,8 text='.' -Read token at ../src/test_parser.nit:67,9--16 text='is_empty' -Read token at ../src/test_parser.nit:67,18--19 text='or' -Read token at ../src/test_parser.nit:67,21--29 text='need_help' -Read token at ../src/test_parser.nit:67,31--34 text='then' -Read token at ../src/test_parser.nit:67,35--68,0 text=' +Read token at ../src/test_parser.nit:46,5--11 text='no_file' +Read token at ../src/test_parser.nit:46,13 text='=' +Read token at ../src/test_parser.nit:46,15--19 text='false' +Read token at ../src/test_parser.nit:46,20--47,0 text=' +' +Read token at ../src/test_parser.nit:47,1--48,0 text=' +' +Read token at ../src/test_parser.nit:48,1--5 text='while' +Read token at ../src/test_parser.nit:48,7--9 text='not' +Read token at ../src/test_parser.nit:48,11--14 text='args' +Read token at ../src/test_parser.nit:48,15 text='.' +Read token at ../src/test_parser.nit:48,16--23 text='is_empty' +Read token at ../src/test_parser.nit:48,25--27 text='and' +Read token at ../src/test_parser.nit:48,29--32 text='args' +Read token at ../src/test_parser.nit:48,33 text='.' +Read token at ../src/test_parser.nit:48,34--38 text='first' +Read token at ../src/test_parser.nit:48,39 text='.' +Read token at ../src/test_parser.nit:48,40--44 text='first' +Read token at ../src/test_parser.nit:48,46--47 text='==' +Read token at ../src/test_parser.nit:48,49--51 text=''-'' +Read token at ../src/test_parser.nit:48,53--54 text='do' +Read token at ../src/test_parser.nit:48,55--49,0 text=' +' +Read token at ../src/test_parser.nit:49,2--3 text='if' +Read token at ../src/test_parser.nit:49,5--8 text='args' +Read token at ../src/test_parser.nit:49,9 text='.' +Read token at ../src/test_parser.nit:49,10--14 text='first' +Read token at ../src/test_parser.nit:49,16--17 text='==' +Read token at ../src/test_parser.nit:49,19--22 text='"-n"' +Read token at ../src/test_parser.nit:49,24--27 text='then' +Read token at ../src/test_parser.nit:49,28--50,0 text=' +' +Read token at ../src/test_parser.nit:50,3--10 text='no_print' +Read token at ../src/test_parser.nit:50,12 text='=' +Read token at ../src/test_parser.nit:50,14--17 text='true' +Read token at ../src/test_parser.nit:50,18--51,0 text=' +' +Read token at ../src/test_parser.nit:51,2--5 text='else' +Read token at ../src/test_parser.nit:51,7--8 text='if' +Read token at ../src/test_parser.nit:51,10--13 text='args' +Read token at ../src/test_parser.nit:51,14 text='.' +Read token at ../src/test_parser.nit:51,15--19 text='first' +Read token at ../src/test_parser.nit:51,21--22 text='==' +Read token at ../src/test_parser.nit:51,24--27 text='"-l"' +Read token at ../src/test_parser.nit:51,29--32 text='then' +Read token at ../src/test_parser.nit:51,33--52,0 text=' +' +Read token at ../src/test_parser.nit:52,3--12 text='only_lexer' +Read token at ../src/test_parser.nit:52,14 text='=' +Read token at ../src/test_parser.nit:52,16--19 text='true' +Read token at ../src/test_parser.nit:52,20--53,0 text=' +' +Read token at ../src/test_parser.nit:53,2--5 text='else' +Read token at ../src/test_parser.nit:53,7--8 text='if' +Read token at ../src/test_parser.nit:53,10--13 text='args' +Read token at ../src/test_parser.nit:53,14 text='.' +Read token at ../src/test_parser.nit:53,15--19 text='first' +Read token at ../src/test_parser.nit:53,21--22 text='==' +Read token at ../src/test_parser.nit:53,24--27 text='"-p"' +Read token at ../src/test_parser.nit:53,29--32 text='then' +Read token at ../src/test_parser.nit:53,33--54,0 text=' +' +Read token at ../src/test_parser.nit:54,3--12 text='only_lexer' +Read token at ../src/test_parser.nit:54,14 text='=' +Read token at ../src/test_parser.nit:54,16--20 text='false' +Read token at ../src/test_parser.nit:54,21--55,0 text=' +' +Read token at ../src/test_parser.nit:55,2--5 text='else' +Read token at ../src/test_parser.nit:55,7--8 text='if' +Read token at ../src/test_parser.nit:55,10--13 text='args' +Read token at ../src/test_parser.nit:55,14 text='.' +Read token at ../src/test_parser.nit:55,15--19 text='first' +Read token at ../src/test_parser.nit:55,21--22 text='==' +Read token at ../src/test_parser.nit:55,24--27 text='"-e"' +Read token at ../src/test_parser.nit:55,29--32 text='then' +Read token at ../src/test_parser.nit:55,33--56,0 text=' +' +Read token at ../src/test_parser.nit:56,3--9 text='no_file' +Read token at ../src/test_parser.nit:56,11 text='=' +Read token at ../src/test_parser.nit:56,13--16 text='true' +Read token at ../src/test_parser.nit:56,17--57,0 text=' +' +Read token at ../src/test_parser.nit:57,2--5 text='else' +Read token at ../src/test_parser.nit:57,7--8 text='if' +Read token at ../src/test_parser.nit:57,10--13 text='args' +Read token at ../src/test_parser.nit:57,14 text='.' +Read token at ../src/test_parser.nit:57,15--19 text='first' +Read token at ../src/test_parser.nit:57,21--22 text='==' +Read token at ../src/test_parser.nit:57,24--27 text='"-h"' +Read token at ../src/test_parser.nit:57,29--30 text='or' +Read token at ../src/test_parser.nit:57,32--35 text='args' +Read token at ../src/test_parser.nit:57,36 text='.' +Read token at ../src/test_parser.nit:57,37--41 text='first' +Read token at ../src/test_parser.nit:57,43--44 text='==' +Read token at ../src/test_parser.nit:57,46--49 text='"-?"' +Read token at ../src/test_parser.nit:57,51--54 text='then' +Read token at ../src/test_parser.nit:57,55--58,0 text=' +' +Read token at ../src/test_parser.nit:58,3--11 text='need_help' +Read token at ../src/test_parser.nit:58,13 text='=' +Read token at ../src/test_parser.nit:58,15--18 text='true' +Read token at ../src/test_parser.nit:58,19--59,0 text=' +' +Read token at ../src/test_parser.nit:59,2--5 text='else' +Read token at ../src/test_parser.nit:59,6--60,0 text=' +' +Read token at ../src/test_parser.nit:60,3--8 text='stderr' +Read token at ../src/test_parser.nit:60,9 text='.' +Read token at ../src/test_parser.nit:60,10--14 text='write' +Read token at ../src/test_parser.nit:60,15 text='(' +Read token at ../src/test_parser.nit:60,16--32 text='"Unknown option {' +Read token at ../src/test_parser.nit:60,33--36 text='args' +Read token at ../src/test_parser.nit:60,37 text='.' +Read token at ../src/test_parser.nit:60,38--42 text='first' +Read token at ../src/test_parser.nit:60,43--47 text='}.\n"' +Read token at ../src/test_parser.nit:60,48 text=')' +Read token at ../src/test_parser.nit:60,49--61,0 text=' +' +Read token at ../src/test_parser.nit:61,3--6 text='exit' +Read token at ../src/test_parser.nit:61,7 text='(' +Read token at ../src/test_parser.nit:61,8 text='0' +Read token at ../src/test_parser.nit:61,9 text=')' +Read token at ../src/test_parser.nit:61,10--62,0 text=' +' +Read token at ../src/test_parser.nit:62,2--4 text='end' +Read token at ../src/test_parser.nit:62,5--63,0 text=' +' +Read token at ../src/test_parser.nit:63,2--5 text='args' +Read token at ../src/test_parser.nit:63,6 text='.' +Read token at ../src/test_parser.nit:63,7--11 text='shift' +Read token at ../src/test_parser.nit:63,12--64,0 text=' +' +Read token at ../src/test_parser.nit:64,1--3 text='end' +Read token at ../src/test_parser.nit:64,4--65,0 text=' +' +Read token at ../src/test_parser.nit:65,1--66,0 text=' +' +Read token at ../src/test_parser.nit:66,1--2 text='if' +Read token at ../src/test_parser.nit:66,4--7 text='args' +Read token at ../src/test_parser.nit:66,8 text='.' +Read token at ../src/test_parser.nit:66,9--16 text='is_empty' +Read token at ../src/test_parser.nit:66,18--19 text='or' +Read token at ../src/test_parser.nit:66,21--29 text='need_help' +Read token at ../src/test_parser.nit:66,31--34 text='then' +Read token at ../src/test_parser.nit:66,35--67,0 text=' +' +Read token at ../src/test_parser.nit:67,2--6 text='print' +Read token at ../src/test_parser.nit:67,7 text='(' +Read token at ../src/test_parser.nit:67,8--15 text='"usage:"' +Read token at ../src/test_parser.nit:67,16 text=')' +Read token at ../src/test_parser.nit:67,17--68,0 text=' ' Read token at ../src/test_parser.nit:68,2--6 text='print' Read token at ../src/test_parser.nit:68,7 text='(' -Read token at ../src/test_parser.nit:68,8--15 text='"usage:"' -Read token at ../src/test_parser.nit:68,16 text=')' -Read token at ../src/test_parser.nit:68,17--69,0 text=' +Read token at ../src/test_parser.nit:68,8--53 text='" test_parser [options]... ..."' +Read token at ../src/test_parser.nit:68,54 text=')' +Read token at ../src/test_parser.nit:68,55--69,0 text=' ' Read token at ../src/test_parser.nit:69,2--6 text='print' Read token at ../src/test_parser.nit:69,7 text='(' -Read token at ../src/test_parser.nit:69,8--53 text='" test_parser [options]... ..."' -Read token at ../src/test_parser.nit:69,54 text=')' -Read token at ../src/test_parser.nit:69,55--70,0 text=' +Read token at ../src/test_parser.nit:69,8--17 text='"options:"' +Read token at ../src/test_parser.nit:69,18 text=')' +Read token at ../src/test_parser.nit:69,19--70,0 text=' ' Read token at ../src/test_parser.nit:70,2--6 text='print' Read token at ../src/test_parser.nit:70,7 text='(' -Read token at ../src/test_parser.nit:70,8--17 text='"options:"' -Read token at ../src/test_parser.nit:70,18 text=')' -Read token at ../src/test_parser.nit:70,19--71,0 text=' +Read token at ../src/test_parser.nit:70,8--35 text='" -n do not print anything"' +Read token at ../src/test_parser.nit:70,36 text=')' +Read token at ../src/test_parser.nit:70,37--71,0 text=' ' Read token at ../src/test_parser.nit:71,2--6 text='print' Read token at ../src/test_parser.nit:71,7 text='(' -Read token at ../src/test_parser.nit:71,8--35 text='" -n do not print anything"' -Read token at ../src/test_parser.nit:71,36 text=')' -Read token at ../src/test_parser.nit:71,37--72,0 text=' +Read token at ../src/test_parser.nit:71,8--24 text='" -l only lexer"' +Read token at ../src/test_parser.nit:71,25 text=')' +Read token at ../src/test_parser.nit:71,26--72,0 text=' ' Read token at ../src/test_parser.nit:72,2--6 text='print' Read token at ../src/test_parser.nit:72,7 text='(' -Read token at ../src/test_parser.nit:72,8--24 text='" -l only lexer"' -Read token at ../src/test_parser.nit:72,25 text=')' -Read token at ../src/test_parser.nit:72,26--73,0 text=' +Read token at ../src/test_parser.nit:72,8--40 text='" -p lexer and parser (default)"' +Read token at ../src/test_parser.nit:72,41 text=')' +Read token at ../src/test_parser.nit:72,42--73,0 text=' ' Read token at ../src/test_parser.nit:73,2--6 text='print' Read token at ../src/test_parser.nit:73,7 text='(' -Read token at ../src/test_parser.nit:73,8--40 text='" -p lexer and parser (default)"' -Read token at ../src/test_parser.nit:73,41 text=')' -Read token at ../src/test_parser.nit:73,42--74,0 text=' +Read token at ../src/test_parser.nit:73,8--67 text='" -e instead on files, each argument is a content to parse"' +Read token at ../src/test_parser.nit:73,68 text=')' +Read token at ../src/test_parser.nit:73,69--74,0 text=' ' Read token at ../src/test_parser.nit:74,2--6 text='print' Read token at ../src/test_parser.nit:74,7 text='(' -Read token at ../src/test_parser.nit:74,8--67 text='" -e instead on files, each argument is a content to parse"' -Read token at ../src/test_parser.nit:74,68 text=')' -Read token at ../src/test_parser.nit:74,69--75,0 text=' -' -Read token at ../src/test_parser.nit:75,2--6 text='print' -Read token at ../src/test_parser.nit:75,7 text='(' -Read token at ../src/test_parser.nit:75,8--29 text='" -h print this help"' -Read token at ../src/test_parser.nit:75,30 text=')' -Read token at ../src/test_parser.nit:75,31--76,0 text=' -' -Read token at ../src/test_parser.nit:76,1--4 text='else' -Read token at ../src/test_parser.nit:76,5--77,0 text=' -' -Read token at ../src/test_parser.nit:77,2--4 text='for' -Read token at ../src/test_parser.nit:77,6 text='a' -Read token at ../src/test_parser.nit:77,8--9 text='in' -Read token at ../src/test_parser.nit:77,11--14 text='args' -Read token at ../src/test_parser.nit:77,16--17 text='do' -Read token at ../src/test_parser.nit:77,18--78,0 text=' -' -Read token at ../src/test_parser.nit:78,3--5 text='var' -Read token at ../src/test_parser.nit:78,7--12 text='source' -Read token at ../src/test_parser.nit:78,13--79,0 text=' -' -Read token at ../src/test_parser.nit:79,3--4 text='if' -Read token at ../src/test_parser.nit:79,6--12 text='no_file' -Read token at ../src/test_parser.nit:79,14--17 text='then' -Read token at ../src/test_parser.nit:79,18--80,0 text=' -' -Read token at ../src/test_parser.nit:80,4--9 text='source' -Read token at ../src/test_parser.nit:80,11 text='=' -Read token at ../src/test_parser.nit:80,13--15 text='new' -Read token at ../src/test_parser.nit:80,17--26 text='SourceFile' -Read token at ../src/test_parser.nit:80,27 text='.' -Read token at ../src/test_parser.nit:80,28--38 text='from_string' -Read token at ../src/test_parser.nit:80,39 text='(' -Read token at ../src/test_parser.nit:80,40--41 text='""' -Read token at ../src/test_parser.nit:80,42 text=',' -Read token at ../src/test_parser.nit:80,44 text='a' -Read token at ../src/test_parser.nit:80,45 text=')' -Read token at ../src/test_parser.nit:80,46--81,0 text=' -' -Read token at ../src/test_parser.nit:81,3--6 text='else' -Read token at ../src/test_parser.nit:81,7--82,0 text=' -' -Read token at ../src/test_parser.nit:82,4--6 text='var' -Read token at ../src/test_parser.nit:82,8 text='f' -Read token at ../src/test_parser.nit:82,10 text='=' -Read token at ../src/test_parser.nit:82,12--14 text='new' -Read token at ../src/test_parser.nit:82,16--23 text='IFStream' -Read token at ../src/test_parser.nit:82,24 text='.' -Read token at ../src/test_parser.nit:82,25--28 text='open' -Read token at ../src/test_parser.nit:82,29 text='(' -Read token at ../src/test_parser.nit:82,30 text='a' -Read token at ../src/test_parser.nit:82,31 text=')' -Read token at ../src/test_parser.nit:82,32--83,0 text=' -' -Read token at ../src/test_parser.nit:83,4--9 text='source' -Read token at ../src/test_parser.nit:83,11 text='=' -Read token at ../src/test_parser.nit:83,13--15 text='new' -Read token at ../src/test_parser.nit:83,17--26 text='SourceFile' -Read token at ../src/test_parser.nit:83,27 text='(' -Read token at ../src/test_parser.nit:83,28 text='a' -Read token at ../src/test_parser.nit:83,29 text=',' -Read token at ../src/test_parser.nit:83,31 text='f' -Read token at ../src/test_parser.nit:83,32 text=')' -Read token at ../src/test_parser.nit:83,33--84,0 text=' -' -Read token at ../src/test_parser.nit:84,4 text='f' -Read token at ../src/test_parser.nit:84,5 text='.' -Read token at ../src/test_parser.nit:84,6--10 text='close' -Read token at ../src/test_parser.nit:84,11--85,0 text=' -' -Read token at ../src/test_parser.nit:85,3--5 text='end' -Read token at ../src/test_parser.nit:85,6--86,0 text=' -' -Read token at ../src/test_parser.nit:86,3--5 text='var' -Read token at ../src/test_parser.nit:86,7--11 text='lexer' -Read token at ../src/test_parser.nit:86,13 text='=' -Read token at ../src/test_parser.nit:86,15--17 text='new' -Read token at ../src/test_parser.nit:86,19--23 text='Lexer' -Read token at ../src/test_parser.nit:86,24 text='(' -Read token at ../src/test_parser.nit:86,25--30 text='source' -Read token at ../src/test_parser.nit:86,31 text=')' -Read token at ../src/test_parser.nit:86,32--87,0 text=' -' -Read token at ../src/test_parser.nit:87,3--4 text='if' -Read token at ../src/test_parser.nit:87,6--15 text='only_lexer' -Read token at ../src/test_parser.nit:87,17--20 text='then' -Read token at ../src/test_parser.nit:87,21--88,0 text=' -' -Read token at ../src/test_parser.nit:88,4--6 text='var' -Read token at ../src/test_parser.nit:88,8--12 text='token' -Read token at ../src/test_parser.nit:88,14 text='=' -Read token at ../src/test_parser.nit:88,16--20 text='lexer' -Read token at ../src/test_parser.nit:88,21 text='.' -Read token at ../src/test_parser.nit:88,22--25 text='next' -Read token at ../src/test_parser.nit:88,26--89,0 text=' -' -Read token at ../src/test_parser.nit:89,4--8 text='while' -Read token at ../src/test_parser.nit:89,10--12 text='not' -Read token at ../src/test_parser.nit:89,14--18 text='token' -Read token at ../src/test_parser.nit:89,20--22 text='isa' -Read token at ../src/test_parser.nit:89,24--26 text='EOF' -Read token at ../src/test_parser.nit:89,28--29 text='do' -Read token at ../src/test_parser.nit:89,30--90,0 text=' -' -Read token at ../src/test_parser.nit:90,5--6 text='if' -Read token at ../src/test_parser.nit:90,8--10 text='not' -Read token at ../src/test_parser.nit:90,12--19 text='no_print' -Read token at ../src/test_parser.nit:90,21--24 text='then' -Read token at ../src/test_parser.nit:90,25--91,0 text=' -' -Read token at ../src/test_parser.nit:91,6--10 text='print' -Read token at ../src/test_parser.nit:91,11 text='(' -Read token at ../src/test_parser.nit:91,12--27 text='"Read token at {' -Read token at ../src/test_parser.nit:91,28--32 text='token' -Read token at ../src/test_parser.nit:91,33 text='.' -Read token at ../src/test_parser.nit:91,34--41 text='location' -Read token at ../src/test_parser.nit:91,42--50 text='} text='{' -Read token at ../src/test_parser.nit:91,51--55 text='token' -Read token at ../src/test_parser.nit:91,56 text='.' -Read token at ../src/test_parser.nit:91,57--60 text='text' -Read token at ../src/test_parser.nit:91,61--63 text='}'"' -Read token at ../src/test_parser.nit:91,64 text=')' -Read token at ../src/test_parser.nit:91,65--92,0 text=' -' -Read token at ../src/test_parser.nit:92,5--7 text='end' -Read token at ../src/test_parser.nit:92,8--93,0 text=' -' -Read token at ../src/test_parser.nit:93,5--9 text='token' -Read token at ../src/test_parser.nit:93,11 text='=' -Read token at ../src/test_parser.nit:93,13--17 text='lexer' -Read token at ../src/test_parser.nit:93,18 text='.' -Read token at ../src/test_parser.nit:93,19--22 text='next' -Read token at ../src/test_parser.nit:93,23--94,0 text=' -' -Read token at ../src/test_parser.nit:94,4--6 text='end' +Read token at ../src/test_parser.nit:74,8--29 text='" -h print this help"' +Read token at ../src/test_parser.nit:74,30 text=')' +Read token at ../src/test_parser.nit:74,31--75,0 text=' +' +Read token at ../src/test_parser.nit:75,1--4 text='else' +Read token at ../src/test_parser.nit:75,5--76,0 text=' +' +Read token at ../src/test_parser.nit:76,2--4 text='for' +Read token at ../src/test_parser.nit:76,6 text='a' +Read token at ../src/test_parser.nit:76,8--9 text='in' +Read token at ../src/test_parser.nit:76,11--14 text='args' +Read token at ../src/test_parser.nit:76,16--17 text='do' +Read token at ../src/test_parser.nit:76,18--77,0 text=' +' +Read token at ../src/test_parser.nit:77,3--5 text='var' +Read token at ../src/test_parser.nit:77,7--12 text='source' +Read token at ../src/test_parser.nit:77,13--78,0 text=' +' +Read token at ../src/test_parser.nit:78,3--4 text='if' +Read token at ../src/test_parser.nit:78,6--12 text='no_file' +Read token at ../src/test_parser.nit:78,14--17 text='then' +Read token at ../src/test_parser.nit:78,18--79,0 text=' +' +Read token at ../src/test_parser.nit:79,4--9 text='source' +Read token at ../src/test_parser.nit:79,11 text='=' +Read token at ../src/test_parser.nit:79,13--15 text='new' +Read token at ../src/test_parser.nit:79,17--26 text='SourceFile' +Read token at ../src/test_parser.nit:79,27 text='.' +Read token at ../src/test_parser.nit:79,28--38 text='from_string' +Read token at ../src/test_parser.nit:79,39 text='(' +Read token at ../src/test_parser.nit:79,40--41 text='""' +Read token at ../src/test_parser.nit:79,42 text=',' +Read token at ../src/test_parser.nit:79,44 text='a' +Read token at ../src/test_parser.nit:79,45 text=')' +Read token at ../src/test_parser.nit:79,46--80,0 text=' +' +Read token at ../src/test_parser.nit:80,3--6 text='else' +Read token at ../src/test_parser.nit:80,7--81,0 text=' +' +Read token at ../src/test_parser.nit:81,4--6 text='var' +Read token at ../src/test_parser.nit:81,8 text='f' +Read token at ../src/test_parser.nit:81,10 text='=' +Read token at ../src/test_parser.nit:81,12--14 text='new' +Read token at ../src/test_parser.nit:81,16--23 text='IFStream' +Read token at ../src/test_parser.nit:81,24 text='.' +Read token at ../src/test_parser.nit:81,25--28 text='open' +Read token at ../src/test_parser.nit:81,29 text='(' +Read token at ../src/test_parser.nit:81,30 text='a' +Read token at ../src/test_parser.nit:81,31 text=')' +Read token at ../src/test_parser.nit:81,32--82,0 text=' +' +Read token at ../src/test_parser.nit:82,4--9 text='source' +Read token at ../src/test_parser.nit:82,11 text='=' +Read token at ../src/test_parser.nit:82,13--15 text='new' +Read token at ../src/test_parser.nit:82,17--26 text='SourceFile' +Read token at ../src/test_parser.nit:82,27 text='(' +Read token at ../src/test_parser.nit:82,28 text='a' +Read token at ../src/test_parser.nit:82,29 text=',' +Read token at ../src/test_parser.nit:82,31 text='f' +Read token at ../src/test_parser.nit:82,32 text=')' +Read token at ../src/test_parser.nit:82,33--83,0 text=' +' +Read token at ../src/test_parser.nit:83,4 text='f' +Read token at ../src/test_parser.nit:83,5 text='.' +Read token at ../src/test_parser.nit:83,6--10 text='close' +Read token at ../src/test_parser.nit:83,11--84,0 text=' +' +Read token at ../src/test_parser.nit:84,3--5 text='end' +Read token at ../src/test_parser.nit:84,6--85,0 text=' +' +Read token at ../src/test_parser.nit:85,3--5 text='var' +Read token at ../src/test_parser.nit:85,7--11 text='lexer' +Read token at ../src/test_parser.nit:85,13 text='=' +Read token at ../src/test_parser.nit:85,15--17 text='new' +Read token at ../src/test_parser.nit:85,19--23 text='Lexer' +Read token at ../src/test_parser.nit:85,24 text='(' +Read token at ../src/test_parser.nit:85,25--30 text='source' +Read token at ../src/test_parser.nit:85,31 text=')' +Read token at ../src/test_parser.nit:85,32--86,0 text=' +' +Read token at ../src/test_parser.nit:86,3--4 text='if' +Read token at ../src/test_parser.nit:86,6--15 text='only_lexer' +Read token at ../src/test_parser.nit:86,17--20 text='then' +Read token at ../src/test_parser.nit:86,21--87,0 text=' +' +Read token at ../src/test_parser.nit:87,4--6 text='var' +Read token at ../src/test_parser.nit:87,8--12 text='token' +Read token at ../src/test_parser.nit:87,14 text='=' +Read token at ../src/test_parser.nit:87,16--20 text='lexer' +Read token at ../src/test_parser.nit:87,21 text='.' +Read token at ../src/test_parser.nit:87,22--25 text='next' +Read token at ../src/test_parser.nit:87,26--88,0 text=' +' +Read token at ../src/test_parser.nit:88,4--8 text='while' +Read token at ../src/test_parser.nit:88,10--12 text='not' +Read token at ../src/test_parser.nit:88,14--18 text='token' +Read token at ../src/test_parser.nit:88,20--22 text='isa' +Read token at ../src/test_parser.nit:88,24--26 text='EOF' +Read token at ../src/test_parser.nit:88,28--29 text='do' +Read token at ../src/test_parser.nit:88,30--89,0 text=' +' +Read token at ../src/test_parser.nit:89,5--6 text='if' +Read token at ../src/test_parser.nit:89,8--10 text='not' +Read token at ../src/test_parser.nit:89,12--19 text='no_print' +Read token at ../src/test_parser.nit:89,21--24 text='then' +Read token at ../src/test_parser.nit:89,25--90,0 text=' +' +Read token at ../src/test_parser.nit:90,6--10 text='print' +Read token at ../src/test_parser.nit:90,11 text='(' +Read token at ../src/test_parser.nit:90,12--27 text='"Read token at {' +Read token at ../src/test_parser.nit:90,28--32 text='token' +Read token at ../src/test_parser.nit:90,33 text='.' +Read token at ../src/test_parser.nit:90,34--41 text='location' +Read token at ../src/test_parser.nit:90,42--50 text='} text='{' +Read token at ../src/test_parser.nit:90,51--55 text='token' +Read token at ../src/test_parser.nit:90,56 text='.' +Read token at ../src/test_parser.nit:90,57--60 text='text' +Read token at ../src/test_parser.nit:90,61--63 text='}'"' +Read token at ../src/test_parser.nit:90,64 text=')' +Read token at ../src/test_parser.nit:90,65--91,0 text=' +' +Read token at ../src/test_parser.nit:91,5--7 text='end' +Read token at ../src/test_parser.nit:91,8--92,0 text=' +' +Read token at ../src/test_parser.nit:92,5--9 text='token' +Read token at ../src/test_parser.nit:92,11 text='=' +Read token at ../src/test_parser.nit:92,13--17 text='lexer' +Read token at ../src/test_parser.nit:92,18 text='.' +Read token at ../src/test_parser.nit:92,19--22 text='next' +Read token at ../src/test_parser.nit:92,23--93,0 text=' +' +Read token at ../src/test_parser.nit:93,4--6 text='end' +Read token at ../src/test_parser.nit:93,7--94,0 text=' +' +Read token at ../src/test_parser.nit:94,3--6 text='else' Read token at ../src/test_parser.nit:94,7--95,0 text=' ' -Read token at ../src/test_parser.nit:95,3--6 text='else' -Read token at ../src/test_parser.nit:95,7--96,0 text=' +Read token at ../src/test_parser.nit:95,4--6 text='var' +Read token at ../src/test_parser.nit:95,8--13 text='parser' +Read token at ../src/test_parser.nit:95,15 text='=' +Read token at ../src/test_parser.nit:95,17--19 text='new' +Read token at ../src/test_parser.nit:95,21--26 text='Parser' +Read token at ../src/test_parser.nit:95,27 text='(' +Read token at ../src/test_parser.nit:95,28--32 text='lexer' +Read token at ../src/test_parser.nit:95,33 text=')' +Read token at ../src/test_parser.nit:95,34--96,0 text=' ' Read token at ../src/test_parser.nit:96,4--6 text='var' -Read token at ../src/test_parser.nit:96,8--13 text='parser' -Read token at ../src/test_parser.nit:96,15 text='=' -Read token at ../src/test_parser.nit:96,17--19 text='new' -Read token at ../src/test_parser.nit:96,21--26 text='Parser' -Read token at ../src/test_parser.nit:96,27 text='(' -Read token at ../src/test_parser.nit:96,28--32 text='lexer' -Read token at ../src/test_parser.nit:96,33 text=')' -Read token at ../src/test_parser.nit:96,34--97,0 text=' -' -Read token at ../src/test_parser.nit:97,4--6 text='var' -Read token at ../src/test_parser.nit:97,8--11 text='tree' -Read token at ../src/test_parser.nit:97,13 text='=' -Read token at ../src/test_parser.nit:97,15--20 text='parser' -Read token at ../src/test_parser.nit:97,21 text='.' -Read token at ../src/test_parser.nit:97,22--26 text='parse' -Read token at ../src/test_parser.nit:97,27--98,0 text=' -' -Read token at ../src/test_parser.nit:98,1--99,0 text=' -' -Read token at ../src/test_parser.nit:99,4--6 text='var' -Read token at ../src/test_parser.nit:99,8--12 text='error' -Read token at ../src/test_parser.nit:99,14 text='=' -Read token at ../src/test_parser.nit:99,16--19 text='tree' -Read token at ../src/test_parser.nit:99,20 text='.' -Read token at ../src/test_parser.nit:99,21--25 text='n_eof' -Read token at ../src/test_parser.nit:99,26--100,0 text=' -' -Read token at ../src/test_parser.nit:100,4--5 text='if' -Read token at ../src/test_parser.nit:100,7--11 text='error' -Read token at ../src/test_parser.nit:100,13--15 text='isa' -Read token at ../src/test_parser.nit:100,17--22 text='AError' -Read token at ../src/test_parser.nit:100,24--27 text='then' -Read token at ../src/test_parser.nit:100,28--101,0 text=' -' -Read token at ../src/test_parser.nit:101,5--9 text='print' -Read token at ../src/test_parser.nit:101,10 text='(' -Read token at ../src/test_parser.nit:101,11--21 text='"Error at {' -Read token at ../src/test_parser.nit:101,22--26 text='error' -Read token at ../src/test_parser.nit:101,27 text='.' -Read token at ../src/test_parser.nit:101,28--35 text='location' -Read token at ../src/test_parser.nit:101,36--42 text='}:\n\t{' -Read token at ../src/test_parser.nit:101,43--47 text='error' -Read token at ../src/test_parser.nit:101,48 text='.' -Read token at ../src/test_parser.nit:101,49--55 text='message' -Read token at ../src/test_parser.nit:101,56--57 text='}"' -Read token at ../src/test_parser.nit:101,58 text=')' -Read token at ../src/test_parser.nit:101,59--102,0 text=' -' -Read token at ../src/test_parser.nit:102,5--10 text='return' -Read token at ../src/test_parser.nit:102,11--103,0 text=' -' -Read token at ../src/test_parser.nit:103,4--6 text='end' -Read token at ../src/test_parser.nit:103,7--104,0 text=' -' -Read token at ../src/test_parser.nit:104,1--105,0 text=' -' -Read token at ../src/test_parser.nit:105,4--5 text='if' -Read token at ../src/test_parser.nit:105,7--9 text='not' -Read token at ../src/test_parser.nit:105,11--18 text='no_print' -Read token at ../src/test_parser.nit:105,20--23 text='then' -Read token at ../src/test_parser.nit:105,24--106,0 text=' -' -Read token at ../src/test_parser.nit:106,5 text='(' -Read token at ../src/test_parser.nit:106,6--8 text='new' -Read token at ../src/test_parser.nit:106,10--25 text='PrintTreeVisitor' -Read token at ../src/test_parser.nit:106,26 text=')' -Read token at ../src/test_parser.nit:106,27 text='.' -Read token at ../src/test_parser.nit:106,28--38 text='enter_visit' -Read token at ../src/test_parser.nit:106,39 text='(' -Read token at ../src/test_parser.nit:106,40--43 text='tree' -Read token at ../src/test_parser.nit:106,44 text=')' -Read token at ../src/test_parser.nit:106,45--107,0 text=' -' -Read token at ../src/test_parser.nit:107,4--6 text='end' -Read token at ../src/test_parser.nit:107,7--108,0 text=' -' -Read token at ../src/test_parser.nit:108,3--5 text='end' -Read token at ../src/test_parser.nit:108,6--109,0 text=' -' -Read token at ../src/test_parser.nit:109,2--4 text='end' -Read token at ../src/test_parser.nit:109,5--110,0 text=' -' -Read token at ../src/test_parser.nit:110,1--3 text='end' -Read token at ../src/test_parser.nit:110,4--111,0 text=' +Read token at ../src/test_parser.nit:96,8--11 text='tree' +Read token at ../src/test_parser.nit:96,13 text='=' +Read token at ../src/test_parser.nit:96,15--20 text='parser' +Read token at ../src/test_parser.nit:96,21 text='.' +Read token at ../src/test_parser.nit:96,22--26 text='parse' +Read token at ../src/test_parser.nit:96,27--97,0 text=' +' +Read token at ../src/test_parser.nit:97,1--98,0 text=' +' +Read token at ../src/test_parser.nit:98,4--6 text='var' +Read token at ../src/test_parser.nit:98,8--12 text='error' +Read token at ../src/test_parser.nit:98,14 text='=' +Read token at ../src/test_parser.nit:98,16--19 text='tree' +Read token at ../src/test_parser.nit:98,20 text='.' +Read token at ../src/test_parser.nit:98,21--25 text='n_eof' +Read token at ../src/test_parser.nit:98,26--99,0 text=' +' +Read token at ../src/test_parser.nit:99,4--5 text='if' +Read token at ../src/test_parser.nit:99,7--11 text='error' +Read token at ../src/test_parser.nit:99,13--15 text='isa' +Read token at ../src/test_parser.nit:99,17--22 text='AError' +Read token at ../src/test_parser.nit:99,24--27 text='then' +Read token at ../src/test_parser.nit:99,28--100,0 text=' +' +Read token at ../src/test_parser.nit:100,5--9 text='print' +Read token at ../src/test_parser.nit:100,10 text='(' +Read token at ../src/test_parser.nit:100,11--21 text='"Error at {' +Read token at ../src/test_parser.nit:100,22--26 text='error' +Read token at ../src/test_parser.nit:100,27 text='.' +Read token at ../src/test_parser.nit:100,28--35 text='location' +Read token at ../src/test_parser.nit:100,36--42 text='}:\n\t{' +Read token at ../src/test_parser.nit:100,43--47 text='error' +Read token at ../src/test_parser.nit:100,48 text='.' +Read token at ../src/test_parser.nit:100,49--55 text='message' +Read token at ../src/test_parser.nit:100,56--57 text='}"' +Read token at ../src/test_parser.nit:100,58 text=')' +Read token at ../src/test_parser.nit:100,59--101,0 text=' +' +Read token at ../src/test_parser.nit:101,5--10 text='return' +Read token at ../src/test_parser.nit:101,11--102,0 text=' +' +Read token at ../src/test_parser.nit:102,4--6 text='end' +Read token at ../src/test_parser.nit:102,7--103,0 text=' +' +Read token at ../src/test_parser.nit:103,1--104,0 text=' +' +Read token at ../src/test_parser.nit:104,4--5 text='if' +Read token at ../src/test_parser.nit:104,7--9 text='not' +Read token at ../src/test_parser.nit:104,11--18 text='no_print' +Read token at ../src/test_parser.nit:104,20--23 text='then' +Read token at ../src/test_parser.nit:104,24--105,0 text=' +' +Read token at ../src/test_parser.nit:105,5 text='(' +Read token at ../src/test_parser.nit:105,6--8 text='new' +Read token at ../src/test_parser.nit:105,10--25 text='PrintTreeVisitor' +Read token at ../src/test_parser.nit:105,26 text=')' +Read token at ../src/test_parser.nit:105,27 text='.' +Read token at ../src/test_parser.nit:105,28--38 text='enter_visit' +Read token at ../src/test_parser.nit:105,39 text='(' +Read token at ../src/test_parser.nit:105,40--43 text='tree' +Read token at ../src/test_parser.nit:105,44 text=')' +Read token at ../src/test_parser.nit:105,45--106,0 text=' +' +Read token at ../src/test_parser.nit:106,4--6 text='end' +Read token at ../src/test_parser.nit:106,7--107,0 text=' +' +Read token at ../src/test_parser.nit:107,3--5 text='end' +Read token at ../src/test_parser.nit:107,6--108,0 text=' +' +Read token at ../src/test_parser.nit:108,2--4 text='end' +Read token at ../src/test_parser.nit:108,5--109,0 text=' +' +Read token at ../src/test_parser.nit:109,1--3 text='end' +Read token at ../src/test_parser.nit:109,4--110,0 text=' '