(
fut: PyObjectRef,
waiter: PyObjectRef,
vm: &VirtualMachine,
)
| 2570 | |
| 2571 | #[pyfunction] |
| 2572 | fn future_add_to_awaited_by( |
| 2573 | fut: PyObjectRef, |
| 2574 | waiter: PyObjectRef, |
| 2575 | vm: &VirtualMachine, |
| 2576 | ) -> PyResult<()> { |
| 2577 | // Only operate on native Future/Task objects (including subclasses). |
| 2578 | // Non-native objects are silently ignored. |
| 2579 | if let Some(task) = fut.downcast_ref::<PyTask>() { |
| 2580 | return task.base.awaited_by_add(waiter, vm); |
| 2581 | } |
| 2582 | if let Some(future) = fut.downcast_ref::<PyFuture>() { |
| 2583 | return future.awaited_by_add(waiter, vm); |
| 2584 | } |
| 2585 | Ok(()) |
| 2586 | } |
| 2587 | |
| 2588 | #[pyfunction] |
| 2589 | fn future_discard_from_awaited_by( |
no test coverage detected