MCPcopy Index your code
hub / github.com/RustPython/RustPython / get_event_loop

Function get_event_loop

crates/stdlib/src/_asyncio.rs:2353–2367  ·  view source on GitHub ↗
(vm: &VirtualMachine)

Source from the content-addressed store, hash-verified

2351
2352 #[pyfunction]
2353 fn get_event_loop(vm: &VirtualMachine) -> PyResult {
2354 if let Some(loop_) = vm.asyncio_running_loop.borrow().clone() {
2355 return Ok(loop_);
2356 }
2357
2358 let asyncio_events = vm.import("asyncio.events", 0)?;
2359 let get_event_loop_policy = vm
2360 .get_attribute_opt(asyncio_events, vm.ctx.intern_str("get_event_loop_policy"))?
2361 .ok_or_else(|| vm.new_attribute_error("get_event_loop_policy"))?;
2362 let policy = get_event_loop_policy.call((), vm)?;
2363 let get_event_loop = vm
2364 .get_attribute_opt(policy, vm.ctx.intern_str("get_event_loop"))?
2365 .ok_or_else(|| vm.new_attribute_error("get_event_loop"))?;
2366 get_event_loop.call((), vm)
2367 }
2368
2369 #[pyfunction]
2370 fn current_task(args: LoopArg, vm: &VirtualMachine) -> PyResult {

Callers 1

py_initMethod · 0.70

Calls 7

ok_or_elseMethod · 0.80
get_attribute_optMethod · 0.80
intern_strMethod · 0.80
cloneMethod · 0.45
borrowMethod · 0.45
importMethod · 0.45
callMethod · 0.45

Tested by

no test coverage detected