File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -187,6 +187,7 @@ class _Lexer(object):
187187 # IN is special, it may be followed by a parenthesis, but
188188 # is never a functino, see issue183
189189 (r'in\b(?=[ (])?' , tokens .Keyword ),
190+ (r'USING(?=\()' , is_keyword ),
190191 (r'[^\W\d_]\w*(?=[.(])' , tokens .Name ), # see issue39
191192 (r'[-]?0x[0-9a-fA-F]+' , tokens .Number .Hexadecimal ),
192193 (r'[-]?[0-9]*(\.[0-9]+)?[eE][-]?[0-9]+' , tokens .Number .Float ),
Original file line number Diff line number Diff line change @@ -380,6 +380,13 @@ def test_begin():
380380 assert isinstance (p .tokens [0 ], sql .Begin )
381381
382382
383+ def test_keyword_followed_by_parenthesis ():
384+ p = sqlparse .parse ('USING(somecol' )[0 ]
385+ assert len (p .tokens ) == 3
386+ assert p .tokens [0 ].ttype == T .Keyword
387+ assert p .tokens [1 ].ttype == T .Punctuation
388+
389+
383390def test_nested_begin ():
384391 p = sqlparse .parse ('BEGIN foo BEGIN bar END END' )[0 ]
385392 assert len (p .tokens ) == 1
You can’t perform that action at this time.
0 commit comments