summaryrefslogtreecommitdiff
path: root/ext/ply/test/yacc_nested.py
diff options
context:
space:
mode:
Diffstat (limited to 'ext/ply/test/yacc_nested.py')
-rw-r--r--ext/ply/test/yacc_nested.py33
1 files changed, 33 insertions, 0 deletions
diff --git a/ext/ply/test/yacc_nested.py b/ext/ply/test/yacc_nested.py
new file mode 100644
index 000000000..a1b061e78
--- /dev/null
+++ b/ext/ply/test/yacc_nested.py
@@ -0,0 +1,33 @@
+import sys
+
+if ".." not in sys.path: sys.path.insert(0,"..")
+
+from ply import lex, yacc
+
+t_A = 'A'
+t_B = 'B'
+t_C = 'C'
+
+tokens = ('A', 'B', 'C')
+
+the_lexer = lex.lex()
+
+def t_error(t):
+ pass
+
+def p_error(p):
+ pass
+
+def p_start(t):
+ '''start : A nest C'''
+ pass
+
+def p_nest(t):
+ '''nest : B'''
+ print(t[-1])
+
+the_parser = yacc.yacc(debug = False, write_tables = False)
+
+the_parser.parse('ABC', the_lexer)
+the_parser.parse('ABC', the_lexer, tracking=True)
+the_parser.parse('ABC', the_lexer, tracking=True, debug=1)