diff -r 86047f5f4155 -r 5af61402d74d Plugins/CheckerPlugins/SyntaxChecker/pyflakes/messages.py --- a/Plugins/CheckerPlugins/SyntaxChecker/pyflakes/messages.py Sat Jan 04 22:14:38 2014 +0100 +++ b/Plugins/CheckerPlugins/SyntaxChecker/pyflakes/messages.py Sun Jan 05 22:45:29 2014 +0100 @@ -1,14 +1,14 @@ # -*- coding: utf-8 -*- -# Copyright (c) 2010 - 2013 Detlev Offenbach <detlev@die-offenbachs.de> +# Copyright (c) 2010 - 2014 Detlev Offenbach <detlev@die-offenbachs.de> # -# Original (c) 2005 Divmod, Inc. See LICENSE file for details +# Original (c) 2005 Divmod, Inc. See __init__.py file for details # -# This module is based on pyflakes for Python2 but was heavily hacked to +# This module is based on pyflakes but was heavily hacked to # work within Eric5 and Qt (translatable messages) """ -Module implementing the messages for pyflakes. +Provide the class Message and its subclasses. """ # Tell 'lupdate' which strings to keep for translation. @@ -21,25 +21,26 @@ """ message = '' message_args = () - - def __init__(self, filename, lineno): + + def __init__(self, filename, loc): """ Constructor @param filename name of the file (string) - @param lineno line number (integer) + @param loc location of warning (object) """ self.filename = filename - self.lineno = lineno - + self.lineno = loc.lineno + self.col = getattr(loc, 'col_offset', 0) + def __str__(self): """ Special method return a string representation of the instance object. @return string representation of the object (string) """ - return '%s:%s: %s' % ( - self.filename, self.lineno, self.message % self.message_args) + return '%s:%s: %s' % (self.filename, self.lineno, + self.message % self.message_args) def getMessageData(self): """ @@ -48,7 +49,8 @@ @return tuple containing file name, line number and message (string, integer, string) """ - return (self.filename, self.lineno, self.message, self.message_args) + return (self.filename, self.lineno, self.col, self.message, + self.message_args) class UnusedImport(Message): @@ -58,16 +60,16 @@ message = QT_TRANSLATE_NOOP( 'py3Flakes', '{0!r} imported but unused.') - - def __init__(self, filename, lineno, name): + + def __init__(self, filename, loc, name): """ Constructor @param filename name of the file (string) - @param lineno line number (integer) + @param loc location of warning (object) @param name name of the unused import (string) """ - Message.__init__(self, filename, lineno) + Message.__init__(self, filename, loc) self.message_args = (name,) @@ -79,17 +81,17 @@ 'py3Flakes', 'Redefinition of unused {0!r} from line {1!r}.') - def __init__(self, filename, lineno, name, orig_lineno): + def __init__(self, filename, loc, name, orig_loc): """ Constructor @param filename name of the file (string) - @param lineno line number (integer) + @param loc location of warning (object) @param name name of the redefined object (string) - @param orig_lineno line number of the original definition (integer) + @param orig_loc location of the original definition (object) """ - Message.__init__(self, filename, lineno) - self.message_args = (name, orig_lineno) + Message.__init__(self, filename, loc) + self.message_args = (name, orig_loc.lineno) class RedefinedInListComp(Message): @@ -100,17 +102,17 @@ 'py3Flakes', 'List comprehension redefines {0!r} from line {1!r}.') - def __init__(self, filename, lineno, name, orig_lineno): + def __init__(self, filename, loc, name, orig_loc): """ Constructor @param filename name of the file (string) - @param lineno line number (integer) + @param loc location of warning (object) @param name name of the redefined object (string) - @param orig_lineno line number of the original definition (integer) + @param orig_loc location of the original definition (object) """ - Message.__init__(self, filename, lineno) - self.message_args = (name, orig_lineno) + Message.__init__(self, filename, loc) + self.message_args = (name, orig_loc.lineno) class ImportShadowedByLoopVar(Message): @@ -120,18 +122,18 @@ message = QT_TRANSLATE_NOOP( 'py3Flakes', 'Import {0!r} from line {1!r} shadowed by loop variable.') - - def __init__(self, filename, lineno, name, orig_lineno): + + def __init__(self, filename, loc, name, orig_loc): """ Constructor @param filename name of the file (string) - @param lineno line number (integer) + @param loc location of warning (object) @param name name of the shadowed import (string) - @param orig_lineno line number of the import (integer) + @param orig_loc location of the import (object) """ - Message.__init__(self, filename, lineno) - self.message_args = (name, orig_lineno) + Message.__init__(self, filename, loc) + self.message_args = (name, orig_loc.lineno) class ImportStarUsed(Message): @@ -141,16 +143,16 @@ message = QT_TRANSLATE_NOOP( 'py3Flakes', "'from {0} import *' used; unable to detect undefined names.") - - def __init__(self, filename, lineno, modname): + + def __init__(self, filename, loc, modname): """ Constructor @param filename name of the file (string) - @param lineno line number (integer) + @param loc location of warning (object) @param modname name of the module imported using star import (string) """ - Message.__init__(self, filename, lineno) + Message.__init__(self, filename, loc) self.message_args = (modname,) @@ -159,19 +161,39 @@ Class defining the "Undefined Name" message. """ message = QT_TRANSLATE_NOOP('py3Flakes', 'Undefined name {0!r}.') - - def __init__(self, filename, lineno, name): + + def __init__(self, filename, loc, name): """ Constructor @param filename name of the file (string) - @param lineno line number (integer) + @param loc location of warning (object) @param name undefined name (string) """ - Message.__init__(self, filename, lineno) + Message.__init__(self, filename, loc) self.message_args = (name,) +class DoctestSyntaxError(Message): + """ + Class defining the "Syntax error in doctest" message. + """ + message = QT_TRANSLATE_NOOP('py3Flakes', 'Syntax error in doctest.') + + def __init__(self, filename, loc, position=None): + """ + Constructor + + @param filename name of the file (string) + @param loc location of warning (object) + @keyparam position of warning if existent (object) + """ + Message.__init__(self, filename, loc) + if position: + (self.lineno, self.col) = position + self.message_args = () + + class UndefinedExport(Message): """ Class defining the "Undefined Export" message. @@ -179,16 +201,16 @@ message = QT_TRANSLATE_NOOP( 'py3Flakes', 'Undefined name {0!r} in __all__.') - - def __init__(self, filename, lineno, name): + + def __init__(self, filename, loc, name): """ Constructor @param filename name of the file (string) - @param lineno line number (integer) + @param loc location of warning (object) @param name undefined exported name (string) """ - Message.__init__(self, filename, lineno) + Message.__init__(self, filename, loc) self.message_args = (name,) @@ -200,18 +222,18 @@ 'py3Flakes', "Local variable {0!r} (defined in enclosing scope on line {1!r})" " referenced before assignment.") - - def __init__(self, filename, lineno, name, orig_lineno): + + def __init__(self, filename, loc, name, orig_loc): """ Constructor @param filename name of the file (string) - @param lineno line number (integer) + @param loc location of warning (object) @param name name of the prematurely referenced variable (string) - @param orig_lineno line number of the variable definition (integer) + @param orig_loc location of the variable definition (object) """ - Message.__init__(self, filename, lineno) - self.message_args = (name, orig_lineno) + Message.__init__(self, filename, loc) + self.message_args = (name, orig_loc.lineno) class DuplicateArgument(Message): @@ -221,16 +243,16 @@ message = QT_TRANSLATE_NOOP( 'py3Flakes', 'Duplicate argument {0!r} in function definition.') - - def __init__(self, filename, lineno, name): + + def __init__(self, filename, loc, name): """ Constructor @param filename name of the file (string) - @param lineno line number (integer) + @param loc location of warning (object) @param name name of the duplicate argument (string) """ - Message.__init__(self, filename, lineno) + Message.__init__(self, filename, loc) self.message_args = (name,) @@ -241,18 +263,18 @@ message = QT_TRANSLATE_NOOP( 'py3Flakes', 'Redefinition of {0!r} from line {1!r}.') - - def __init__(self, filename, lineno, name, orig_lineno): + + def __init__(self, filename, loc, name, orig_loc): """ Constructor @param filename name of the file (string) - @param lineno line number (integer) + @param loc location of warning (object) @param name name of the redefined function (string) - @param orig_lineno line number of the original definition (integer) + @param orig_loc location of the original definition (object) """ - Message.__init__(self, filename, lineno) - self.message_args = (name, orig_lineno) + Message.__init__(self, filename, loc) + self.message_args = (name, orig_loc.lineno) class LateFutureImport(Message): @@ -262,16 +284,16 @@ message = QT_TRANSLATE_NOOP( 'py3Flakes', 'Future import(s) {0!r} after other statements.') - - def __init__(self, filename, lineno, names): + + def __init__(self, filename, loc, names): """ Constructor @param filename name of the file (string) - @param lineno line number (integer) + @param loc location of warning (object) @param names names of the imported futures (string) """ - Message.__init__(self, filename, lineno) + Message.__init__(self, filename, loc) self.message_args = (names,) @@ -285,14 +307,14 @@ message = QT_TRANSLATE_NOOP( 'py3Flakes', 'Local variable {0!r} is assigned to but never used.') - - def __init__(self, filename, lineno, names): + + def __init__(self, filename, loc, names): """ Constructor @param filename name of the file (string) - @param lineno line number (integer) + @param loc location of warning (object) @param names names of the unused variable (string) """ - Message.__init__(self, filename, lineno) + Message.__init__(self, filename, loc) self.message_args = (names,)