1# lex_state2.py
| 1# lex_state5.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
| |
17states = (('comment', 'exclusive'), 18 ('comment', 'exclusive')) 19 20t_PLUS = r'\+' 21t_MINUS = r'-' 22t_NUMBER = r'\d+' 23 24# Comments 25def t_comment(t): 26 r'/\*' 27 t.lexer.begin('comment')
| 16states = (('comment', 'exclusive'), 17 ('comment', 'exclusive')) 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')
|
28 print "Entering comment state"
| 27 print("Entering comment state")
|
29 30def t_comment_body_part(t): 31 r'(.|\n)*\*/'
| 28 29def t_comment_body_part(t): 30 r'(.|\n)*\*/'
|
32 print "comment body", t
| 31 print("comment body %s" % t)
|
33 t.lexer.begin('INITIAL') 34 35def t_error(t): 36 pass 37
| 32 t.lexer.begin('INITIAL') 33 34def t_error(t): 35 pass 36
|
38import sys
| |
39 40lex.lex() 41 42
| 37 38lex.lex() 39 40
|