lex_state5.py (4479:61d3ed46e373) lex_state5.py (6498:e21e9ab5fad0)
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