/usr/share/cagefs-skeleton/opt/alt/python312/include/python3.12/internal
#ifndef Py_INTERNAL_INSTRUMENT_H #define Py_INTERNAL_INSTRUMENT_H #include "pycore_bitutils.h" // _Py_popcount32 #include "pycore_frame.h" #include "cpython/code.h" #ifdef __cplusplus extern "C" { #endif #define PY_MONITORING_TOOL_IDS 8 /* Local events. * These require bytecode instrumentation */ #define PY_MONITORING_EVENT_PY_START 0 #define PY_MONITORING_EVENT_PY_RESUME 1 #define PY_MONITORING_EVENT_PY_RETURN 2 #define PY_MONITORING_EVENT_PY_YIELD 3 #define PY_MONITORING_EVENT_CALL 4 #define PY_MONITORING_EVENT_LINE 5 #define PY_MONITORING_EVENT_INSTRUCTION 6 #define PY_MONITORING_EVENT_JUMP 7 #define PY_MONITORING_EVENT_BRANCH 8 #define PY_MONITORING_EVENT_STOP_ITERATION 9 #define PY_MONITORING_IS_INSTRUMENTED_EVENT(ev) \ ((ev) < _PY_MONITORING_LOCAL_EVENTS) /* Other events, mainly exceptions */ #define PY_MONITORING_EVENT_RAISE 10 #define PY_MONITORING_EVENT_EXCEPTION_HANDLED 11 #define PY_MONITORING_EVENT_PY_UNWIND 12 #define PY_MONITORING_EVENT_PY_THROW 13 #define PY_MONITORING_EVENT_RERAISE 14 /* Ancillary events */ #define PY_MONITORING_EVENT_C_RETURN 15 #define PY_MONITORING_EVENT_C_RAISE 16 typedef uint32_t _PyMonitoringEventSet; /* Tool IDs */ /* These are defined in PEP 669 for convenience to avoid clashes */ #define PY_MONITORING_DEBUGGER_ID 0 #define PY_MONITORING_COVERAGE_ID 1 #define PY_MONITORING_PROFILER_ID 2 #define PY_MONITORING_OPTIMIZER_ID 5 /* Internal IDs used to suuport sys.setprofile() and sys.settrace() */ #define PY_MONITORING_SYS_PROFILE_ID 6 #define PY_MONITORING_SYS_TRACE_ID 7 PyObject *_PyMonitoring_RegisterCallback(int tool_id, int event_id, PyObject *obj); int _PyMonitoring_SetEvents(int tool_id, _PyMonitoringEventSet events); extern int _Py_call_instrumentation(PyThreadState *tstate, int event, _PyInterpreterFrame *frame, _Py_CODEUNIT *instr); extern int _Py_call_instrumentation_line(PyThreadState *tstate, _PyInterpreterFrame* frame, _Py_CODEUNIT *instr, _Py_CODEUNIT *prev); extern int _Py_call_instrumentation_instruction( PyThreadState *tstate, _PyInterpreterFrame* frame, _Py_CODEUNIT *instr); _Py_CODEUNIT * _Py_call_instrumentation_jump( PyThreadState *tstate, int event, _PyInterpreterFrame *frame, _Py_CODEUNIT *instr, _Py_CODEUNIT *target); extern int _Py_call_instrumentation_arg(PyThreadState *tstate, int event, _PyInterpreterFrame *frame, _Py_CODEUNIT *instr, PyObject *arg); extern int _Py_call_instrumentation_2args(PyThreadState *tstate, int event, _PyInterpreterFrame *frame, _Py_CODEUNIT *instr, PyObject *arg0, PyObject *arg1); extern void _Py_call_instrumentation_exc2(PyThreadState *tstate, int event, _PyInterpreterFrame *frame, _Py_CODEUNIT *instr, PyObject *arg0, PyObject *arg1); extern int _Py_Instrumentation_GetLine(PyCodeObject *code, int index); extern PyObject _PyInstrumentation_MISSING; extern PyObject _PyInstrumentation_DISABLE; #ifdef __cplusplus } #endif #endif /* !Py_INTERNAL_INSTRUMENT_H */
.
Edit
..
Edit
pycore_abstract.h
Edit
pycore_asdl.h
Edit
pycore_ast.h
Edit
pycore_ast_state.h
Edit
pycore_atexit.h
Edit
pycore_atomic.h
Edit
pycore_atomic_funcs.h
Edit
pycore_bitutils.h
Edit
pycore_blocks_output_buffer.h
Edit
pycore_bytes_methods.h
Edit
pycore_bytesobject.h
Edit
pycore_call.h
Edit
pycore_ceval.h
Edit
pycore_ceval_state.h
Edit
pycore_code.h
Edit
pycore_compile.h
Edit
pycore_condvar.h
Edit
pycore_context.h
Edit
pycore_descrobject.h
Edit
pycore_dict.h
Edit
pycore_dict_state.h
Edit
pycore_dtoa.h
Edit
pycore_emscripten_signal.h
Edit
pycore_exceptions.h
Edit
pycore_faulthandler.h
Edit
pycore_fileutils.h
Edit
pycore_fileutils_windows.h
Edit
pycore_floatobject.h
Edit
pycore_flowgraph.h
Edit
pycore_format.h
Edit
pycore_frame.h
Edit
pycore_function.h
Edit
pycore_gc.h
Edit
pycore_genobject.h
Edit
pycore_getopt.h
Edit
pycore_gil.h
Edit
pycore_global_objects.h
Edit
pycore_global_objects_fini_generated.h
Edit
pycore_global_strings.h
Edit
pycore_hamt.h
Edit
pycore_hashtable.h
Edit
pycore_import.h
Edit
pycore_initconfig.h
Edit
pycore_instruments.h
Edit
pycore_interp.h
Edit
pycore_intrinsics.h
Edit
pycore_list.h
Edit
pycore_long.h
Edit
pycore_memoryobject.h
Edit
pycore_moduleobject.h
Edit
pycore_namespace.h
Edit
pycore_object.h
Edit
pycore_object_state.h
Edit
pycore_obmalloc.h
Edit
pycore_obmalloc_init.h
Edit
pycore_opcode.h
Edit
pycore_opcode_utils.h
Edit
pycore_parser.h
Edit
pycore_pathconfig.h
Edit
pycore_pyarena.h
Edit
pycore_pyerrors.h
Edit
pycore_pyhash.h
Edit
pycore_pylifecycle.h
Edit
pycore_pymath.h
Edit
pycore_pymem.h
Edit
pycore_pymem_init.h
Edit
pycore_pystate.h
Edit
pycore_pythread.h
Edit
pycore_range.h
Edit
pycore_runtime.h
Edit
pycore_runtime_init.h
Edit
pycore_runtime_init_generated.h
Edit
pycore_signal.h
Edit
pycore_sliceobject.h
Edit
pycore_strhex.h
Edit
pycore_structseq.h
Edit
pycore_symtable.h
Edit
pycore_sysmodule.h
Edit
pycore_time.h
Edit
pycore_token.h
Edit
pycore_traceback.h
Edit
pycore_tracemalloc.h
Edit
pycore_tuple.h
Edit
pycore_typeobject.h
Edit
pycore_typevarobject.h
Edit
pycore_ucnhash.h
Edit
pycore_unicodeobject.h
Edit
pycore_unicodeobject_generated.h
Edit
pycore_unionobject.h
Edit
pycore_warnings.h
Edit