Path 1: 457 calls (0.71)

ImportFrom (457)

1@utils.only_required_for_messages("no-name-in-module")
2    def visit_importfrom(self, node: nodes.ImportFrom) -> None:
3        """Check modules attribute accesses."""
4        if not self._analyse_fallback_blocks and utils.is_from_fallback_block(node):
5            # No need to verify this, since ImportError is already
6            # handled by the client code.
7            return
8        if utils.is_node_in_guarded_import_block(node) is True:
9            # Don't verify import if part of guarded import block
10            # I.e. `sys.version_info` or `typing.TYPE_CHECKING`
11            return
12
13        name_parts = node.modname.split(".")
14        try:
15            module = node.do_import_module(name_parts[0])
16        except astroid.AstroidBuildingException:
17            return
18        module = self._check_module_attrs(node, module, name_parts[1:])
19        if not module:
20            return
21        for name, _ in node.names:
22            if name == "*":
23                continue
24            self._check_module_attrs(node, module, name.split("."))
            

Path 2: 119 calls (0.19)

ImportFrom (119)

None (119)

AstroidImportError (115) TooManyLevelsError (3) AstroidSyntaxError (1)

1@utils.only_required_for_messages("no-name-in-module")
2    def visit_importfrom(self, node: nodes.ImportFrom) -> None:
3        """Check modules attribute accesses."""
4        if not self._analyse_fallback_blocks and utils.is_from_fallback_block(node):
5            # No need to verify this, since ImportError is already
6            # handled by the client code.
7            return
8        if utils.is_node_in_guarded_import_block(node) is True:
9            # Don't verify import if part of guarded import block
10            # I.e. `sys.version_info` or `typing.TYPE_CHECKING`
11            return
12
13        name_parts = node.modname.split(".")
14        try:
15            module = node.do_import_module(name_parts[0])
16        except astroid.AstroidBuildingException:
17            return
18        module = self._check_module_attrs(node, module, name_parts[1:])
19        if not module:
20            return
21        for name, _ in node.names:
22            if name == "*":
23                continue
24            self._check_module_attrs(node, module, name.split("."))
            

Path 3: 32 calls (0.05)

ImportFrom (32)

None (32)

1@utils.only_required_for_messages("no-name-in-module")
2    def visit_importfrom(self, node: nodes.ImportFrom) -> None:
3        """Check modules attribute accesses."""
4        if not self._analyse_fallback_blocks and utils.is_from_fallback_block(node):
5            # No need to verify this, since ImportError is already
6            # handled by the client code.
7            return
8        if utils.is_node_in_guarded_import_block(node) is True:
9            # Don't verify import if part of guarded import block
10            # I.e. `sys.version_info` or `typing.TYPE_CHECKING`
11            return
12
13        name_parts = node.modname.split(".")
14        try:
15            module = node.do_import_module(name_parts[0])
16        except astroid.AstroidBuildingException:
17            return
18        module = self._check_module_attrs(node, module, name_parts[1:])
19        if not module:
20            return
21        for name, _ in node.names:
22            if name == "*":
23                continue
24            self._check_module_attrs(node, module, name.split("."))
            

Path 4: 14 calls (0.02)

ImportFrom (14)

None (14)

1@utils.only_required_for_messages("no-name-in-module")
2    def visit_importfrom(self, node: nodes.ImportFrom) -> None:
3        """Check modules attribute accesses."""
4        if not self._analyse_fallback_blocks and utils.is_from_fallback_block(node):
5            # No need to verify this, since ImportError is already
6            # handled by the client code.
7            return
8        if utils.is_node_in_guarded_import_block(node) is True:
9            # Don't verify import if part of guarded import block
10            # I.e. `sys.version_info` or `typing.TYPE_CHECKING`
11            return
12
13        name_parts = node.modname.split(".")
14        try:
15            module = node.do_import_module(name_parts[0])
16        except astroid.AstroidBuildingException:
17            return
18        module = self._check_module_attrs(node, module, name_parts[1:])
19        if not module:
20            return
21        for name, _ in node.names:
22            if name == "*":
23                continue
24            self._check_module_attrs(node, module, name.split("."))
            

Path 5: 10 calls (0.02)

ImportFrom (10)

None (10)

1@utils.only_required_for_messages("no-name-in-module")
2    def visit_importfrom(self, node: nodes.ImportFrom) -> None:
3        """Check modules attribute accesses."""
4        if not self._analyse_fallback_blocks and utils.is_from_fallback_block(node):
5            # No need to verify this, since ImportError is already
6            # handled by the client code.
7            return
8        if utils.is_node_in_guarded_import_block(node) is True:
9            # Don't verify import if part of guarded import block
10            # I.e. `sys.version_info` or `typing.TYPE_CHECKING`
11            return
12
13        name_parts = node.modname.split(".")
14        try:
15            module = node.do_import_module(name_parts[0])
16        except astroid.AstroidBuildingException:
17            return
18        module = self._check_module_attrs(node, module, name_parts[1:])
19        if not module:
20            return
21        for name, _ in node.names:
22            if name == "*":
23                continue
24            self._check_module_attrs(node, module, name.split("."))
            

Path 6: 8 calls (0.01)

ImportFrom (8)

1@utils.only_required_for_messages("no-name-in-module")
2    def visit_importfrom(self, node: nodes.ImportFrom) -> None:
3        """Check modules attribute accesses."""
4        if not self._analyse_fallback_blocks and utils.is_from_fallback_block(node):
5            # No need to verify this, since ImportError is already
6            # handled by the client code.
7            return
8        if utils.is_node_in_guarded_import_block(node) is True:
9            # Don't verify import if part of guarded import block
10            # I.e. `sys.version_info` or `typing.TYPE_CHECKING`
11            return
12
13        name_parts = node.modname.split(".")
14        try:
15            module = node.do_import_module(name_parts[0])
16        except astroid.AstroidBuildingException:
17            return
18        module = self._check_module_attrs(node, module, name_parts[1:])
19        if not module:
20            return
21        for name, _ in node.names:
22            if name == "*":
23                continue
24            self._check_module_attrs(node, module, name.split("."))