Files
tfm_ainventory/graphify-out/cache/74510e0233b16184b55a40c0d4aa065d057412cbc7113b278ee1619a240ccabf.json

1 line
41 KiB
JSON

{"nodes": [{"id": "backend_venv_lib_python3_12_site_packages_greenlet_tgreenlet_cpp", "label": "TGreenlet.cpp", "file_type": "code", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L1"}, {"id": "tgreenlet_greenlet", "label": "Greenlet()", "file_type": "code", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L23"}, {"id": "tgreenlet_force_slp_switch_error", "label": "force_slp_switch_error()", "file_type": "code", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L43"}, {"id": "tgreenlet_release_args", "label": "release_args()", "file_type": "code", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L49"}, {"id": "tgreenlet_throw_greenletexit_during_dealloc", "label": "throw_GreenletExit_during_dealloc()", "file_type": "code", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L59"}, {"id": "tgreenlet_slp_restore_state", "label": "slp_restore_state()", "file_type": "code", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L71"}, {"id": "tgreenlet_slp_save_state", "label": "slp_save_state()", "file_type": "code", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L82"}, {"id": "tgreenlet_on_switchstack_or_initialstub_failure", "label": "on_switchstack_or_initialstub_failure()", "file_type": "code", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L100"}, {"id": "tgreenlet_g_switchstack_success", "label": "g_switchstack_success()", "file_type": "code", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L129"}, {"id": "tgreenlet_g_switchstack", "label": "g_switchstack()", "file_type": "code", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L145"}, {"id": "tgreenlet_check_switch_allowed", "label": "check_switch_allowed()", "file_type": "code", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L217"}, {"id": "tgreenlet_context", "label": "context()", "file_type": "code", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L281"}, {"id": "tgreenlet_g_handle_exit", "label": "g_handle_exit()", "file_type": "code", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L389"}, {"id": "tgreenlet_g_switch_finish", "label": "g_switch_finish()", "file_type": "code", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L422"}, {"id": "tgreenlet_g_calltrace", "label": "g_calltrace()", "file_type": "code", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L473"}, {"id": "tgreenlet_murder_in_place", "label": "murder_in_place()", "file_type": "code", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L502"}, {"id": "tgreenlet_deactivate_and_free", "label": "deactivate_and_free()", "file_type": "code", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L511"}, {"id": "tgreenlet_belongs_to_thread", "label": "belongs_to_thread()", "file_type": "code", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L534"}, {"id": "tgreenlet_deallocing_greenlet_in_thread", "label": "deallocing_greenlet_in_thread()", "file_type": "code", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L546"}, {"id": "tgreenlet_tp_traverse", "label": "tp_traverse()", "file_type": "code", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L584"}, {"id": "tgreenlet_tp_clear", "label": "tp_clear()", "file_type": "code", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L604"}, {"id": "tgreenlet_is_currently_running_in_some_thread", "label": "is_currently_running_in_some_thread()", "file_type": "code", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L613"}, {"id": "tgreenlet_greenlet_noinline", "label": "GREENLET_NOINLINE()", "file_type": "code", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L619"}, {"id": "tgreenlet_expose_frames", "label": "expose_frames()", "file_type": "code", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L722"}], "edges": [{"source": "backend_venv_lib_python3_12_site_packages_greenlet_tgreenlet_cpp", "target": "greenlet_internal", "relation": "imports", "confidence": "EXTRACTED", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L14", "weight": 1.0}, {"source": "backend_venv_lib_python3_12_site_packages_greenlet_tgreenlet_cpp", "target": "tgreenlet", "relation": "imports", "confidence": "EXTRACTED", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L15", "weight": 1.0}, {"source": "backend_venv_lib_python3_12_site_packages_greenlet_tgreenlet_cpp", "target": "tgreenletglobals", "relation": "imports", "confidence": "EXTRACTED", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L18", "weight": 1.0}, {"source": "backend_venv_lib_python3_12_site_packages_greenlet_tgreenlet_cpp", "target": "tthreadstatedestroy", "relation": "imports", "confidence": "EXTRACTED", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L19", "weight": 1.0}, {"source": "backend_venv_lib_python3_12_site_packages_greenlet_tgreenlet_cpp", "target": "tgreenlet_greenlet", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L23", "weight": 1.0}, {"source": "backend_venv_lib_python3_12_site_packages_greenlet_tgreenlet_cpp", "target": "tgreenlet_greenlet", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L28", "weight": 1.0}, {"source": "backend_venv_lib_python3_12_site_packages_greenlet_tgreenlet_cpp", "target": "tgreenlet_greenlet", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L35", "weight": 1.0}, {"source": "backend_venv_lib_python3_12_site_packages_greenlet_tgreenlet_cpp", "target": "tgreenlet_force_slp_switch_error", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L43", "weight": 1.0}, {"source": "backend_venv_lib_python3_12_site_packages_greenlet_tgreenlet_cpp", "target": "tgreenlet_release_args", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L49", "weight": 1.0}, {"source": "backend_venv_lib_python3_12_site_packages_greenlet_tgreenlet_cpp", "target": "tgreenlet_throw_greenletexit_during_dealloc", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L59", "weight": 1.0}, {"source": "backend_venv_lib_python3_12_site_packages_greenlet_tgreenlet_cpp", "target": "tgreenlet_slp_restore_state", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L71", "weight": 1.0}, {"source": "backend_venv_lib_python3_12_site_packages_greenlet_tgreenlet_cpp", "target": "tgreenlet_slp_save_state", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L82", "weight": 1.0}, {"source": "backend_venv_lib_python3_12_site_packages_greenlet_tgreenlet_cpp", "target": "tgreenlet_on_switchstack_or_initialstub_failure", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L100", "weight": 1.0}, {"source": "backend_venv_lib_python3_12_site_packages_greenlet_tgreenlet_cpp", "target": "tgreenlet_g_switchstack_success", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L129", "weight": 1.0}, {"source": "backend_venv_lib_python3_12_site_packages_greenlet_tgreenlet_cpp", "target": "tgreenlet_g_switchstack", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L145", "weight": 1.0}, {"source": "backend_venv_lib_python3_12_site_packages_greenlet_tgreenlet_cpp", "target": "tgreenlet_check_switch_allowed", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L217", "weight": 1.0}, {"source": "backend_venv_lib_python3_12_site_packages_greenlet_tgreenlet_cpp", "target": "tgreenlet_context", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L281", "weight": 1.0}, {"source": "backend_venv_lib_python3_12_site_packages_greenlet_tgreenlet_cpp", "target": "tgreenlet_context", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L310", "weight": 1.0}, {"source": "backend_venv_lib_python3_12_site_packages_greenlet_tgreenlet_cpp", "target": "tgreenlet_g_handle_exit", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L389", "weight": 1.0}, {"source": "backend_venv_lib_python3_12_site_packages_greenlet_tgreenlet_cpp", "target": "tgreenlet_g_switch_finish", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L422", "weight": 1.0}, {"source": "backend_venv_lib_python3_12_site_packages_greenlet_tgreenlet_cpp", "target": "tgreenlet_g_calltrace", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L473", "weight": 1.0}, {"source": "backend_venv_lib_python3_12_site_packages_greenlet_tgreenlet_cpp", "target": "tgreenlet_murder_in_place", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L502", "weight": 1.0}, {"source": "backend_venv_lib_python3_12_site_packages_greenlet_tgreenlet_cpp", "target": "tgreenlet_deactivate_and_free", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L511", "weight": 1.0}, {"source": "backend_venv_lib_python3_12_site_packages_greenlet_tgreenlet_cpp", "target": "tgreenlet_belongs_to_thread", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L534", "weight": 1.0}, {"source": "backend_venv_lib_python3_12_site_packages_greenlet_tgreenlet_cpp", "target": "tgreenlet_deallocing_greenlet_in_thread", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L546", "weight": 1.0}, {"source": "backend_venv_lib_python3_12_site_packages_greenlet_tgreenlet_cpp", "target": "tgreenlet_tp_traverse", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L584", "weight": 1.0}, {"source": "backend_venv_lib_python3_12_site_packages_greenlet_tgreenlet_cpp", "target": "tgreenlet_tp_clear", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L604", "weight": 1.0}, {"source": "backend_venv_lib_python3_12_site_packages_greenlet_tgreenlet_cpp", "target": "tgreenlet_is_currently_running_in_some_thread", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L613", "weight": 1.0}, {"source": "backend_venv_lib_python3_12_site_packages_greenlet_tgreenlet_cpp", "target": "tgreenlet_greenlet_noinline", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L619", "weight": 1.0}, {"source": "backend_venv_lib_python3_12_site_packages_greenlet_tgreenlet_cpp", "target": "tgreenlet_expose_frames", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L722", "weight": 1.0}, {"source": "tgreenlet_on_switchstack_or_initialstub_failure", "target": "tgreenlet_release_args", "relation": "calls", "confidence": "EXTRACTED", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L117", "weight": 1.0}, {"source": "tgreenlet_on_switchstack_or_initialstub_failure", "target": "tgreenlet_murder_in_place", "relation": "calls", "confidence": "EXTRACTED", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L120", "weight": 1.0}, {"source": "tgreenlet_g_switchstack", "target": "tgreenlet_expose_frames", "relation": "calls", "confidence": "EXTRACTED", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L172", "weight": 1.0}, {"source": "tgreenlet_g_switchstack", "target": "tgreenlet_force_slp_switch_error", "relation": "calls", "confidence": "EXTRACTED", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L179", "weight": 1.0}, {"source": "tgreenlet_g_switchstack", "target": "tgreenlet_g_switchstack_success", "relation": "calls", "confidence": "EXTRACTED", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L211", "weight": 1.0}, {"source": "tgreenlet_context", "target": "tgreenlet_is_currently_running_in_some_thread", "relation": "calls", "confidence": "EXTRACTED", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L287", "weight": 1.0}, {"source": "tgreenlet_g_switch_finish", "target": "tgreenlet_g_calltrace", "relation": "calls", "confidence": "EXTRACTED", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L446", "weight": 1.0}, {"source": "tgreenlet_g_switch_finish", "target": "tgreenlet_release_args", "relation": "calls", "confidence": "EXTRACTED", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L468", "weight": 1.0}, {"source": "tgreenlet_murder_in_place", "target": "tgreenlet_is_currently_running_in_some_thread", "relation": "calls", "confidence": "EXTRACTED", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L506", "weight": 1.0}, {"source": "tgreenlet_murder_in_place", "target": "tgreenlet_deactivate_and_free", "relation": "calls", "confidence": "EXTRACTED", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L507", "weight": 1.0}, {"source": "tgreenlet_deactivate_and_free", "target": "tgreenlet_tp_clear", "relation": "calls", "confidence": "EXTRACTED", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L531", "weight": 1.0}, {"source": "tgreenlet_deallocing_greenlet_in_thread", "target": "tgreenlet_belongs_to_thread", "relation": "calls", "confidence": "EXTRACTED", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L551", "weight": 1.0}, {"source": "tgreenlet_deallocing_greenlet_in_thread", "target": "tgreenlet_throw_greenletexit_during_dealloc", "relation": "calls", "confidence": "EXTRACTED", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L558", "weight": 1.0}, {"source": "tgreenlet_deallocing_greenlet_in_thread", "target": "tgreenlet_deactivate_and_free", "relation": "calls", "confidence": "EXTRACTED", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L578", "weight": 1.0}], "raw_calls": [{"caller_nid": "tgreenlet_greenlet", "callee": "assert", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L31"}, {"caller_nid": "tgreenlet_release_args", "callee": "CLEAR", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L52"}, {"caller_nid": "tgreenlet_throw_greenletexit_during_dealloc", "callee": "PyErr_SetString", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L65"}, {"caller_nid": "tgreenlet_throw_greenletexit_during_dealloc", "callee": "g_switch", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L68"}, {"caller_nid": "tgreenlet_slp_restore_state", "callee": "SLP_BEFORE_RESTORE_STATE", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L75"}, {"caller_nid": "tgreenlet_slp_restore_state", "callee": "copy_heap_to_stack", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L77"}, {"caller_nid": "tgreenlet_slp_restore_state", "callee": "borrow_current", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L78"}, {"caller_nid": "tgreenlet_slp_restore_state", "callee": "thread_state", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L78"}, {"caller_nid": "tgreenlet_slp_save_state", "callee": "SLP_BEFORE_SAVE_STATE", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L90"}, {"caller_nid": "tgreenlet_slp_save_state", "callee": "copy_stack_to_heap", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L92"}, {"caller_nid": "tgreenlet_slp_save_state", "callee": "borrow_current", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L93"}, {"caller_nid": "tgreenlet_slp_save_state", "callee": "thread_state", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L93"}, {"caller_nid": "tgreenlet_on_switchstack_or_initialstub_failure", "callee": "PyErr_Occurred", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L110"}, {"caller_nid": "tgreenlet_on_switchstack_or_initialstub_failure", "callee": "PyErr_SetString", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L111"}, {"caller_nid": "tgreenlet_on_switchstack_or_initialstub_failure", "callee": "assert", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L123"}, {"caller_nid": "tgreenlet_on_switchstack_or_initialstub_failure", "callee": "assert", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L124"}, {"caller_nid": "tgreenlet_on_switchstack_or_initialstub_failure", "callee": "OwnedObject", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L125"}, {"caller_nid": "tgreenlet_g_switchstack_success", "callee": "PyThreadState_GET", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L132"}, {"caller_nid": "tgreenlet_g_switchstack_success", "callee": "thread_state", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L138"}, {"caller_nid": "tgreenlet_g_switchstack_success", "callee": "get_current", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L139"}, {"caller_nid": "tgreenlet_g_switchstack_success", "callee": "set_current", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L140"}, {"caller_nid": "tgreenlet_g_switchstack_success", "callee": "self", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L140"}, {"caller_nid": "tgreenlet_g_switchstack", "callee": "assert", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L156"}, {"caller_nid": "tgreenlet_g_switchstack", "callee": "args", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L156"}, {"caller_nid": "tgreenlet_g_switchstack", "callee": "PyErr_Occurred", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L156"}, {"caller_nid": "tgreenlet_g_switchstack", "callee": "is_current", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L158"}, {"caller_nid": "tgreenlet_g_switchstack", "callee": "thread_state", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L158"}, {"caller_nid": "tgreenlet_g_switchstack", "callee": "self", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L158"}, {"caller_nid": "tgreenlet_g_switchstack", "callee": "switchstack_result_t", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L162"}, {"caller_nid": "tgreenlet_g_switchstack", "callee": "borrow_current", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L163"}, {"caller_nid": "tgreenlet_g_switchstack", "callee": "thread_state", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L163"}, {"caller_nid": "tgreenlet_g_switchstack", "callee": "borrow_current", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L165"}, {"caller_nid": "tgreenlet_g_switchstack", "callee": "thread_state", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L165"}, {"caller_nid": "tgreenlet_g_switchstack", "callee": "PyThreadState_GET", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L166"}, {"caller_nid": "tgreenlet_g_switchstack", "callee": "will_switch_from", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L170"}, {"caller_nid": "tgreenlet_g_switchstack", "callee": "assert", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L174"}, {"caller_nid": "tgreenlet_g_switchstack", "callee": "args", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L174"}, {"caller_nid": "tgreenlet_g_switchstack", "callee": "PyErr_Occurred", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L174"}, {"caller_nid": "tgreenlet_g_switchstack", "callee": "slp_switch", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L183"}, {"caller_nid": "tgreenlet_g_switchstack", "callee": "Py_FatalError", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L196"}, {"caller_nid": "tgreenlet_g_switchstack", "callee": "assert", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L212"}, {"caller_nid": "tgreenlet_g_switchstack", "callee": "args", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L212"}, {"caller_nid": "tgreenlet_g_switchstack", "callee": "PyErr_Occurred", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L212"}, {"caller_nid": "tgreenlet_g_switchstack", "callee": "switchstack_result_t", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L213"}, {"caller_nid": "tgreenlet_check_switch_allowed", "callee": "find_main_greenlet_in_lineage", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L237"}, {"caller_nid": "tgreenlet_check_switch_allowed", "callee": "PyErrOccurred", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L240"}, {"caller_nid": "tgreenlet_check_switch_allowed", "callee": "thread_state", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L244"}, {"caller_nid": "tgreenlet_check_switch_allowed", "callee": "PyErrOccurred", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L245"}, {"caller_nid": "tgreenlet_check_switch_allowed", "callee": "borrow_main_greenlet", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L258"}, {"caller_nid": "tgreenlet_check_switch_allowed", "callee": "state", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L258"}, {"caller_nid": "tgreenlet_check_switch_allowed", "callee": "GET_THREAD_STATE", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L258"}, {"caller_nid": "tgreenlet_check_switch_allowed", "callee": "main_greenlet", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L264"}, {"caller_nid": "tgreenlet_check_switch_allowed", "callee": "thread_state", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L271"}, {"caller_nid": "tgreenlet_check_switch_allowed", "callee": "PyErrOccurred", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L274"}, {"caller_nid": "tgreenlet_context", "callee": "is_current", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L290"}, {"caller_nid": "tgreenlet_context", "callee": "state", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L290"}, {"caller_nid": "tgreenlet_context", "callee": "GET_THREAD_STATE", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L290"}, {"caller_nid": "tgreenlet_context", "callee": "self", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L290"}, {"caller_nid": "tgreenlet_context", "callee": "PyThreadState_GET", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L291"}, {"caller_nid": "tgreenlet_context", "callee": "ValueError", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L294"}, {"caller_nid": "tgreenlet_context", "callee": "None", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L304"}, {"caller_nid": "tgreenlet_context", "callee": "AttributeError", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L315"}, {"caller_nid": "tgreenlet_context", "callee": "is_None", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L317"}, {"caller_nid": "tgreenlet_context", "callee": "PyThreadState_GET", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L324"}, {"caller_nid": "tgreenlet_context", "callee": "is_current", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L327"}, {"caller_nid": "tgreenlet_context", "callee": "state", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L327"}, {"caller_nid": "tgreenlet_context", "callee": "GET_THREAD_STATE", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L327"}, {"caller_nid": "tgreenlet_context", "callee": "self", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L327"}, {"caller_nid": "tgreenlet_context", "callee": "ValueError", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L328"}, {"caller_nid": "tgreenlet_context", "callee": "consuming", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L334"}, {"caller_nid": "tgreenlet_context", "callee": "relinquish_ownership", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L335"}, {"caller_nid": "tgreenlet_g_handle_exit", "callee": "PyExceptionMatches", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L392"}, {"caller_nid": "tgreenlet_g_handle_exit", "callee": "PyErr_Fetch", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L399"}, {"caller_nid": "tgreenlet_g_handle_exit", "callee": "PyErrFetchParam", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L399"}, {"caller_nid": "tgreenlet_g_handle_exit", "callee": "PyErrFetchParam", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L399"}, {"caller_nid": "tgreenlet_g_handle_exit", "callee": "None", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L401"}, {"caller_nid": "tgreenlet_g_handle_exit", "callee": "OwnedObject", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L403"}, {"caller_nid": "tgreenlet_g_handle_exit", "callee": "consuming", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L411"}, {"caller_nid": "tgreenlet_g_handle_exit", "callee": "PyTuple_Pack", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L411"}, {"caller_nid": "tgreenlet_g_handle_exit", "callee": "borrow", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L411"}, {"caller_nid": "tgreenlet_g_handle_exit", "callee": "OwnedObject", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L414"}, {"caller_nid": "tgreenlet_g_switch_finish", "callee": "assert", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L425"}, {"caller_nid": "tgreenlet_g_switch_finish", "callee": "thread_state", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L427"}, {"caller_nid": "tgreenlet_g_switch_finish", "callee": "args", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L433"}, {"caller_nid": "tgreenlet_g_switch_finish", "callee": "args", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L434"}, {"caller_nid": "tgreenlet_g_switch_finish", "callee": "assert", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L437"}, {"caller_nid": "tgreenlet_g_switch_finish", "callee": "PyErr_Occurred", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L437"}, {"caller_nid": "tgreenlet_g_switch_finish", "callee": "assert", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L439"}, {"caller_nid": "tgreenlet_g_switch_finish", "callee": "args", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L439"}, {"caller_nid": "tgreenlet_g_switch_finish", "callee": "assert", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L442"}, {"caller_nid": "tgreenlet_g_switch_finish", "callee": "assert", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L443"}, {"caller_nid": "tgreenlet_g_switch_finish", "callee": "borrow_current", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L443"}, {"caller_nid": "tgreenlet_g_switch_finish", "callee": "self", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L443"}, {"caller_nid": "tgreenlet_g_switch_finish", "callee": "get_tracefunc", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L444"}, {"caller_nid": "tgreenlet_g_switch_finish", "callee": "assert", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L445"}, {"caller_nid": "tgreenlet_g_switch_finish", "callee": "PyErr_Occurred", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L445"}, {"caller_nid": "tgreenlet_g_switch_finish", "callee": "self", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L449"}, {"caller_nid": "tgreenlet_g_switch_finish", "callee": "PyErr_Occurred", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L455"}, {"caller_nid": "tgreenlet_g_switch_finish", "callee": "from_current", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L461"}, {"caller_nid": "tgreenlet_g_calltrace", "callee": "CallTraceFunction", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L485"}, {"caller_nid": "tgreenlet_g_calltrace", "callee": "set_tracefunc", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L491"}, {"caller_nid": "tgreenlet_g_calltrace", "callee": "state", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L491"}, {"caller_nid": "tgreenlet_g_calltrace", "callee": "GET_THREAD_STATE", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L491"}, {"caller_nid": "tgreenlet_g_calltrace", "callee": "PyErrRestore", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L495"}, {"caller_nid": "tgreenlet_g_calltrace", "callee": "assert", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L496"}, {"caller_nid": "tgreenlet_g_calltrace", "callee": "PyErr_Occurred", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L497"}, {"caller_nid": "tgreenlet_g_calltrace", "callee": "PyErr_Occurred", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L498"}, {"caller_nid": "tgreenlet_murder_in_place", "callee": "active", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L505"}, {"caller_nid": "tgreenlet_murder_in_place", "callee": "assert", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L506"}, {"caller_nid": "tgreenlet_deactivate_and_free", "callee": "active", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L514"}, {"caller_nid": "tgreenlet_deactivate_and_free", "callee": "StackState", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L518"}, {"caller_nid": "tgreenlet_deactivate_and_free", "callee": "assert", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L519"}, {"caller_nid": "tgreenlet_deactivate_and_free", "callee": "active", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L519"}, {"caller_nid": "tgreenlet_belongs_to_thread", "callee": "thread_state", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L537"}, {"caller_nid": "tgreenlet_deallocing_greenlet_in_thread", "callee": "assert", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L552"}, {"caller_nid": "tgreenlet_deallocing_greenlet_in_thread", "callee": "thread_state", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L570"}, {"caller_nid": "tgreenlet_deallocing_greenlet_in_thread", "callee": "delete_when_thread_running", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L572"}, {"caller_nid": "tgreenlet_deallocing_greenlet_in_thread", "callee": "self", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L572"}, {"caller_nid": "tgreenlet_tp_traverse", "callee": "was_running_in_dead_thread", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L594"}, {"caller_nid": "tgreenlet_tp_clear", "callee": "was_running_in_dead_thread", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L607"}, {"caller_nid": "tgreenlet_is_currently_running_in_some_thread", "callee": "active", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L615"}, {"caller_nid": "tgreenlet_is_currently_running_in_some_thread", "callee": "top_frame", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L615"}, {"caller_nid": "tgreenlet_greenlet_noinline", "callee": "top_frame", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L621"}, {"caller_nid": "tgreenlet_greenlet_noinline", "callee": "top_frame", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L626"}, {"caller_nid": "tgreenlet_greenlet_noinline", "callee": "copy_from_stack", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L632"}, {"caller_nid": "tgreenlet_greenlet_noinline", "callee": "_PyFrame_IsIncomplete", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L633"}, {"caller_nid": "tgreenlet_greenlet_noinline", "callee": "assert", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L645"}, {"caller_nid": "tgreenlet_greenlet_noinline", "callee": "assert", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L674"}, {"caller_nid": "tgreenlet_greenlet_noinline", "callee": "_PyFrame_IsIncomplete", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L674"}, {"caller_nid": "tgreenlet_greenlet_noinline", "callee": "Py_XDECREF", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L677"}, {"caller_nid": "tgreenlet_greenlet_noinline", "callee": "PyFrame_GetBack", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L677"}, {"caller_nid": "tgreenlet_greenlet_noinline", "callee": "assert", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L678"}, {"caller_nid": "tgreenlet_greenlet_noinline", "callee": "assert", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L693"}, {"caller_nid": "tgreenlet_greenlet_noinline", "callee": "assert", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L696"}, {"caller_nid": "tgreenlet_greenlet_noinline", "callee": "memcpy", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L697"}, {"caller_nid": "tgreenlet_greenlet_noinline", "callee": "assert", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L715"}, {"caller_nid": "tgreenlet_greenlet_noinline", "callee": "memcpy", "source_file": "backend/venv/lib/python3.12/site-packages/greenlet/TGreenlet.cpp", "source_location": "L716"}]}