diff options
Diffstat (limited to 'helix-dap/src/client.rs')
-rw-r--r-- | helix-dap/src/client.rs | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/helix-dap/src/client.rs b/helix-dap/src/client.rs index cfb278a9..e2531e11 100644 --- a/helix-dap/src/client.rs +++ b/helix-dap/src/client.rs @@ -316,4 +316,40 @@ impl Client { let response = self.request::<requests::Variables>(args).await?; Ok(response.variables) } + + pub async fn step_in(&mut self, thread_id: usize) -> Result<()> { + let args = requests::StepInArguments { + thread_id, + target_id: None, + granularity: None, + }; + + self.request::<requests::StepIn>(args).await + } + + pub async fn step_out(&mut self, thread_id: usize) -> Result<()> { + let args = requests::StepOutArguments { + thread_id, + granularity: None, + }; + + self.request::<requests::StepOut>(args).await + } + + pub async fn next(&mut self, thread_id: usize) -> Result<()> { + let args = requests::NextArguments { + thread_id, + granularity: None, + }; + + self.request::<requests::Next>(args).await + } + + pub async fn pause(&mut self, thread_id: usize) -> Result<()> { + let args = requests::PauseArguments { + thread_id, + }; + + self.request::<requests::Pause>(args).await + } } |