1 ! Copyright (C) 2007 Chris Double.
2 ! See https://factorcode.org/license.txt for BSD license.
4 USING: kernel tools.test peg peg.ebnf peg.ebnf.private peg.pl0
8 "CONST foo = 1;" "block" \ pl0 rule (parse) remaining>> empty?
12 "VAR foo;" "block" \ pl0 rule (parse) remaining>> empty?
16 "VAR foo,bar , baz;" "block" \ pl0 rule (parse) remaining>> empty?
20 "foo := 5" "statement" \ pl0 rule (parse) remaining>> empty?
24 "BEGIN foo := 5 END" "statement" \ pl0 rule (parse) remaining>> empty?
28 "IF 1=1 THEN foo := 5" "statement" \ pl0 rule (parse) remaining>> empty?
32 "WHILE 1=1 DO foo := 5" "statement" \ pl0 rule (parse) remaining>> empty?
36 "WHILE ODD 1 DO foo := 5" "statement" \ pl0 rule (parse) remaining>> empty?
40 "PROCEDURE square; BEGIN squ:=x*x END" "block" \ pl0 rule (parse) remaining>> empty?
58 END." main \ pl0 rule (parse) remaining>> empty?
78 IF ODD b THEN z := z + a;
90 WHILE w <= r DO w := 2 * w;
107 IF f < g THEN g := g - f;
108 IF g < f THEN f := f - g;
124 " main \ pl0 rule (parse) remaining>> empty?