Path 1: 1069 calls (0.99)

PyLinter._iterate_file_descrs def (1037) list_iterator (27) PyLinter._get_file_descr_from_stdin def (5)

None (1064) 'import os\n' (2) "\nfrom .c import foobar\nfrom .d import bla # module does not exist\n\nfoobar('hello')\nbla()\n" (2) 'for\n' (1)

dict (1061) {FileItem(name='syntax_error', filepath='/Users/andrehora/Documents/git/projects-pathspotter/pylint/tests/regrtest_data/syntax_error.py', ...

1def _get_asts(
2        self, fileitems: Iterator[FileItem], data: str | None
3    ) -> dict[FileItem, nodes.Module | None]:
4        """Get the AST for all given FileItems."""
5        ast_per_fileitem: dict[FileItem, nodes.Module | None] = {}
6
7        for fileitem in fileitems:
8            self.set_current_module(fileitem.name, fileitem.filepath)
9
10            try:
11                ast_per_fileitem[fileitem] = self.get_ast(
12                    fileitem.filepath, fileitem.name, data
13                )
14            except astroid.AstroidBuildingError as ex:
15                template_path = prepare_crash_report(
16                    ex, fileitem.filepath, self.crash_file_path
17                )
18                msg = get_fatal_error_message(fileitem.filepath, template_path)
19                self.add_message(
20                    "astroid-error",
21                    args=(fileitem.filepath, msg),
22                    confidence=HIGH,
23                )
24
25        return ast_per_fileitem
            

Path 2: 7 calls (0.01)

PyLinter._iterate_file_descrs def (6) PyLinter._get_file_descr_from_stdin def (1)

None (6) 'import os\n' (1)

{} (7)

1def _get_asts(
2        self, fileitems: Iterator[FileItem], data: str | None
3    ) -> dict[FileItem, nodes.Module | None]:
4        """Get the AST for all given FileItems."""
5        ast_per_fileitem: dict[FileItem, nodes.Module | None] = {}
6
7        for fileitem in fileitems:
8            self.set_current_module(fileitem.name, fileitem.filepath)
9
10            try:
11                ast_per_fileitem[fileitem] = self.get_ast(
12                    fileitem.filepath, fileitem.name, data
13                )
14            except astroid.AstroidBuildingError as ex:
15                template_path = prepare_crash_report(
16                    ex, fileitem.filepath, self.crash_file_path
17                )
18                msg = get_fatal_error_message(fileitem.filepath, template_path)
19                self.add_message(
20                    "astroid-error",
21                    args=(fileitem.filepath, msg),
22                    confidence=HIGH,
23                )
24
25        return ast_per_fileitem
            

Path 3: 1 calls (0.0)

PyLinter._iterate_file_descrs def (1)

None (1)

{} (1)

AstroidBuildingError (1)

1def _get_asts(
2        self, fileitems: Iterator[FileItem], data: str | None
3    ) -> dict[FileItem, nodes.Module | None]:
4        """Get the AST for all given FileItems."""
5        ast_per_fileitem: dict[FileItem, nodes.Module | None] = {}
6
7        for fileitem in fileitems:
8            self.set_current_module(fileitem.name, fileitem.filepath)
9
10            try:
11                ast_per_fileitem[fileitem] = self.get_ast(
12                    fileitem.filepath, fileitem.name, data
13                )
14            except astroid.AstroidBuildingError as ex:
15                template_path = prepare_crash_report(
16                    ex, fileitem.filepath, self.crash_file_path
17                )
18                msg = get_fatal_error_message(fileitem.filepath, template_path)
19                self.add_message(
20                    "astroid-error",
21                    args=(fileitem.filepath, msg),
22                    confidence=HIGH,
23                )
24
25        return ast_per_fileitem