Method: pylint.extensions.docparams.DocstringParameterChecker.visit_functiondef
Calls: 293, Exceptions: 0, Paths: 3Back
Path 1: 286 calls (0.98)
FunctionDef (282) AsyncFunctionDef (4)
1def visit_functiondef(self, node: nodes.FunctionDef) -> None:
2 """Called for function and method definitions (def).
3
4 :param node: Node for a function or method definition in the AST
5 :type node: :class:`astroid.scoped_nodes.Function`
6 """
7 node_doc = utils.docstringify(
8 node.doc_node, self.linter.config.default_docstring_type
9 )
10
11 # skip functions that match the 'no-docstring-rgx' config option
12 no_docstring_rgx = self.linter.config.no_docstring_rgx
13 if no_docstring_rgx and re.match(no_docstring_rgx, node.name):
14 return
15
16 # skip functions smaller than 'docstring-min-length'
17 lines = checker_utils.get_node_last_lineno(node) - node.lineno
18 max_lines = self.linter.config.docstring_min_length
19 if max_lines > -1 and lines < max_lines:
20 return
21
22 self.check_functiondef_params(node, node_doc)
23 self.check_functiondef_returns(node, node_doc)
24 self.check_functiondef_yields(node, node_doc)
Path 2: 6 calls (0.02)
FunctionDef (6)
None (6)
1def visit_functiondef(self, node: nodes.FunctionDef) -> None:
2 """Called for function and method definitions (def).
3
4 :param node: Node for a function or method definition in the AST
5 :type node: :class:`astroid.scoped_nodes.Function`
6 """
7 node_doc = utils.docstringify(
8 node.doc_node, self.linter.config.default_docstring_type
9 )
10
11 # skip functions that match the 'no-docstring-rgx' config option
12 no_docstring_rgx = self.linter.config.no_docstring_rgx
13 if no_docstring_rgx and re.match(no_docstring_rgx, node.name):
14 return
15
16 # skip functions smaller than 'docstring-min-length'
17 lines = checker_utils.get_node_last_lineno(node) - node.lineno
18 max_lines = self.linter.config.docstring_min_length
19 if max_lines > -1 and lines < max_lines:
20 return
21
22 self.check_functiondef_params(node, node_doc)
23 self.check_functiondef_returns(node, node_doc)
24 self.check_functiondef_yields(node, node_doc)
Path 3: 1 calls (0.0)
FunctionDef (1)
None (1)
1def visit_functiondef(self, node: nodes.FunctionDef) -> None:
2 """Called for function and method definitions (def).
3
4 :param node: Node for a function or method definition in the AST
5 :type node: :class:`astroid.scoped_nodes.Function`
6 """
7 node_doc = utils.docstringify(
8 node.doc_node, self.linter.config.default_docstring_type
9 )
10
11 # skip functions that match the 'no-docstring-rgx' config option
12 no_docstring_rgx = self.linter.config.no_docstring_rgx
13 if no_docstring_rgx and re.match(no_docstring_rgx, node.name):
14 return
15
16 # skip functions smaller than 'docstring-min-length'
17 lines = checker_utils.get_node_last_lineno(node) - node.lineno
18 max_lines = self.linter.config.docstring_min_length
19 if max_lines > -1 and lines < max_lines:
20 return
21
22 self.check_functiondef_params(node, node_doc)
23 self.check_functiondef_returns(node, node_doc)
24 self.check_functiondef_yields(node, node_doc)