(&mut self, frame: FrameHandle)
| 526 | } |
| 527 | |
| 528 | async fn frame_stack(&mut self, frame: FrameHandle) -> Result<Vec<WasmValue>> { |
| 529 | self.with_store(move |mut store| -> Result<Vec<WasmValue>> { |
| 530 | let n_stacks = frame |
| 531 | .num_stacks(&mut store) |
| 532 | .map_err(|_| wit::Error::InvalidFrame)?; |
| 533 | let mut result = vec![]; |
| 534 | for i in 0..n_stacks { |
| 535 | let val = frame |
| 536 | .stack(&mut store, i) |
| 537 | .expect("checked for validity above"); |
| 538 | result.push(WasmValue::new(&mut store, val)?); |
| 539 | } |
| 540 | Ok(result) |
| 541 | }) |
| 542 | .await? |
| 543 | } |
| 544 | |
| 545 | async fn frame_parent(&mut self, frame: FrameHandle) -> Result<Option<FrameHandle>> { |
| 546 | self.with_store(move |mut store| -> Result<Option<FrameHandle>> { |
no test coverage detected