summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTim Oram <dev@mitmaro.ca>2022-03-30 09:50:02 -0230
committerTim Oram <dev@mitmaro.ca>2022-03-30 10:08:18 -0230
commit9226762843500a37f979d92a5a3afd8fe042235a (patch)
tree5eaaa9938685405c4764da1babcfd13dc4641865
parentbbd7014f5f6b8163a9e7139e047e70b986a8bf7f (diff)
Return reference to content in edit/editable_line
-rw-r--r--src/core/src/components/edit/mod.rs2
-rw-r--r--src/core/src/components/shared/editable_line.rs4
-rw-r--r--src/core/src/modules/insert/mod.rs10
-rw-r--r--src/core/src/modules/list/mod.rs2
4 files changed, 9 insertions, 9 deletions
diff --git a/src/core/src/components/edit/mod.rs b/src/core/src/components/edit/mod.rs
index dc2563d..bc170a4 100644
--- a/src/core/src/components/edit/mod.rs
+++ b/src/core/src/components/edit/mod.rs
@@ -96,7 +96,7 @@ impl Edit {
self.finished
}
- pub(crate) fn get_content(&self) -> String {
+ pub(crate) fn get_content(&self) -> &str {
self.editable_line.get_content()
}
}
diff --git a/src/core/src/components/shared/editable_line.rs b/src/core/src/components/shared/editable_line.rs
index 1a39f13..08cef94 100644
--- a/src/core/src/components/shared/editable_line.rs
+++ b/src/core/src/components/shared/editable_line.rs
@@ -32,8 +32,8 @@ impl EditableLine {
self.cursor_position = 0;
}
- pub(crate) fn get_content(&self) -> String {
- self.content.clone()
+ pub(crate) fn get_content(&self) -> &str {
+ self.content.as_str()
}
pub(crate) const fn cursor_position(&self) -> usize {
diff --git a/src/core/src/modules/insert/mod.rs b/src/core/src/modules/insert/mod.rs
index d584590..86cc179 100644
--- a/src/core/src/modules/insert/mod.rs
+++ b/src/core/src/modules/insert/mod.rs
@@ -83,11 +83,11 @@ impl Module for Insert {
result = result.state(State::List);
if !content.is_empty() {
let line = match self.line_type {
- LineType::Exec => Line::new_exec(content.as_str()),
- LineType::Pick => Line::new_pick(content.as_str()),
- LineType::Label => Line::new_label(content.as_str()),
- LineType::Reset => Line::new_reset(content.as_str()),
- LineType::Merge => Line::new_merge(content.as_str()),
+ LineType::Exec => Line::new_exec(content),
+ LineType::Pick => Line::new_pick(content),
+ LineType::Label => Line::new_label(content),
+ LineType::Reset => Line::new_reset(content),
+ LineType::Merge => Line::new_merge(content),
// this should exit in the prompt state and never get here
LineType::Cancel => unreachable!(),
};
diff --git a/src/core/src/modules/list/mod.rs b/src/core/src/modules/list/mod.rs
index 04be023..c71665d 100644
--- a/src/core/src/modules/list/mod.rs
+++ b/src/core/src/modules/list/mod.rs
@@ -534,7 +534,7 @@ impl List {
rebase_todo.update_range(
selected_index,
selected_index,
- &EditContext::new().content(self.edit.get_content().as_str()),
+ &EditContext::new().content(self.edit.get_content()),
);
self.visual_index_start = None;
self.state = ListState::Normal;