Module rulebook-pylint.rulebook_pylint.parameter_wrap
Functions
def register(linter: PyLinter)
-
Expand source code
def register(linter: 'PyLinter') -> None: linter.register_checker(ParameterWrapChecker(linter))
Classes
class ParameterWrapChecker (linter: PyLinter)
-
Expand source code
class ParameterWrapChecker(RulebookChecker): """See detail: https://hanggrian.github.io/rulebook/rules/#parameter-wrap""" MSG: str = 'parameter-wrap' name: str = 'parameter-wrap' msgs: dict[str, MessageDefinitionTuple] = Messages.of(MSG) def visit_functiondef(self, node: FunctionDef) -> None: self._process(node.args.args) def visit_call(self, node: Call) -> None: self._process(node.args) def _process(self, parameters: list[NodeNG]) -> None: # target multiline parameters if not parameters or \ parameters[0].lineno == parameters[-1].end_lineno: return # checks for violation for i, parameter in enumerate(parameters): if i == 0 or \ parameters[i - 1].end_lineno != parameter.lineno: continue self.add_message(self.MSG, node=parameter)
See detail: https://hanggrian.github.io/rulebook/rules/#parameter-wrap
Checker instances should have the linter as argument.
Ancestors
- rulebook_pylint.checkers.RulebookChecker
- pylint.checkers.base_checker.BaseChecker
- pylint.config.arguments_provider._ArgumentsProvider
Class variables
var MSG : str
-
The type of the None singleton.
var msgs : dict[str, tuple[str, str, str] | tuple[str, str, str, pylint.typing.ExtraMessageOptions]]
-
The type of the None singleton.
var name : str
-
The type of the None singleton.
Methods
def visit_call(self, node: astroid.nodes.node_classes.Call) ‑> None
-
Expand source code
def visit_call(self, node: Call) -> None: self._process(node.args)
def visit_functiondef(self, node: astroid.nodes.scoped_nodes.scoped_nodes.FunctionDef) ‑> None
-
Expand source code
def visit_functiondef(self, node: FunctionDef) -> None: self._process(node.args.args)