Path 1: 13 calls (0.24)

'data' (2) 'data.clientmodule_test' (2) 'data.property_pattern' (2) 'data.suppliermodule_test' (2) 'data.suppliermodule_test.DoNothing' (2) 'data.supp...

NodeType (13)

NodeProperties (13)

1def emit_node(
2        self,
3        name: str,
4        type_: NodeType,
5        properties: NodeProperties | None = None,
6    ) -> None:
7        """Create a new node.
8
9        Nodes can be classes, packages, participants etc.
10        """
11        if properties is None:
12            properties = NodeProperties(label=name)
13        stereotype = " << interface >>" if type_ is NodeType.INTERFACE else ""
14        nodetype = self.NODES[type_]
15        if properties.color and properties.color != self.DEFAULT_COLOR:
16            color = f" #{properties.color}"
17        else:
18            color = ""
19        body = []
20        if properties.attrs:
21            body.extend(properties.attrs)
22        if properties.methods:
23            for func in properties.methods:
24                args = self._get_method_arguments(func)
25                line = "{abstract}" if func.is_abstract() else ""
26                line += f"{func.name}({', '.join(args)})"
27                if func.returns:
28                    line += " -> " + get_annotation_label(func.returns)
29                body.append(line)
30        label = properties.label if properties.label is not None else name
31        if properties.fontcolor and properties.fontcolor != self.DEFAULT_COLOR:
32            label = f"<color:{properties.fontcolor}>{label}</color>"
33        self.emit(f'{nodetype} "{label}" as {name}{stereotype}{color} {{')
34        self._inc_indent()
35        for line in body:
36            self.emit(line)
37        self._dec_indent()
38        self.emit("}")
            

Path 2: 12 calls (0.22)

'data' (2) 'data.clientmodule_test' (2) 'data.property_pattern' (2) 'data.suppliermodule_test' (2) 'data.suppliermodule_test.DoNothing' (2) 'data.supp...

NodeType (12)

NodeProperties (12)

1def emit_node(
2        self,
3        name: str,
4        type_: NodeType,
5        properties: NodeProperties | None = None,
6    ) -> None:
7        """Create a new node.
8
9        Nodes can be classes, packages, participants etc.
10        """
11        if properties is None:
12            properties = NodeProperties(label=name)
13        stereotype = " << interface >>" if type_ is NodeType.INTERFACE else ""
14        nodetype = self.NODES[type_]
15        if properties.color and properties.color != self.DEFAULT_COLOR:
16            color = f" #{properties.color}"
17        else:
18            color = ""
19        body = []
20        if properties.attrs:
21            body.extend(properties.attrs)
22        if properties.methods:
23            for func in properties.methods:
24                args = self._get_method_arguments(func)
25                line = "{abstract}" if func.is_abstract() else ""
26                line += f"{func.name}({', '.join(args)})"
27                if func.returns:
28                    line += " -> " + get_annotation_label(func.returns)
29                body.append(line)
30        label = properties.label if properties.label is not None else name
31        if properties.fontcolor and properties.fontcolor != self.DEFAULT_COLOR:
32            label = f"<color:{properties.fontcolor}>{label}</color>"
33        self.emit(f'{nodetype} "{label}" as {name}{stereotype}{color} {{')
34        self._inc_indent()
35        for line in body:
36            self.emit(line)
37        self._dec_indent()
38        self.emit("}")
            

Path 3: 7 calls (0.13)

'data.suppliermodule_test.DoSomething' (2) 'data.clientmodule_test.Specialization' (2) 'pylint.extensions.check_elif.ElseifUsedChecker' (1) 'pylint.ch...

NodeType (7)

NodeProperties (7)

1def emit_node(
2        self,
3        name: str,
4        type_: NodeType,
5        properties: NodeProperties | None = None,
6    ) -> None:
7        """Create a new node.
8
9        Nodes can be classes, packages, participants etc.
10        """
11        if properties is None:
12            properties = NodeProperties(label=name)
13        stereotype = " << interface >>" if type_ is NodeType.INTERFACE else ""
14        nodetype = self.NODES[type_]
15        if properties.color and properties.color != self.DEFAULT_COLOR:
16            color = f" #{properties.color}"
17        else:
18            color = ""
19        body = []
20        if properties.attrs:
21            body.extend(properties.attrs)
22        if properties.methods:
23            for func in properties.methods:
24                args = self._get_method_arguments(func)
25                line = "{abstract}" if func.is_abstract() else ""
26                line += f"{func.name}({', '.join(args)})"
27                if func.returns:
28                    line += " -> " + get_annotation_label(func.returns)
29                body.append(line)
30        label = properties.label if properties.label is not None else name
31        if properties.fontcolor and properties.fontcolor != self.DEFAULT_COLOR:
32            label = f"<color:{properties.fontcolor}>{label}</color>"
33        self.emit(f'{nodetype} "{label}" as {name}{stereotype}{color} {{')
34        self._inc_indent()
35        for line in body:
36            self.emit(line)
37        self._dec_indent()
38        self.emit("}")
            

Path 4: 4 calls (0.07)

'data.suppliermodule_test.DoSomething' (2) 'data.clientmodule_test.Specialization' (2)

NodeType (4)

NodeProperties (4)

1def emit_node(
2        self,
3        name: str,
4        type_: NodeType,
5        properties: NodeProperties | None = None,
6    ) -> None:
7        """Create a new node.
8
9        Nodes can be classes, packages, participants etc.
10        """
11        if properties is None:
12            properties = NodeProperties(label=name)
13        stereotype = " << interface >>" if type_ is NodeType.INTERFACE else ""
14        nodetype = self.NODES[type_]
15        if properties.color and properties.color != self.DEFAULT_COLOR:
16            color = f" #{properties.color}"
17        else:
18            color = ""
19        body = []
20        if properties.attrs:
21            body.extend(properties.attrs)
22        if properties.methods:
23            for func in properties.methods:
24                args = self._get_method_arguments(func)
25                line = "{abstract}" if func.is_abstract() else ""
26                line += f"{func.name}({', '.join(args)})"
27                if func.returns:
28                    line += " -> " + get_annotation_label(func.returns)
29                body.append(line)
30        label = properties.label if properties.label is not None else name
31        if properties.fontcolor and properties.fontcolor != self.DEFAULT_COLOR:
32            label = f"<color:{properties.fontcolor}>{label}</color>"
33        self.emit(f'{nodetype} "{label}" as {name}{stereotype}{color} {{')
34        self._inc_indent()
35        for line in body:
36            self.emit(line)
37        self._dec_indent()
38        self.emit("}")
            

Path 5: 3 calls (0.05)

'data.property_pattern.PropertyPatterns' (2) 'colorized.CheckerCollector' (1)

NodeType (3)

NodeProperties (3)

1def emit_node(
2        self,
3        name: str,
4        type_: NodeType,
5        properties: NodeProperties | None = None,
6    ) -> None:
7        """Create a new node.
8
9        Nodes can be classes, packages, participants etc.
10        """
11        if properties is None:
12            properties = NodeProperties(label=name)
13        stereotype = " << interface >>" if type_ is NodeType.INTERFACE else ""
14        nodetype = self.NODES[type_]
15        if properties.color and properties.color != self.DEFAULT_COLOR:
16            color = f" #{properties.color}"
17        else:
18            color = ""
19        body = []
20        if properties.attrs:
21            body.extend(properties.attrs)
22        if properties.methods:
23            for func in properties.methods:
24                args = self._get_method_arguments(func)
25                line = "{abstract}" if func.is_abstract() else ""
26                line += f"{func.name}({', '.join(args)})"
27                if func.returns:
28                    line += " -> " + get_annotation_label(func.returns)
29                body.append(line)
30        label = properties.label if properties.label is not None else name
31        if properties.fontcolor and properties.fontcolor != self.DEFAULT_COLOR:
32            label = f"<color:{properties.fontcolor}>{label}</color>"
33        self.emit(f'{nodetype} "{label}" as {name}{stereotype}{color} {{')
34        self._inc_indent()
35        for line in body:
36            self.emit(line)
37        self._dec_indent()
38        self.emit("}")
            

Path 6: 3 calls (0.05)

'data.property_pattern.PropertyPatterns' (2) 'attributes_annotation.Dummy2' (1)

NodeType (3)

NodeProperties (3)

1def emit_node(
2        self,
3        name: str,
4        type_: NodeType,
5        properties: NodeProperties | None = None,
6    ) -> None:
7        """Create a new node.
8
9        Nodes can be classes, packages, participants etc.
10        """
11        if properties is None:
12            properties = NodeProperties(label=name)
13        stereotype = " << interface >>" if type_ is NodeType.INTERFACE else ""
14        nodetype = self.NODES[type_]
15        if properties.color and properties.color != self.DEFAULT_COLOR:
16            color = f" #{properties.color}"
17        else:
18            color = ""
19        body = []
20        if properties.attrs:
21            body.extend(properties.attrs)
22        if properties.methods:
23            for func in properties.methods:
24                args = self._get_method_arguments(func)
25                line = "{abstract}" if func.is_abstract() else ""
26                line += f"{func.name}({', '.join(args)})"
27                if func.returns:
28                    line += " -> " + get_annotation_label(func.returns)
29                body.append(line)
30        label = properties.label if properties.label is not None else name
31        if properties.fontcolor and properties.fontcolor != self.DEFAULT_COLOR:
32            label = f"<color:{properties.fontcolor}>{label}</color>"
33        self.emit(f'{nodetype} "{label}" as {name}{stereotype}{color} {{')
34        self._inc_indent()
35        for line in body:
36            self.emit(line)
37        self._dec_indent()
38        self.emit("}")
            

Path 7: 2 calls (0.04)

'data.clientmodule_test.Ancestor' (2)

NodeType (2)

NodeProperties (2)

1def emit_node(
2        self,
3        name: str,
4        type_: NodeType,
5        properties: NodeProperties | None = None,
6    ) -> None:
7        """Create a new node.
8
9        Nodes can be classes, packages, participants etc.
10        """
11        if properties is None:
12            properties = NodeProperties(label=name)
13        stereotype = " << interface >>" if type_ is NodeType.INTERFACE else ""
14        nodetype = self.NODES[type_]
15        if properties.color and properties.color != self.DEFAULT_COLOR:
16            color = f" #{properties.color}"
17        else:
18            color = ""
19        body = []
20        if properties.attrs:
21            body.extend(properties.attrs)
22        if properties.methods:
23            for func in properties.methods:
24                args = self._get_method_arguments(func)
25                line = "{abstract}" if func.is_abstract() else ""
26                line += f"{func.name}({', '.join(args)})"
27                if func.returns:
28                    line += " -> " + get_annotation_label(func.returns)
29                body.append(line)
30        label = properties.label if properties.label is not None else name
31        if properties.fontcolor and properties.fontcolor != self.DEFAULT_COLOR:
32            label = f"<color:{properties.fontcolor}>{label}</color>"
33        self.emit(f'{nodetype} "{label}" as {name}{stereotype}{color} {{')
34        self._inc_indent()
35        for line in body:
36            self.emit(line)
37        self._dec_indent()
38        self.emit("}")
            

Path 8: 2 calls (0.04)

'data.suppliermodule_test.CustomException' (2)

NodeType (2)

NodeProperties (2)

1def emit_node(
2        self,
3        name: str,
4        type_: NodeType,
5        properties: NodeProperties | None = None,
6    ) -> None:
7        """Create a new node.
8
9        Nodes can be classes, packages, participants etc.
10        """
11        if properties is None:
12            properties = NodeProperties(label=name)
13        stereotype = " << interface >>" if type_ is NodeType.INTERFACE else ""
14        nodetype = self.NODES[type_]
15        if properties.color and properties.color != self.DEFAULT_COLOR:
16            color = f" #{properties.color}"
17        else:
18            color = ""
19        body = []
20        if properties.attrs:
21            body.extend(properties.attrs)
22        if properties.methods:
23            for func in properties.methods:
24                args = self._get_method_arguments(func)
25                line = "{abstract}" if func.is_abstract() else ""
26                line += f"{func.name}({', '.join(args)})"
27                if func.returns:
28                    line += " -> " + get_annotation_label(func.returns)
29                body.append(line)
30        label = properties.label if properties.label is not None else name
31        if properties.fontcolor and properties.fontcolor != self.DEFAULT_COLOR:
32            label = f"<color:{properties.fontcolor}>{label}</color>"
33        self.emit(f'{nodetype} "{label}" as {name}{stereotype}{color} {{')
34        self._inc_indent()
35        for line in body:
36            self.emit(line)
37        self._dec_indent()
38        self.emit("}")
            

Path 9: 2 calls (0.04)

'data.suppliermodule_test.Interface' (2)

NodeType (2)

NodeProperties (2)

1def emit_node(
2        self,
3        name: str,
4        type_: NodeType,
5        properties: NodeProperties | None = None,
6    ) -> None:
7        """Create a new node.
8
9        Nodes can be classes, packages, participants etc.
10        """
11        if properties is None:
12            properties = NodeProperties(label=name)
13        stereotype = " << interface >>" if type_ is NodeType.INTERFACE else ""
14        nodetype = self.NODES[type_]
15        if properties.color and properties.color != self.DEFAULT_COLOR:
16            color = f" #{properties.color}"
17        else:
18            color = ""
19        body = []
20        if properties.attrs:
21            body.extend(properties.attrs)
22        if properties.methods:
23            for func in properties.methods:
24                args = self._get_method_arguments(func)
25                line = "{abstract}" if func.is_abstract() else ""
26                line += f"{func.name}({', '.join(args)})"
27                if func.returns:
28                    line += " -> " + get_annotation_label(func.returns)
29                body.append(line)
30        label = properties.label if properties.label is not None else name
31        if properties.fontcolor and properties.fontcolor != self.DEFAULT_COLOR:
32            label = f"<color:{properties.fontcolor}>{label}</color>"
33        self.emit(f'{nodetype} "{label}" as {name}{stereotype}{color} {{')
34        self._inc_indent()
35        for line in body:
36            self.emit(line)
37        self._dec_indent()
38        self.emit("}")
            

Path 10: 2 calls (0.04)

'data.clientmodule_test.Ancestor' (2)

NodeType (2)

NodeProperties (2)

1def emit_node(
2        self,
3        name: str,
4        type_: NodeType,
5        properties: NodeProperties | None = None,
6    ) -> None:
7        """Create a new node.
8
9        Nodes can be classes, packages, participants etc.
10        """
11        if properties is None:
12            properties = NodeProperties(label=name)
13        stereotype = " << interface >>" if type_ is NodeType.INTERFACE else ""
14        nodetype = self.NODES[type_]
15        if properties.color and properties.color != self.DEFAULT_COLOR:
16            color = f" #{properties.color}"
17        else:
18            color = ""
19        body = []
20        if properties.attrs:
21            body.extend(properties.attrs)
22        if properties.methods:
23            for func in properties.methods:
24                args = self._get_method_arguments(func)
25                line = "{abstract}" if func.is_abstract() else ""
26                line += f"{func.name}({', '.join(args)})"
27                if func.returns:
28                    line += " -> " + get_annotation_label(func.returns)
29                body.append(line)
30        label = properties.label if properties.label is not None else name
31        if properties.fontcolor and properties.fontcolor != self.DEFAULT_COLOR:
32            label = f"<color:{properties.fontcolor}>{label}</color>"
33        self.emit(f'{nodetype} "{label}" as {name}{stereotype}{color} {{')
34        self._inc_indent()
35        for line in body:
36            self.emit(line)
37        self._dec_indent()
38        self.emit("}")
            

Path 11: 2 calls (0.04)

'data.suppliermodule_test.CustomException' (2)

NodeType (2)

NodeProperties (2)

1def emit_node(
2        self,
3        name: str,
4        type_: NodeType,
5        properties: NodeProperties | None = None,
6    ) -> None:
7        """Create a new node.
8
9        Nodes can be classes, packages, participants etc.
10        """
11        if properties is None:
12            properties = NodeProperties(label=name)
13        stereotype = " << interface >>" if type_ is NodeType.INTERFACE else ""
14        nodetype = self.NODES[type_]
15        if properties.color and properties.color != self.DEFAULT_COLOR:
16            color = f" #{properties.color}"
17        else:
18            color = ""
19        body = []
20        if properties.attrs:
21            body.extend(properties.attrs)
22        if properties.methods:
23            for func in properties.methods:
24                args = self._get_method_arguments(func)
25                line = "{abstract}" if func.is_abstract() else ""
26                line += f"{func.name}({', '.join(args)})"
27                if func.returns:
28                    line += " -> " + get_annotation_label(func.returns)
29                body.append(line)
30        label = properties.label if properties.label is not None else name
31        if properties.fontcolor and properties.fontcolor != self.DEFAULT_COLOR:
32            label = f"<color:{properties.fontcolor}>{label}</color>"
33        self.emit(f'{nodetype} "{label}" as {name}{stereotype}{color} {{')
34        self._inc_indent()
35        for line in body:
36            self.emit(line)
37        self._dec_indent()
38        self.emit("}")
            

Path 12: 2 calls (0.04)

'data.suppliermodule_test.Interface' (2)

NodeType (2)

NodeProperties (2)

1def emit_node(
2        self,
3        name: str,
4        type_: NodeType,
5        properties: NodeProperties | None = None,
6    ) -> None:
7        """Create a new node.
8
9        Nodes can be classes, packages, participants etc.
10        """
11        if properties is None:
12            properties = NodeProperties(label=name)
13        stereotype = " << interface >>" if type_ is NodeType.INTERFACE else ""
14        nodetype = self.NODES[type_]
15        if properties.color and properties.color != self.DEFAULT_COLOR:
16            color = f" #{properties.color}"
17        else:
18            color = ""
19        body = []
20        if properties.attrs:
21            body.extend(properties.attrs)
22        if properties.methods:
23            for func in properties.methods:
24                args = self._get_method_arguments(func)
25                line = "{abstract}" if func.is_abstract() else ""
26                line += f"{func.name}({', '.join(args)})"
27                if func.returns:
28                    line += " -> " + get_annotation_label(func.returns)
29                body.append(line)
30        label = properties.label if properties.label is not None else name
31        if properties.fontcolor and properties.fontcolor != self.DEFAULT_COLOR:
32            label = f"<color:{properties.fontcolor}>{label}</color>"
33        self.emit(f'{nodetype} "{label}" as {name}{stereotype}{color} {{')
34        self._inc_indent()
35        for line in body:
36            self.emit(line)
37        self._dec_indent()
38        self.emit("}")
            

Path 13: 1 calls (0.02)

'test' (1)

NodeType (1)

None (1)

1def emit_node(
2        self,
3        name: str,
4        type_: NodeType,
5        properties: NodeProperties | None = None,
6    ) -> None:
7        """Create a new node.
8
9        Nodes can be classes, packages, participants etc.
10        """
11        if properties is None:
12            properties = NodeProperties(label=name)
13        stereotype = " << interface >>" if type_ is NodeType.INTERFACE else ""
14        nodetype = self.NODES[type_]
15        if properties.color and properties.color != self.DEFAULT_COLOR:
16            color = f" #{properties.color}"
17        else:
18            color = ""
19        body = []
20        if properties.attrs:
21            body.extend(properties.attrs)
22        if properties.methods:
23            for func in properties.methods:
24                args = self._get_method_arguments(func)
25                line = "{abstract}" if func.is_abstract() else ""
26                line += f"{func.name}({', '.join(args)})"
27                if func.returns:
28                    line += " -> " + get_annotation_label(func.returns)
29                body.append(line)
30        label = properties.label if properties.label is not None else name
31        if properties.fontcolor and properties.fontcolor != self.DEFAULT_COLOR:
32            label = f"<color:{properties.fontcolor}>{label}</color>"
33        self.emit(f'{nodetype} "{label}" as {name}{stereotype}{color} {{')
34        self._inc_indent()
35        for line in body:
36            self.emit(line)
37        self._dec_indent()
38        self.emit("}")