X-Git-Url: https://git.phdru.name/?p=sqlconvert.git;a=blobdiff_plain;f=mysql2sql%2Fprint_tokens.py;h=3e2b0d5cab08be97bba84a777fe52ceddb422fca;hp=0f03d0357f151bc3af02380e9be94bebae0d98a9;hb=4c93c3d89685aba33fc45082022373eb93b6583e;hpb=51018ab80b945523dc678b80d4dd28191b3fd50c diff --git a/mysql2sql/print_tokens.py b/mysql2sql/print_tokens.py index 0f03d03..3e2b0d5 100644 --- a/mysql2sql/print_tokens.py +++ b/mysql2sql/print_tokens.py @@ -1,24 +1,16 @@ import sys -try: - from cStringIO import StringIO -except ImportError: - try: - from StringIO import StringIO - except ImportError: - from io import StringIO -from sqlparse.sql import TokenList -def print_tokens(token_list, outfile=sys.stdout, level=0): - for token in token_list: - if not isinstance(token, TokenList): - outfile.write(token.normalized) - if isinstance(token, TokenList): - print_tokens(token, outfile, level+1) +def print_tokens(token_list, outfile=sys.stdout, encoding=None): + if encoding: + outfile = getattr(outfile, 'buffer', outfile) + for token in token_list.flatten(): + normalized = token.normalized + if encoding: + normalized = normalized.encode(encoding) + outfile.write(normalized) -def get_tokens_str(token_list): - sio = StringIO() - print_tokens(token_list, outfile=sio) - return sio.getvalue() +def tlist2str(token_list): + return u''.join(token.normalized for token in token_list.flatten())