mirror of
https://github.com/rocky/python-uncompyle6.git
synced 2024-10-07 02:03:56 +00:00
Remove PYTHON3
This commit is contained in:
parent
f6f0e344d0
commit
8094f3bb12
@ -1,7 +1,7 @@
|
||||
import re
|
||||
from uncompyle6.parser import get_python_parser, python_parser
|
||||
from uncompyle6.scanner import get_scanner
|
||||
from xdis.version_info import PYTHON_VERSION_TRIPLE, PYTHON3, IS_PYPY
|
||||
from xdis.version_info import PYTHON_VERSION_TRIPLE, IS_PYPY
|
||||
|
||||
|
||||
def test_grammar():
|
||||
@ -50,34 +50,29 @@ def test_grammar():
|
||||
# NOTE: this may disappear
|
||||
expect_lhs.add("except_handler_else")
|
||||
|
||||
if PYTHON3:
|
||||
expect_lhs.add("load_genexpr")
|
||||
expect_lhs.add("load_genexpr")
|
||||
|
||||
unused_rhs = unused_rhs.union(
|
||||
set(
|
||||
"""
|
||||
except_pop_except generator_exp
|
||||
""".split()
|
||||
)
|
||||
unused_rhs = unused_rhs.union(
|
||||
set(
|
||||
"""
|
||||
except_pop_except generator_exp
|
||||
""".split()
|
||||
)
|
||||
if PYTHON_VERSION_TRIPLE >= (3, 0):
|
||||
if PYTHON_VERSION_TRIPLE < (3, 7):
|
||||
expect_lhs.add("annotate_arg")
|
||||
expect_lhs.add("annotate_tuple")
|
||||
unused_rhs.add("mkfunc_annotate")
|
||||
)
|
||||
if PYTHON_VERSION_TRIPLE < (3, 7):
|
||||
expect_lhs.add("annotate_arg")
|
||||
expect_lhs.add("annotate_tuple")
|
||||
unused_rhs.add("mkfunc_annotate")
|
||||
|
||||
unused_rhs.add("dict_comp")
|
||||
unused_rhs.add("classdefdeco1")
|
||||
unused_rhs.add("tryelsestmtl")
|
||||
if PYTHON_VERSION_TRIPLE >= (3, 5):
|
||||
expect_right_recursive.add(
|
||||
(("l_stmts", ("lastl_stmt", "come_froms", "l_stmts")))
|
||||
)
|
||||
pass
|
||||
pass
|
||||
unused_rhs.add("dict_comp")
|
||||
unused_rhs.add("classdefdeco1")
|
||||
unused_rhs.add("tryelsestmtl")
|
||||
if PYTHON_VERSION_TRIPLE >= (3, 5):
|
||||
expect_right_recursive.add(
|
||||
(("l_stmts", ("lastl_stmt", "come_froms", "l_stmts")))
|
||||
)
|
||||
pass
|
||||
else:
|
||||
expect_lhs.add("kwarg")
|
||||
pass
|
||||
|
||||
# FIXME
|
||||
if PYTHON_VERSION_TRIPLE < (3, 8):
|
||||
|
@ -10,7 +10,7 @@ import functools
|
||||
|
||||
# uncompyle6 / xdis
|
||||
from uncompyle6 import code_deparse
|
||||
from xdis.version_info import PYTHON_VERSION_TRIPLE, PYTHON3, IS_PYPY
|
||||
from xdis.version_info import PYTHON_VERSION_TRIPLE, IS_PYPY
|
||||
|
||||
# TODO : I think we can get xdis to support the dis api (python 3 version) by doing something like this there
|
||||
from xdis import Bytecode, get_opcode
|
||||
@ -19,12 +19,6 @@ opc = get_opcode(PYTHON_VERSION_TRIPLE, IS_PYPY)
|
||||
Bytecode = functools.partial(Bytecode, opc=opc)
|
||||
import six
|
||||
|
||||
if PYTHON3:
|
||||
from io import StringIO
|
||||
else:
|
||||
from StringIO import StringIO
|
||||
|
||||
|
||||
def _dis_to_text(co):
|
||||
return Bytecode(co).dis()
|
||||
|
||||
|
@ -25,7 +25,7 @@ from __future__ import print_function
|
||||
import os, time, re, shutil, sys
|
||||
from fnmatch import fnmatch
|
||||
|
||||
from uncompyle6 import main, PYTHON3
|
||||
from uncompyle6 import main
|
||||
import xdis.magics as magics
|
||||
|
||||
# ----- configure this for your needs
|
||||
@ -111,20 +111,16 @@ def do_tests(
|
||||
files = []
|
||||
cwd = os.getcwd()
|
||||
os.chdir(src_dir)
|
||||
if PYTHON3:
|
||||
for root, dirname, names in os.walk(os.curdir):
|
||||
files.extend(
|
||||
[
|
||||
os.path.normpath(os.path.join(root, n))
|
||||
for n in names
|
||||
for pat in patterns
|
||||
if fnmatch(n, pat)
|
||||
]
|
||||
)
|
||||
pass
|
||||
for root, dirname, names in os.walk(os.curdir):
|
||||
files.extend(
|
||||
[
|
||||
os.path.normpath(os.path.join(root, n))
|
||||
for n in names
|
||||
for pat in patterns
|
||||
if fnmatch(n, pat)
|
||||
]
|
||||
)
|
||||
pass
|
||||
else:
|
||||
os.path.walk(os.curdir, visitor, files)
|
||||
os.chdir(cwd)
|
||||
files.sort()
|
||||
|
||||
|
@ -43,7 +43,6 @@ from uncompyle6.parsers.reducecheck import (
|
||||
)
|
||||
from uncompyle6.parsers.treenode import SyntaxTree
|
||||
from spark_parser import DEFAULT_DEBUG as PARSER_DEFAULT_DEBUG
|
||||
from xdis import PYTHON3
|
||||
|
||||
|
||||
class Python3Parser(PythonParser):
|
||||
@ -626,10 +625,7 @@ class Python3Parser(PythonParser):
|
||||
this has an effect on many rules.
|
||||
"""
|
||||
if self.version >= (3, 3):
|
||||
if PYTHON3 or not self.is_pypy:
|
||||
load_op = "LOAD_STR "
|
||||
else:
|
||||
load_op = "LOAD_CONST "
|
||||
load_op = "LOAD_STR "
|
||||
|
||||
new_rule = rule % ((load_op) * 1)
|
||||
else:
|
||||
@ -1157,7 +1153,7 @@ class Python3Parser(PythonParser):
|
||||
)
|
||||
|
||||
elif self.version >= (3, 4):
|
||||
if PYTHON3 or not self.is_pypy:
|
||||
if not self.is_pypy:
|
||||
load_op = "LOAD_STR"
|
||||
else:
|
||||
load_op = "LOAD_CONST"
|
||||
@ -1235,14 +1231,6 @@ class Python3Parser(PythonParser):
|
||||
opname,
|
||||
)
|
||||
self.add_unique_rule(rule, opname, token.attr, customize)
|
||||
if not PYTHON3 and self.is_pypy:
|
||||
rule = "mkfunc ::= %s%s%s%s" % (
|
||||
"expr " * stack_count,
|
||||
"load_closure " * closure,
|
||||
"LOAD_CODE LOAD_CONST ",
|
||||
opname,
|
||||
)
|
||||
self.add_unique_rule(rule, opname, token.attr, customize)
|
||||
|
||||
if has_get_iter_call_function1:
|
||||
rule_pat = (
|
||||
@ -1566,8 +1554,6 @@ class Python3Parser(PythonParser):
|
||||
self.check_reduce["iflaststmtl"] = "AST"
|
||||
self.check_reduce["or"] = "AST"
|
||||
self.check_reduce["testtrue"] = "tokens"
|
||||
if not PYTHON3:
|
||||
self.check_reduce["kwarg"] = "noAST"
|
||||
if self.version < (3, 6) and not self.is_pypy:
|
||||
# 3.6+ can remove a JUMP_FORWARD which messes up our testing here
|
||||
# Pypy we need to go over in better detail
|
||||
|
@ -1,10 +1,8 @@
|
||||
import sys
|
||||
from xdis.version_info import PYTHON3
|
||||
from uncompyle6.scanners.tok import NoneToken
|
||||
from spark_parser.ast import AST as spark_AST
|
||||
|
||||
if PYTHON3:
|
||||
intern = sys.intern
|
||||
intern = sys.intern
|
||||
|
||||
|
||||
class SyntaxTree(spark_AST):
|
||||
|
@ -26,7 +26,7 @@ from collections import namedtuple
|
||||
import sys
|
||||
|
||||
from uncompyle6.scanners.tok import Token
|
||||
from xdis.version_info import IS_PYPY, PYTHON3, version_tuple_to_str
|
||||
from xdis.version_info import IS_PYPY, version_tuple_to_str
|
||||
import xdis
|
||||
from xdis import (
|
||||
Bytecode,
|
||||
@ -77,16 +77,11 @@ CANONIC2VERSION["3.5.2"] = 3.5
|
||||
|
||||
|
||||
# FIXME: DRY
|
||||
if PYTHON3:
|
||||
intern = sys.intern
|
||||
L65536 = 65536
|
||||
intern = sys.intern
|
||||
L65536 = 65536
|
||||
|
||||
def long(num):
|
||||
return num
|
||||
|
||||
|
||||
else:
|
||||
L65536 = long(65536) # NOQA
|
||||
def long(num):
|
||||
return num
|
||||
|
||||
|
||||
class Code(object):
|
||||
|
@ -9,12 +9,10 @@ grammar parsing.
|
||||
|
||||
from uncompyle6.scanners.scanner2 import Scanner2
|
||||
|
||||
from xdis.version_info import PYTHON3, version_tuple_to_str
|
||||
from xdis.version_info import version_tuple_to_str
|
||||
import sys
|
||||
|
||||
if PYTHON3:
|
||||
import sys
|
||||
|
||||
intern = sys.intern
|
||||
intern = sys.intern
|
||||
|
||||
# bytecode verification, verify(), uses JUMP_OPs from here
|
||||
from xdis.opcodes import opcode_27
|
||||
|
@ -212,10 +212,7 @@ def strip_quotes(s):
|
||||
|
||||
|
||||
# if __name__ == '__main__':
|
||||
# if PYTHON3:
|
||||
# from io import StringIO
|
||||
# else:
|
||||
# from StringIO import StringIO
|
||||
# from io import StringIO
|
||||
# class PrintFake():
|
||||
# def __init__(self):
|
||||
# self.pending_newlines = 0
|
||||
|
@ -133,7 +133,6 @@ Python.
|
||||
import sys
|
||||
|
||||
IS_PYPY = "__pypy__" in sys.builtin_module_names
|
||||
PYTHON3 = sys.version_info >= (3, 0)
|
||||
|
||||
from xdis import iscode, COMPILER_FLAG_BIT
|
||||
from xdis.version_info import PYTHON_VERSION_TRIPLE
|
||||
@ -184,11 +183,8 @@ from uncompyle6.show import maybe_show_tree
|
||||
from uncompyle6.util import better_repr
|
||||
|
||||
|
||||
if PYTHON3:
|
||||
def unicode(x): return x
|
||||
from io import StringIO
|
||||
else:
|
||||
from StringIO import StringIO
|
||||
def unicode(x): return x
|
||||
from io import StringIO
|
||||
|
||||
|
||||
class SourceWalkerError(Exception):
|
||||
@ -437,10 +433,7 @@ class SourceWalker(GenericASTTraversal, object):
|
||||
def write(self, *data):
|
||||
if (len(data) == 0) or (len(data) == 1 and data[0] == ""):
|
||||
return
|
||||
if not PYTHON3:
|
||||
out = "".join((unicode(j) for j in data))
|
||||
else:
|
||||
out = "".join((str(j) for j in data))
|
||||
out = "".join((str(j) for j in data))
|
||||
n = 0
|
||||
for i in out:
|
||||
if i == "\n":
|
||||
@ -467,8 +460,6 @@ class SourceWalker(GenericASTTraversal, object):
|
||||
|
||||
if self.pending_newlines:
|
||||
out = out[: -self.pending_newlines]
|
||||
if isinstance(out, str) and not (PYTHON3 or self.FUTURE_UNICODE_LITERALS):
|
||||
out = unicode(out, "utf-8")
|
||||
self.f.write(out)
|
||||
|
||||
def println(self, *data):
|
||||
@ -684,23 +675,11 @@ class SourceWalker(GenericASTTraversal, object):
|
||||
# strings are interpreted:
|
||||
# u'xxx' -> 'xxx'
|
||||
# xxx' -> b'xxx'
|
||||
if not PYTHON3 and isinstance(data, unicode):
|
||||
try:
|
||||
data = str(data)
|
||||
except UnicodeEncodeError:
|
||||
# Have to keep data as it is: in Unicode.
|
||||
pass
|
||||
self.write(repr(data))
|
||||
elif isinstance(data, str):
|
||||
if isinstance(data, str):
|
||||
self.write("b" + repr(data))
|
||||
else:
|
||||
self.write(repr(data))
|
||||
else:
|
||||
if not PYTHON3:
|
||||
try:
|
||||
repr(data).encode("ascii")
|
||||
except UnicodeEncodeError:
|
||||
self.write("u")
|
||||
self.write(repr(data))
|
||||
# LOAD_CONST is a terminal, so stop processing/recursing early
|
||||
self.prune()
|
||||
|
Loading…
Reference in New Issue
Block a user