1# lex_state2.py
| 1# lex_state4.py
|
2# 3# Bad state declaration 4 5import sys
| 2# 3# Bad state declaration 4 5import sys
|
6sys.path.insert(0,"..")
| 6if ".." not in sys.path: sys.path.insert(0,"..")
|
7 8import ply.lex as lex 9
| 7 8import ply.lex as lex 9
|
10tokens = [
| 10tokens = [
|
11 "PLUS", 12 "MINUS", 13 "NUMBER", 14 ] 15
| 11 "PLUS", 12 "MINUS", 13 "NUMBER", 14 ] 15
|
16comment = 1
| 16
|
17states = (('comment', 'exclsive'),) 18 19t_PLUS = r'\+' 20t_MINUS = r'-' 21t_NUMBER = r'\d+' 22 23# Comments 24def t_comment(t): 25 r'/\*' 26 t.lexer.begin('comment')
| 17states = (('comment', 'exclsive'),) 18 19t_PLUS = r'\+' 20t_MINUS = r'-' 21t_NUMBER = r'\d+' 22 23# Comments 24def t_comment(t): 25 r'/\*' 26 t.lexer.begin('comment')
|
27 print "Entering comment state"
| 27 print("Entering comment state")
|
28 29def t_comment_body_part(t): 30 r'(.|\n)*\*/'
| 28 29def t_comment_body_part(t): 30 r'(.|\n)*\*/'
|
31 print "comment body", t
| 31 print("comment body %s" % t)
|
32 t.lexer.begin('INITIAL') 33 34def t_error(t): 35 pass 36
| 32 t.lexer.begin('INITIAL') 33 34def t_error(t): 35 pass 36
|
37import sys
| |
38
| 37
|
| 38
|
39lex.lex() 40 41
| 39lex.lex() 40 41
|