Example #1
0
 def _define(self,
             collection,
             name,
             first_node,
             last_node=None,
             message='',
             confidence=DEFAULT_CONFIDENCE,
             ignore=None):
     last_node = last_node or first_node
     typ = collection.typ
     if ignore and ignore(self.filename, name):
         self._log('Ignoring {typ} "{name}"'.format(**locals()))
     else:
         try:
             first_lineno = first_node.lineno
             last_lineno = lines.get_last_line_number(last_node)
         except AttributeError:
             # ast.arg has lineno attribute since Python 3.4.
             first_lineno = last_lineno = -1
         collection.append(
             Item(name,
                  typ,
                  self.filename,
                  first_lineno,
                  last_lineno,
                  message=message,
                  confidence=confidence))
Example #2
0
    def _define(
        self,
        collection,
        name,
        first_node,
        last_node=None,
        message="",
        confidence=DEFAULT_CONFIDENCE,
        ignore=None,
    ):
        def ignored(lineno):
            return ((ignore and ignore(self.filename, name))
                    or _match(name, self.ignore_names) or noqa.ignore_line(
                        self.noqa_lines, lineno, ERROR_CODES[typ]))

        last_node = last_node or first_node
        typ = collection.typ
        first_lineno = lines.get_first_line_number(first_node)

        if ignored(first_lineno):
            self._log(f'Ignoring {typ} "{name}"')
        else:
            last_lineno = lines.get_last_line_number(last_node)
            collection.append(
                Item(
                    name,
                    typ,
                    self.filename,
                    first_lineno,
                    last_lineno,
                    message=message,
                    confidence=confidence,
                ))
Example #3
0
 def _define(
     self,
     collection,
     name,
     first_node,
     last_node=None,
     message="",
     confidence=DEFAULT_CONFIDENCE,
     ignore=None,
 ):
     last_node = last_node or first_node
     typ = collection.typ
     if (ignore and ignore(self.filename, name)) or _match(
             name, self.ignore_names):
         self._log('Ignoring {typ} "{name}"'.format(**locals()))
     else:
         first_lineno = first_node.lineno
         last_lineno = lines.get_last_line_number(last_node)
         collection.append(
             Item(
                 name,
                 typ,
                 self.filename,
                 first_lineno,
                 last_lineno,
                 message=message,
                 confidence=confidence,
             ))
Example #4
0
 def _define(self, collection, name, first_node, last_node=None,
             message='', confidence=DEFAULT_CONFIDENCE, ignore=None):
     last_node = last_node or first_node
     typ = collection.typ
     if ignore and ignore(self.filename, name):
         self._log('Ignoring {typ} "{name}"'.format(**locals()))
     else:
         try:
             first_lineno = first_node.lineno
             last_lineno = lines.get_last_line_number(last_node)
         except AttributeError:
             # ast.arg has lineno attribute since Python 3.4.
             first_lineno = last_lineno = -1
         collection.append(
             Item(name, typ, self.filename, first_lineno, last_lineno,
                  message=message, confidence=confidence))
Example #5
0
def count_lines(node):
    """Estimate the number of lines of the given AST node."""
    last_lineno = lines.get_last_line_number(node)
    assert get_last_line_number_slow(node) == last_lineno
    return last_lineno - node.lineno + 1