@@ -55,7 +55,6 @@ def parse(tokens):
5555
5656def tokenize (tokens ):
5757 for token in tokens :
58- print token
5958 if isinstance (token , str ):
6059 if casefold (token ) in KEYWORDS :
6160 yield KEYWORDS [casefold (token )], token
@@ -111,10 +110,42 @@ def p_column_name_n(self, name): return name
111110])
112111
113112if __name__ == '__main__' :
114- # VARIABLES a, b,c, d;
115113 tokens = [
116114 'SKIPS' , 'a' , ',' , 'b' , ';' , # XXX Why does this not raise?
117115 'VARIABLES' , 'a' , ',' , 'b' , ';' ,
118116 'SKIP' , 'a' , ';'
119117 ]
120118 print parse (tokens )
119+ # [None, Variables(vars=['a', 'b']), Skip(vars=['a'])]
120+
121+ tokens = [
122+ 'VARIABLES' , 'a' , ',' , 'b' , ';' ,
123+ 'SKIP' , 'a' , ';' ,
124+ 'SKIPS' , 'a' , ',' , 'b' , ';'
125+ ]
126+ print parse (tokens )
127+ # [Variables(vars=['a', 'b']), Skip(vars=['a'])]
128+
129+ tokens = [
130+ 'VARIABLES' , 'a' , ',' , 'b' , ';' ,
131+ 'SKIP' , 'a' , ',' , ';' ,
132+ 'SKIPS' , 'a' , ',' , 'b' , ';'
133+ ]
134+ print parse (tokens )
135+ # [Variables(vars=['a', 'b']), Skip(vars=['a', 'SKIPS'])]
136+
137+ tokens = [
138+ 'VARIABLES' , 'a' , ',' , 'b' , ';' ,
139+ 'SKIP' , 'a' , ',' , ';' ,
140+ 'SKIPS' , ',' , 'a' , ',' , 'b' , ';'
141+ ]
142+ print parse (tokens )
143+ # [Variables(vars=['a', 'b']), Skip(vars=['a', 'SKIPS', 'a', 'b'])]
144+
145+ tokens = [
146+ 'VARIABLES' , 'a' , ',' , 'b' , ';' ,
147+ 'SKIP' , 'a' , ',' , ';' ,
148+ 'SKIP' , 'a' , ',' , 'b' , ';'
149+ ]
150+ print parse (tokens )
151+ # [Variables(vars=['a', 'b']), Skip(vars=['a', 'a', 'b'])]
0 commit comments