MCPcopy Index your code
hub / github.com/python/mypy / visit_call_c

Method visit_call_c

mypyc/transform/log_trace.py:87–103  ·  view source on GitHub ↗
(self, op: CallC)

Source from the content-addressed store, hash-verified

85 return value
86
87 def visit_call_c(self, op: CallC) -> Value:
88 if global_name := get_load_global_name(op):
89 return self.log(op, "globals_dict_get_item", global_name)
90
91 func_name = op.function_name
92 if func_name == "PyObject_Vectorcall" and isinstance(op.args[0], CallC):
93 if global_name := get_load_global_name(op.args[0]):
94 return self.log(op, "python_call_global", global_name)
95 elif func_name == "CPyObject_GetAttr" and isinstance(op.args[1], LoadLiteral):
96 return self.log(op, "python_get_attr", str(op.args[1].value))
97 elif func_name == "PyObject_VectorcallMethod" and isinstance(op.args[0], LoadLiteral):
98 return self.log(op, "python_call_method", str(op.args[0].value))
99
100 value = self.log(op, "call_c", func_name)
101 if func_name in primitives_that_inc_ref:
102 self.log_inc_ref(value)
103 return value
104
105 def visit_get_attr(self, op: GetAttr) -> Value:
106 value = self.log(op, "get_attr", f"{op.class_type.name}.{op.attr}")

Callers

nothing calls this directly

Calls 5

logMethod · 0.95
log_inc_refMethod · 0.95
get_load_global_nameFunction · 0.85
isinstanceFunction · 0.85
strClass · 0.85

Tested by

no test coverage detected