aboutsummaryrefslogtreecommitdiff
path: root/helix-dap
diff options
context:
space:
mode:
authorGokul Soumya2022-07-02 11:21:27 +0000
committerGitHub2022-07-02 11:21:27 +0000
commit6e2aaed5c2cbcedc9ee4e225510cae4f357888aa (patch)
treebddbecd95c9b3df5cb207736f1d0cbdeb56c1c3c /helix-dap
parent290b3ebbbe0c365eee436b9de9d6d6fc2b4339e9 (diff)
Reuse menu::Item trait in picker (#2814)
* Refactor menu::Item to accomodate external state Will be useful for storing editor state when reused by pickers. * Add some type aliases for readability * Reuse menu::Item trait in picker This opens the way for merging the menu and picker code in the future, since a picker is essentially a menu + prompt. More excitingly, this change will also allow aligning items in the picker, which would be useful (for example) in the command palette for aligning the descriptions to the left and the keybinds to the right in two separate columns. The item formatting of each picker has been kept as is, even though there is room for improvement now that we can format the data into columns, since that is better tackled in a separate PR. * Rename menu::Item::EditorData to Data * Call and inline filter_text() in sort_text() completion * Rename diagnostic picker's Item::Data
Diffstat (limited to 'helix-dap')
-rw-r--r--helix-dap/src/client.rs2
-rw-r--r--helix-dap/src/types.rs2
2 files changed, 3 insertions, 1 deletions
diff --git a/helix-dap/src/client.rs b/helix-dap/src/client.rs
index 9498c64c..371cf303 100644
--- a/helix-dap/src/client.rs
+++ b/helix-dap/src/client.rs
@@ -34,7 +34,7 @@ pub struct Client {
pub caps: Option<DebuggerCapabilities>,
// thread_id -> frames
pub stack_frames: HashMap<ThreadId, Vec<StackFrame>>,
- pub thread_states: HashMap<ThreadId, String>,
+ pub thread_states: ThreadStates,
pub thread_id: Option<ThreadId>,
/// Currently active frame for the current thread.
pub active_frame: Option<usize>,
diff --git a/helix-dap/src/types.rs b/helix-dap/src/types.rs
index 2c3df9c3..fd8456a4 100644
--- a/helix-dap/src/types.rs
+++ b/helix-dap/src/types.rs
@@ -14,6 +14,8 @@ impl std::fmt::Display for ThreadId {
}
}
+pub type ThreadStates = HashMap<ThreadId, String>;
+
pub trait Request {
type Arguments: serde::de::DeserializeOwned + serde::Serialize;
type Result: serde::de::DeserializeOwned + serde::Serialize;