# Copyright (c) 2006-2014 LOGILAB S.A. (Paris, FRANCE) # Copyright (c) 2013-2014 Google, Inc. # Copyright (c) 2013 buck@yelp.com # Copyright (c) 2014-2018, 2020 Claudiu Popa # Copyright (c) 2014 Brett Cannon # Copyright (c) 2014 Arun Persaud # Copyright (c) 2015 Ionel Cristian Maries # Copyright (c) 2016 Moises Lopez # Copyright (c) 2017-2018 Bryce Guinta # Copyright (c) 2018-2019 Pierre Sassoulas # Copyright (c) 2018 ssolanki # Copyright (c) 2019 Bruno P. Kinoshita # Licensed under the GPL: https://www.gnu.org/licenses/old-licenses/gpl-2.0.html # For details: https://github.com/PyCQA/pylint/blob/master/COPYING """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 ! """ from pylint.checkers.base_checker import BaseChecker, BaseTokenChecker from pylint.utils import register_plugins def table_lines_from_stats(stats, _, columns): """get values listed in from and , and return a formated list of values, designed to be given to a ureport.Table object """ lines = [] for m_type in columns: new = stats[m_type] new = "%.3f" % new if isinstance(new, float) else str(new) lines += (m_type.replace("_", " "), new, "NC", "NC") return lines def initialize(linter): """initialize linter with checkers in this package """ register_plugins(linter, __path__[0]) __all__ = ("BaseChecker", "BaseTokenChecker", "initialize")