summaryrefslogtreecommitdiffstats
path: root/src/parse.rs
diff options
context:
space:
mode:
authorDan Davison <dandavison7@gmail.com>2019-07-24 21:32:30 -0400
committerDan Davison <dandavison7@gmail.com>2019-07-25 02:00:46 -0400
commita7accf6b8800f101a141e82a457c2e5e92cda0f1 (patch)
tree5ee24abdbefbcbb234dff25c8994c7925389924f /src/parse.rs
parent3fb6b9c2d2cea301cdaca38a3d2c26c3e2fd1ca7 (diff)
Use original strings without copying when adding ansi color codes
Diffstat (limited to 'src/parse.rs')
-rw-r--r--src/parse.rs9
1 files changed, 4 insertions, 5 deletions
diff --git a/src/parse.rs b/src/parse.rs
index 981293d4..7485b9c9 100644
--- a/src/parse.rs
+++ b/src/parse.rs
@@ -44,7 +44,7 @@ pub fn get_file_change_description_from_file_paths(minus_file: &str, plus_file:
/// Given input like
/// "@@ -74,15 +74,14 @@ pub fn delta("
/// Return " pub fn delta("
-pub fn parse_hunk_metadata(line: &str) -> (String, String) {
+pub fn parse_hunk_metadata(line: &str) -> (&str, &str) {
let mut iter = line.split("@@").skip(1);
let line_number = iter
.next()
@@ -54,9 +54,8 @@ pub fn parse_hunk_metadata(line: &str) -> (String, String) {
.next()
.and_then(|s| s.split(",").next())
})
- .unwrap_or("")
- .to_string();
- let code_fragment = iter.next().unwrap_or("").to_string();
+ .unwrap_or("");
+ let code_fragment = iter.next().unwrap_or("");
(code_fragment, line_number)
}
@@ -107,7 +106,7 @@ mod tests {
fn test_parse_hunk_metadata() {
assert_eq!(
parse_hunk_metadata("@@ -74,15 +75,14 @@ pub fn delta(\n"),
- (" pub fn delta(\n".to_string(), "75".to_string())
+ (" pub fn delta(\n", "75")
);
}
}