@@ -124,10 +124,7 @@ fn thread_picker(
124 callback_fn(editor, &threads[0]);
124 callback_fn(editor, &threads[0]);
127− let debugger = match &mut editor.debugger {
127+ let debugger = debugger!(editor);
128− Some(debugger) => debugger,
132 let thread_states = debugger.thread_states.clone();
129 let thread_states = debugger.thread_states.clone();
133 let picker = FilePicker::new(
130 let picker = FilePicker::new(
@@ -535,10 +532,7 @@ pub fn dap_continue(cx: &mut Context) {
536pub fn dap_pause(cx: &mut Context) {
533pub fn dap_pause(cx: &mut Context) {
537 thread_picker(cx, |editor, thread| {
534 thread_picker(cx, |editor, thread| {
538− let debugger = match &mut editor.debugger {
535+ let debugger = debugger!(editor);
539− Some(debugger) => debugger,
542 let request = debugger.pause(thread.id);
536 let request = debugger.pause(thread.id);
543 // NOTE: we don't need to set active thread id here because DAP will emit a "stopped" event
537 // NOTE: we don't need to set active thread id here because DAP will emit a "stopped" event
544 if let Err(e) = block_on(request) {
538 if let Err(e) = block_on(request) {
@@ -670,7 +664,7 @@ pub fn dap_enable_exceptions(cx: &mut Context) {
670pub fn dap_disable_exceptions(cx: &mut Context) {
664pub fn dap_disable_exceptions(cx: &mut Context) {
671 let debugger = debugger!(cx.editor);
665 let debugger = debugger!(cx.editor);
673− if let Err(e) = block_on(debugger.set_exception_breakpoints(vec![])) {
667+ if let Err(e) = block_on(debugger.set_exception_breakpoints(Vec::new())) {
674 cx.editor
668 cx.editor
675 .set_error(format!("Failed to set up exception breakpoints: {}", e));
669 .set_error(format!("Failed to set up exception breakpoints: {}", e));
@@ -787,10 +781,7 @@ pub fn dap_switch_stack_frame(cx: &mut Context) {
788 |frame| frame.name.clone().into(), // TODO: include thread_states in the label
782 |frame| frame.name.clone().into(), // TODO: include thread_states in the label
789 move |cx, frame, _action| {
783 move |cx, frame, _action| {
790− let debugger = match &mut cx.editor.debugger {
784+ let debugger = debugger!(cx.editor);
791− Some(debugger) => debugger,
794 // TODO: this should be simpler to find
785 // TODO: this should be simpler to find
795 let pos = debugger.stack_frames[&thread_id]
786 let pos = debugger.stack_frames[&thread_id]