Your IP : 216.73.216.85
B
A!p\� � @ s� d Z ddlZddlZddlZddlmZ ddlmZ ddlm Z ddl
mZ ddlm
Z
dd � ZG d
d� de�ZG dd
� d
e�Zdd� ZdZdS )a@ utilities methods and classes for checkers
Base id of standard checkers (used in msg and report ids):
01: base
02: classes
03: format
04: import
05: misc
06: variables
07: exceptions
08: similar
09: design_analysis
10: newstyle
11: typecheck
12: logging
13: string_format
14: string_constant
15: stdlib
16: python3
17: refactoring
18-50: not yet used: reserved for future internal checkers.
51-99: perhaps used: reserved for external checkers
The raw_metrics checker has no number associated since it doesn't emit any
messages nor reports. XXX not true, emit a 07 report !
� N)�Any)�OptionsProviderMixIn)�diff_string)�register_plugins)� UNDEFINEDc C s~ g }xt|D ]l}| | }t }t|t�r,dd� }|�|�}|dk rRt||�}||�}nd\}}||�dd�||�||f7 }q
W |S )z�get values listed in <columns> from <stats> and <old_stats>,
and return a formated list of values, designed to be given to a
ureport.Table object
c S s d| S )Nz%.3f� )�numr r �I/opt/alt/python37/lib/python3.7/site-packages/pylint/checkers/__init__.py�<lambda>? � z(table_lines_from_stats.<locals>.<lambda>N)�NCr �_� )�str�
isinstance�float�getr �replace) �statsZ old_stats�columns�linesZm_type�new�format�oldZdiff_strr r r �table_lines_from_stats5 s
r c @ sV e Zd ZdZdZdZdZi ZdZdZ ddd�Z
dddedfdd �Zd
d� Z
dd
� ZdS )�BaseCheckerzbase class for checkersN� r Tc C s* | j dk r| j �� | _ t�| � || _dS )zochecker instances should have the linter as argument
linter is an object implementing ILinter
N)�name�lowerr �__init__�linter)�selfr r r r r Z s
zBaseChecker.__init__c C s | j �||||||� dS )zadd a message of a given typeN)r �add_message)r! Zmsg_id�line�node�argsZ
confidence�
col_offsetr r r r"