Path 1: 1998 calls (0.55)

FunctionDef (522) Name (220) Call (215) ClassDef (168) AssignName (165) Attribute (88) Const (57) Raise (48) If (46) Compare (44)

('string_formatting', 'pprint_bad') (37) ('fail_under_minus10', 'loop') (24) ('fail_under_plus7_5', 'func') (18) ('functional.l.logical_tautology', 'f...

AttributeError (1998)

1def get_module_and_frameid(node: nodes.NodeNG) -> tuple[str, str]:
2    """Return the module name and the frame id in the module."""
3    frame = node.frame(future=True)
4    module, obj = "", []
5    while frame:
6        if isinstance(frame, Module):
7            module = frame.name
8        else:
9            obj.append(getattr(frame, "name", "<lambda>"))
10        try:
11            frame = frame.parent.frame(future=True)
12        except AttributeError:
13            break
14    obj.reverse()
15    return module, ".".join(obj)
            

Path 2: 1620 calls (0.45)

Call (390) Import (183) Name (142) AssignName (107) Compare (99) Attribute (86) ImportFrom (81) Assign (66) BoolOp (45) Subscript (41)

('input.hide_code_with_imports', '') (65) ('functional.a.arguments', '') (35) ('functional.u.unspecified_encoding_py38', '') (33) ('invalid_envvar_val...

AttributeError (1620)

1def get_module_and_frameid(node: nodes.NodeNG) -> tuple[str, str]:
2    """Return the module name and the frame id in the module."""
3    frame = node.frame(future=True)
4    module, obj = "", []
5    while frame:
6        if isinstance(frame, Module):
7            module = frame.name
8        else:
9            obj.append(getattr(frame, "name", "<lambda>"))
10        try:
11            frame = frame.parent.frame(future=True)
12        except AttributeError:
13            break
14    obj.reverse()
15    return module, ".".join(obj)