Method: pylint.checkers.design_analysis.MisdesignChecker.visit_classdef
Calls: 1520, Exceptions: 0, Paths: 3Back
Path 1: 1513 calls (1.0)
ClassDef (1513)
1@only_required_for_messages(
2 "too-many-ancestors",
3 "too-many-instance-attributes",
4 "too-few-public-methods",
5 "too-many-public-methods",
6 )
7 def visit_classdef(self, node: nodes.ClassDef) -> None:
8 """Check size of inheritance hierarchy and number of instance attributes."""
9 parents = _get_parents(
10 node,
11 STDLIB_CLASSES_IGNORE_ANCESTOR.union(self.linter.config.ignored_parents),
12 )
13 nb_parents = len(parents)
14 if nb_parents > self.linter.config.max_parents:
15 self.add_message(
16 "too-many-ancestors",
17 node=node,
18 args=(nb_parents, self.linter.config.max_parents),
19 )
20
21 if len(node.instance_attrs) > self.linter.config.max_attributes:
22 self.add_message(
23 "too-many-instance-attributes",
24 node=node,
25 args=(len(node.instance_attrs), self.linter.config.max_attributes),
26 )
Path 2: 6 calls (0.0)
ClassDef (6)
1@only_required_for_messages(
2 "too-many-ancestors",
3 "too-many-instance-attributes",
4 "too-few-public-methods",
5 "too-many-public-methods",
6 )
7 def visit_classdef(self, node: nodes.ClassDef) -> None:
8 """Check size of inheritance hierarchy and number of instance attributes."""
9 parents = _get_parents(
10 node,
11 STDLIB_CLASSES_IGNORE_ANCESTOR.union(self.linter.config.ignored_parents),
12 )
13 nb_parents = len(parents)
14 if nb_parents > self.linter.config.max_parents:
15 self.add_message(
16 "too-many-ancestors",
17 node=node,
18 args=(nb_parents, self.linter.config.max_parents),
19 )
20
21 if len(node.instance_attrs) > self.linter.config.max_attributes:
22 self.add_message(
23 "too-many-instance-attributes",
24 node=node,
25 args=(len(node.instance_attrs), self.linter.config.max_attributes),
26 )
Path 3: 1 calls (0.0)
ClassDef (1)
1@only_required_for_messages(
2 "too-many-ancestors",
3 "too-many-instance-attributes",
4 "too-few-public-methods",
5 "too-many-public-methods",
6 )
7 def visit_classdef(self, node: nodes.ClassDef) -> None:
8 """Check size of inheritance hierarchy and number of instance attributes."""
9 parents = _get_parents(
10 node,
11 STDLIB_CLASSES_IGNORE_ANCESTOR.union(self.linter.config.ignored_parents),
12 )
13 nb_parents = len(parents)
14 if nb_parents > self.linter.config.max_parents:
15 self.add_message(
16 "too-many-ancestors",
17 node=node,
18 args=(nb_parents, self.linter.config.max_parents),
19 )
20
21 if len(node.instance_attrs) > self.linter.config.max_attributes:
22 self.add_message(
23 "too-many-instance-attributes",
24 node=node,
25 args=(len(node.instance_attrs), self.linter.config.max_attributes),
26 )