1818from sqlparse import tokens
1919from sqlparse .keywords import SQL_REGEX
2020from sqlparse .compat import StringIO , string_types , with_metaclass , text_type
21- class include (str ):
22- pass
23-
24-
25- class combined (tuple ):
26- """Indicates a state combined from multiple states."""
27-
28- def __new__ (cls , * args ):
29- return tuple .__new__ (cls , args )
30-
31- def __init__ (self , * args ):
32- # tuple.__init__ doesn't do anything
33- pass
34-
35-
36-
37-
38- def apply_filters (stream , filters , lexer = None ):
39- """
40- Use this method to apply an iterable of filters to
41- a stream. If lexer is given it's forwarded to the
42- filter, otherwise the filter receives `None`.
43- """
44-
45- def _apply (filter_ , stream ):
46- for token in filter_ .filter (lexer , stream ):
47- yield token
48-
49- for filter_ in filters :
50- stream = _apply (filter_ , stream )
51- return stream
5221
5322
5423class LexerMeta (type ):
@@ -65,12 +34,6 @@ def _process_state(cls, unprocessed, processed, state):
6534 tokenlist = processed [state ] = []
6635 rflags = cls .flags
6736 for tdef in unprocessed [state ]:
68- if isinstance (tdef , include ):
69- # it's a state reference
70- assert tdef != state , "circular state reference %r" % state
71- tokenlist .extend (cls ._process_state (
72- unprocessed , processed , str (tdef )))
73- continue
7437
7538 assert type (tdef ) is tuple , "wrong rule def %r" % tdef
7639
@@ -101,18 +64,6 @@ def _process_state(cls, unprocessed, processed, state):
10164 new_state = - int (tdef2 [5 :])
10265 else :
10366 assert False , 'unknown new state %r' % tdef2
104- elif isinstance (tdef2 , combined ):
105- # combine a new state from existing ones
106- new_state = '_tmp_%d' % cls ._tmpname
107- cls ._tmpname += 1
108- itokens = []
109- for istate in tdef2 :
110- assert istate != state , \
111- 'circular state ref %r' % istate
112- itokens .extend (cls ._process_state (unprocessed ,
113- processed , istate ))
114- processed [new_state ] = itokens
115- new_state = (new_state ,)
11667 elif isinstance (tdef2 , tuple ):
11768 # push more than one state
11869 for state in tdef2 :
@@ -157,12 +108,6 @@ class _Lexer(object):
157108 def __init__ (self ):
158109 self .filters = []
159110
160- def add_filter (self , filter_ , ** options ):
161- from sqlparse .filters import Filter
162- if not isinstance (filter_ , Filter ):
163- filter_ = filter_ (** options )
164- self .filters .append (filter_ )
165-
166111 def _expandtabs (self , text ):
167112 if self .tabsize > 0 :
168113 text = text .expandtabs (self .tabsize )
@@ -186,7 +131,7 @@ def _decode(self, text):
186131 text = text .decode ('unicode-escape' )
187132 return self ._expandtabs (text )
188133
189- def get_tokens (self , text , unfiltered = False ):
134+ def get_tokens (self , text ):
190135 """
191136 Return an iterable of (tokentype, value) pairs generated from
192137 `text`. If `unfiltered` is set to `True`, the filtering mechanism
@@ -211,19 +156,17 @@ def streamer():
211156 for i , t , v in self .get_tokens_unprocessed (text ):
212157 yield t , v
213158 stream = streamer ()
214- if not unfiltered :
215- stream = apply_filters (stream , self .filters , self )
216159 return stream
217160
218- def get_tokens_unprocessed (self , stream , stack = ( 'root' ,) ):
161+ def get_tokens_unprocessed (self , stream ):
219162 """
220163 Split ``text`` into (tokentype, text) pairs.
221164
222165 ``stack`` is the inital stack (default: ``['root']``)
223166 """
224167 pos = 0
225168 tokendefs = self ._tokens # see __call__, pylint:disable=E1101
226- statestack = list ( stack )
169+ statestack = [ 'root' , ]
227170 statetokens = tokendefs [statestack [- 1 ]]
228171 known_names = {}
229172
0 commit comments