From caf598b3dd7422c92f04a81f72bd7361132e3a6b Mon Sep 17 00:00:00 2001 From: Oliver Kohl Date: Sun, 11 Dec 2022 18:19:20 +0100 Subject: [PATCH 1/2] Upgrade to Python3 and antlr-python3-runtime >= 3.4 (tested with 3.5.3) --- java2python/lang/compat.py | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) create mode 100644 java2python/lang/compat.py diff --git a/java2python/lang/compat.py b/java2python/lang/compat.py new file mode 100644 index 0000000..4c41352 --- /dev/null +++ b/java2python/lang/compat.py @@ -0,0 +1,17 @@ +def version_str_to_tuple(version_str): + import re + import sys + + if version_str == 'HEAD': + return (sys.maxsize, sys.maxsize, sys.maxsize, sys.maxsize) + + m = re.match(r'(\d+)\.(\d+)(\.(\d+))?(b(\d+))?', version_str) + if m is None: + raise ValueError("Bad version string %r" % version_str) + + major = int(m.group(1)) + minor = int(m.group(2)) + patch = int(m.group(4) or 0) + beta = int(m.group(6) or sys.maxsize) + + return (major, minor, patch, beta) \ No newline at end of file From 1842865161b9186559be74d87b878365a90835e0 Mon Sep 17 00:00:00 2001 From: Oliver Kohl Date: Sun, 11 Dec 2022 18:20:01 +0100 Subject: [PATCH 2/2] Upgrade to Python3 and antlr-python3-runtime >= 3.4 (tested with 3.5.3) --- bin/j2py | 21 +-- java2python/compiler/block.py | 2 +- java2python/compiler/template.py | 16 +- java2python/compiler/visitor.py | 12 +- java2python/lang/JavaLexer.py | 3 +- java2python/lang/JavaParser.py | 225 ++++++++++++------------- java2python/lang/__init__.py | 2 +- java2python/lang/base.py | 2 +- java2python/mod/include/overloading.py | 7 - setup.py | 2 +- 10 files changed, 143 insertions(+), 149 deletions(-) diff --git a/bin/j2py b/bin/j2py index 6eb1a40..0ece4c7 100755 --- a/bin/j2py +++ b/bin/j2py @@ -6,10 +6,11 @@ This is all very ordinary. We import the package bits, open and read a file, translate it, and write it out. """ +import os.path import sys from argparse import ArgumentParser, ArgumentTypeError from collections import defaultdict -from logging import _levelNames as logLevels, exception, warning, info, basicConfig +from logging import _nameToLevel as logLevels, exception, warning, info, basicConfig from os import path, makedirs from time import time @@ -60,8 +61,8 @@ def runOneOrMany(options): """ Runs our main transformer with each of the input files. """ infile, outfile = options.inputfile, options.outputfile - if infile and not isinstance(infile, file) and path.isdir(infile): - if outfile and not isinstance(outfile, file) and not path.isdir(outfile): + if infile and not os.path.isfile(infile) and path.isdir(infile): + if outfile and not os.path.isfile(outfile) and not path.isdir(outfile): warning('Must specify output directory or stdout when using input directory.') return 2 def walker(arg, dirname, files): @@ -89,9 +90,9 @@ def runTransform(options): timed['overall'] filein = fileout = filedefault = '-' - if options.inputfile and not isinstance(options.inputfile, file): + if options.inputfile and not os.path.isfile(options.inputfile): filein = options.inputfile - if options.outputfile and not isinstance(options.outputfile, file): + if options.outputfile and not os.path.isfile(options.outputfile): fileout = options.outputfile elif fileout != filedefault: fileout = '%s.py' % (path.splitext(filein)[0]) @@ -110,15 +111,15 @@ def runTransform(options): source = open(filein).read() else: source = sys.stdin.read() - except (IOError, ), exc: + except (IOError, ) as exc: code, msg = exc.args[0:2] - print 'IOError: %s.' % (msg, ) + print ('IOError: %s.' % (msg, )) return code timed['comp'] try: tree = buildAST(source) - except (Exception, ), exc: + except (Exception, ) as exc: exception('exception while parsing') return 1 timed['comp_finish'] @@ -164,7 +165,7 @@ def runTransform(options): if not options.skipcompile: try: compile(source, '', 'exec') - except (SyntaxError, ), ex: + except (SyntaxError, ) as ex: warning('Generated source has invalid syntax. %s', ex) else: info('Generated source has valid syntax.') @@ -256,4 +257,4 @@ def configScript(argv): if __name__ == '__main__': - sys.exit(runMain(configScript(sys.argv[1:]))) + sys.exit(runMain(configScript(sys.argv[1:]))) \ No newline at end of file diff --git a/java2python/compiler/block.py b/java2python/compiler/block.py index 4cf7b09..4004d7c 100644 --- a/java2python/compiler/block.py +++ b/java2python/compiler/block.py @@ -16,7 +16,7 @@ from java2python.compiler import template, visitor -def addTypeToModule((className, factoryName)): +def addTypeToModule(className, factoryName): """ Constructs and adds a new type to this module. """ bases = (getattr(template, className), getattr(visitor, className)) newType = type(className, bases, dict(factoryName=factoryName)) diff --git a/java2python/compiler/template.py b/java2python/compiler/template.py index 4f4dfe1..d4173e5 100644 --- a/java2python/compiler/template.py +++ b/java2python/compiler/template.py @@ -13,9 +13,9 @@ # are usually a sign of a bad design and/or language limitations, and # this case is no exception. -from cStringIO import StringIO +from io import StringIO from functools import partial -from itertools import chain, ifilter, imap +from itertools import chain from java2python.lang import tokens from java2python.lib import FS, colors @@ -173,20 +173,20 @@ def configHandler(self, part, suffix='Handler', default=None): def configHandlers(self, part, suffix='Handlers'): """ Returns config handlers for this type of template """ name = '{0}{1}{2}'.format(self.typeName, part, suffix) - return imap(self.toIter, chain(*self.config.every(name, []))) + return map(self.toIter, chain(*self.config.every(name, []))) def dump(self, fd, level=0): """ Writes the Python source code for this template to the given file. """ indent, isNotNone = level * self.indent, lambda x:x is not None lineFormat = '{0}{1}\n'.format - for line in ifilter(isNotNone, self.iterPrologue()): + for line in filter(isNotNone, self.iterPrologue()): line = lineFormat(indent, line) fd.write(line if line.strip() else '\n') - for item in ifilter(isNotNone, self.iterHead()): + for item in filter(isNotNone, self.iterHead()): item.dump(fd, level+1) for item in self.iterBody(): item.dump(fd, level+1) - for line in ifilter(isNotNone, self.iterEpilogue()): + for line in filter(isNotNone, self.iterEpilogue()): line = lineFormat(indent, line) fd.write(line if line.strip() else '\n') @@ -200,7 +200,7 @@ def dumpRepr(self, fd, level=0): """ Writes a debug string for this template to the given file. """ indent, default = self.indent, lambda x, y:None fd.write('{0}{1!r}\n'.format(indent*level, self)) - for child in ifilter(None, self.children): + for child in filter(None, self.children): getattr(child, 'dumpRepr', default)(fd, level+1) @property @@ -230,7 +230,7 @@ def iterPrologue(self): def iterHead(self): """ Yields the items in the head of this template. """ items = chain(*(h(self) for h in self.configHandlers('Head'))) - return imap(self.toExpr, items) + return map(self.toExpr, items) def iterBody(self): """ Yields the items in the body of this template. """ diff --git a/java2python/compiler/visitor.py b/java2python/compiler/visitor.py index f62e53e..d164711 100644 --- a/java2python/compiler/visitor.py +++ b/java2python/compiler/visitor.py @@ -13,7 +13,7 @@ from functools import reduce, partial -from itertools import ifilter, ifilterfalse, izip, tee +from itertools import filterfalse, tee from logging import debug, warn from re import compile as recompile, sub as resub @@ -48,7 +48,7 @@ def insertComments(self, tmpl, tree, index, memo): cache, parser, comTypes = memo.comments, tree.parser, tokens.commentTypes comNew = lambda t:t.type in comTypes and (t.index not in cache) - for tok in ifilter(comNew, parser.input.tokens[memo.last:index]): + for tok in filter(comNew, parser.input.tokens[memo.last:index]): cache.add(tok.index) # loop over parents until we find the top expression @@ -70,7 +70,7 @@ def insertComments(self, tmpl, tree, index, memo): def stripComment(self, text): """ Regex substitutions for comments; removes comment characters. """ subText = lambda value, regex:resub(regex, '', value) - for text in ifilter(unicode.strip, text.split('\n')): + for text in filter(unicode.strip, text.split('\n')): yield reduce(subText, self.commentSubs, text) def walk(self, tree, memo=None): @@ -95,7 +95,7 @@ def walk(self, tree, memo=None): def zipWalk(self, nodes, visitors, memo): """ Walk the given nodes zipped with the given visitors. """ - for node, visitor in izip(nodes, visitors): + for node, visitor in zip(nodes, visitors): visitor.walk(node, memo) def nodeTypeToString(self, node): @@ -161,9 +161,9 @@ class ModifiersAcceptor(object): def acceptModifierList(self, node, memo): """ Accept and process class and method modifiers. """ isAnno = lambda token:token.type==tokens.AT - for ano in ifilter(isAnno, node.children): + for ano in filter(isAnno, node.children): self.nodesToAnnos(ano, memo) - for mod in ifilterfalse(isAnno, node.children): + for mod in filterfalse(isAnno, node.children): self.nodesToModifiers(mod, node) return self diff --git a/java2python/lang/JavaLexer.py b/java2python/lang/JavaLexer.py index 9c1725a..6248168 100644 --- a/java2python/lang/JavaLexer.py +++ b/java2python/lang/JavaLexer.py @@ -2,7 +2,8 @@ import sys from antlr3 import * -from antlr3.compat import set, frozenset + +from java2python.lang.compat import version_str_to_tuple # for convenience in actions diff --git a/java2python/lang/JavaParser.py b/java2python/lang/JavaParser.py index 28b9c64..78171a8 100644 --- a/java2python/lang/JavaParser.py +++ b/java2python/lang/JavaParser.py @@ -2,11 +2,10 @@ import sys from antlr3 import * -from antlr3.compat import set, frozenset from antlr3.tree import * - +from java2python.lang.compat import version_str_to_tuple # for convenience in actions HIDDEN = BaseRecognizer.HIDDEN @@ -473,7 +472,7 @@ def javaSource(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -607,7 +606,7 @@ def compilationUnit(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -698,7 +697,7 @@ def typeDecls(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -775,7 +774,7 @@ def packageDeclaration(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -892,7 +891,7 @@ def importDeclaration(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -1028,7 +1027,7 @@ def typeDeclaration(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -1218,7 +1217,7 @@ def classTypeDeclaration(self, modifiers): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -1319,7 +1318,7 @@ def classExtendsClause(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -1420,7 +1419,7 @@ def interfaceExtendsClause(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -1521,7 +1520,7 @@ def implementsClause(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -1669,7 +1668,7 @@ def genericTypeParameterList(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -1828,7 +1827,7 @@ def genericTypeListClosing(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -1957,7 +1956,7 @@ def genericTypeParameter(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -2096,7 +2095,7 @@ def bound(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -2232,7 +2231,7 @@ def enumTypeDeclaration(self, modifiers): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -2339,7 +2338,7 @@ def enumBody(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -2440,7 +2439,7 @@ def enumScopeDeclarations(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -2562,7 +2561,7 @@ def enumClassScopeDeclarations(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -2660,7 +2659,7 @@ def enumConstants(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -2774,7 +2773,7 @@ def enumConstant(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -2937,7 +2936,7 @@ def interfaceTypeDeclaration(self, modifiers): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -3030,7 +3029,7 @@ def typeList(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -3158,7 +3157,7 @@ def classBody(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -3286,7 +3285,7 @@ def interfaceBody(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -4029,7 +4028,7 @@ def classScopeDeclarations(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -4490,7 +4489,7 @@ def interfaceScopeDeclarations(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -4623,7 +4622,7 @@ def classFieldDeclaratorList(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -4751,7 +4750,7 @@ def classFieldDeclarator(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -4884,7 +4883,7 @@ def interfaceFieldDeclaratorList(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -4995,7 +4994,7 @@ def interfaceFieldDeclarator(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -5081,7 +5080,7 @@ def variableDeclaratorId(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -5177,7 +5176,7 @@ def variableInitializer(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -5274,7 +5273,7 @@ def arrayDeclarator(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -5408,7 +5407,7 @@ def arrayDeclaratorList(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -5584,7 +5583,7 @@ def arrayInitializer(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -5685,7 +5684,7 @@ def throwsClause(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -5808,7 +5807,7 @@ def modifierList(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -6056,7 +6055,7 @@ def modifier(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -6172,7 +6171,7 @@ def localModifierList(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -6268,7 +6267,7 @@ def localModifier(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -6364,7 +6363,7 @@ def type(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -6492,7 +6491,7 @@ def simpleType(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -6617,7 +6616,7 @@ def objectType(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -6739,7 +6738,7 @@ def objectTypeSimplified(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -6877,7 +6876,7 @@ def qualifiedTypeIdent(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -7010,7 +7009,7 @@ def qualifiedTypeIdentSimplified(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -7096,7 +7095,7 @@ def typeIdent(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -7182,7 +7181,7 @@ def typeIdentSimplified(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -7257,7 +7256,7 @@ def primitiveType(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -7410,7 +7409,7 @@ def genericTypeArgumentList(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -7574,7 +7573,7 @@ def genericTypeArgument(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -7658,7 +7657,7 @@ def genericWildcardBoundType(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -7806,7 +7805,7 @@ def genericTypeArgumentListSimplified(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -7902,7 +7901,7 @@ def genericTypeArgumentSimplified(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -7995,7 +7994,7 @@ def qualifiedIdentList(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -8333,7 +8332,7 @@ def formalParameterList(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -8448,7 +8447,7 @@ def formalParameterStandardDecl(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -8569,7 +8568,7 @@ def formalParameterVarArgDecl(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -8732,7 +8731,7 @@ def qualifiedIdentifier(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -8858,7 +8857,7 @@ def annotationList(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -8952,7 +8951,7 @@ def annotation(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -9059,7 +9058,7 @@ def annotationInit(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -9265,7 +9264,7 @@ def annotationInitializers(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -9342,7 +9341,7 @@ def annotationInitializer(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -9454,7 +9453,7 @@ def annotationElementValue(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -9549,7 +9548,7 @@ def annotationElementValueExpression(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -9725,7 +9724,7 @@ def annotationElementValueArrayInitializer(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -9840,7 +9839,7 @@ def annotationTypeDeclaration(self, modifiers): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -9968,7 +9967,7 @@ def annotationBody(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -10227,7 +10226,7 @@ def annotationScopeDeclarations(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -10301,7 +10300,7 @@ def annotationDefaultValue(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -10429,7 +10428,7 @@ def block(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -10530,7 +10529,7 @@ def blockStatement(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -10645,7 +10644,7 @@ def localVariableDeclaration(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -11993,7 +11992,7 @@ def statement(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -12122,7 +12121,7 @@ def catches(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -12210,7 +12209,7 @@ def catchClause(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -12305,7 +12304,7 @@ def finallyClause(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -12508,7 +12507,7 @@ def switchBlockLabels(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -12595,7 +12594,7 @@ def switchCaseLabels(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -12696,7 +12695,7 @@ def switchCaseLabel(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -12789,7 +12788,7 @@ def switchDefaultLabel(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -12964,7 +12963,7 @@ def forInit(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -13076,7 +13075,7 @@ def forCondition(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -13188,7 +13187,7 @@ def forUpdater(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -13295,7 +13294,7 @@ def parenthesizedExpression(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -13388,7 +13387,7 @@ def expressionList(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -13483,7 +13482,7 @@ def expression(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -13761,7 +13760,7 @@ def assignmentExpression(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -13866,7 +13865,7 @@ def conditionalExpression(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -13964,7 +13963,7 @@ def logicalOrExpression(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -14062,7 +14061,7 @@ def logicalAndExpression(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -14160,7 +14159,7 @@ def inclusiveOrExpression(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -14258,7 +14257,7 @@ def exclusiveOrExpression(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -14356,7 +14355,7 @@ def andExpression(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -14489,7 +14488,7 @@ def equalityExpression(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -14583,7 +14582,7 @@ def instanceOfExpression(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -14745,7 +14744,7 @@ def relationalExpression(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -14892,7 +14891,7 @@ def shiftExpression(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -15025,7 +15024,7 @@ def additiveExpression(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -15172,7 +15171,7 @@ def multiplicativeExpression(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -15459,7 +15458,7 @@ def unaryExpression(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -15693,7 +15692,7 @@ def unaryExpressionNotPlusMinus(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -16384,7 +16383,7 @@ def postfixedExpression(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -17238,7 +17237,7 @@ def primaryExpression(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -17947,7 +17946,7 @@ def qualifiedIdentExpression(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -18262,7 +18261,7 @@ def newExpression(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -18424,7 +18423,7 @@ def innerNewExpression(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -18593,7 +18592,7 @@ def newArrayConstruction(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -18717,7 +18716,7 @@ def arguments(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) @@ -18792,7 +18791,7 @@ def literal(self, ): success = True - except RecognitionException, re: + except RecognitionException as re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) diff --git a/java2python/lang/__init__.py b/java2python/lang/__init__.py index 6e37576..584d943 100644 --- a/java2python/lang/__init__.py +++ b/java2python/lang/__init__.py @@ -6,4 +6,4 @@ from java2python.lang.JavaLexer import JavaLexer as Lexer from java2python.lang.JavaParser import JavaParser as Parser -from java2python.lang.base import StringStream, TokenStream, TreeAdaptor, tokens +from java2python.lang.base import StringStream, TokenStream, TreeAdaptor, tokens \ No newline at end of file diff --git a/java2python/lang/base.py b/java2python/lang/base.py index 0633b8e..8d43819 100644 --- a/java2python/lang/base.py +++ b/java2python/lang/base.py @@ -47,7 +47,7 @@ # instances. # -from cStringIO import StringIO +from io import StringIO from antlr3 import ANTLRStringStream as StringStream, CommonTokenStream as TokenStream from antlr3.tree import CommonTreeAdaptor, CommonTree diff --git a/java2python/mod/include/overloading.py b/java2python/mod/include/overloading.py index 2f8257c..37a2c22 100644 --- a/java2python/mod/include/overloading.py +++ b/java2python/mod/include/overloading.py @@ -38,13 +38,6 @@ from types import MethodType as instancemethod -import sys -if sys.version_info[0] < 3: - # Make the environment more like Python 3.0 - __metaclass__ = type - from itertools import izip as zip - - class overloaded: """An implementation of overloaded functions.""" diff --git a/setup.py b/setup.py index 210d623..d0b7489 100644 --- a/setup.py +++ b/setup.py @@ -81,6 +81,6 @@ def doc_files(): ('doc', doc_files()), ], - install_requires=['antlr_python_runtime==3.1.3'], + install_requires=['antlr-python3-runtime>=3.4'], )