LibDiff: Port Diff::parse_hunks from DeprecatedString to StringView
This commit is contained in:
parent
c60150da15
commit
9dc92f19b8
Notes:
sideshowbarker
2024-07-17 03:00:02 +09:00
Author: https://github.com/shannonbooth Commit: https://github.com/SerenityOS/serenity/commit/9dc92f19b8 Pull-request: https://github.com/SerenityOS/serenity/pull/19592 Reviewed-by: https://github.com/kennethmyhra ✅
2 changed files with 6 additions and 5 deletions
|
@ -9,9 +9,9 @@
|
|||
|
||||
namespace Diff {
|
||||
|
||||
ErrorOr<Vector<Hunk>> parse_hunks(DeprecatedString const& diff)
|
||||
ErrorOr<Vector<Hunk>> parse_hunks(StringView diff)
|
||||
{
|
||||
Vector<DeprecatedString> diff_lines = diff.split('\n');
|
||||
Vector<StringView> diff_lines = diff.split_view('\n');
|
||||
if (diff_lines.is_empty())
|
||||
return Vector<Hunk> {};
|
||||
|
||||
|
@ -41,12 +41,12 @@ ErrorOr<Vector<Hunk>> parse_hunks(DeprecatedString const& diff)
|
|||
hunk.target_start_line = current_location.target_start_line;
|
||||
|
||||
while (line_index < diff_lines.size() && diff_lines[line_index][0] == '-') {
|
||||
TRY(hunk.removed_lines.try_append(diff_lines[line_index].substring(1, diff_lines[line_index].length() - 1)));
|
||||
TRY(hunk.removed_lines.try_append(diff_lines[line_index].substring_view(1, diff_lines[line_index].length() - 1)));
|
||||
current_location.apply_offset(1, HunkLocation::LocationType::Original);
|
||||
++line_index;
|
||||
}
|
||||
while (line_index < diff_lines.size() && diff_lines[line_index][0] == '+') {
|
||||
TRY(hunk.added_lines.try_append(diff_lines[line_index].substring(1, diff_lines[line_index].length() - 1)));
|
||||
TRY(hunk.added_lines.try_append(diff_lines[line_index].substring_view(1, diff_lines[line_index].length() - 1)));
|
||||
current_location.apply_offset(1, HunkLocation::LocationType::Target);
|
||||
++line_index;
|
||||
}
|
||||
|
|
|
@ -7,6 +7,7 @@
|
|||
#pragma once
|
||||
|
||||
#include <AK/DeprecatedString.h>
|
||||
#include <AK/StringView.h>
|
||||
#include <AK/Vector.h>
|
||||
|
||||
namespace Diff {
|
||||
|
@ -32,6 +33,6 @@ struct Hunk {
|
|||
Vector<DeprecatedString> added_lines;
|
||||
};
|
||||
|
||||
ErrorOr<Vector<Hunk>> parse_hunks(DeprecatedString const& diff);
|
||||
ErrorOr<Vector<Hunk>> parse_hunks(StringView diff);
|
||||
HunkLocation parse_hunk_location(StringView location_line);
|
||||
};
|
||||
|
|
Loading…
Add table
Reference in a new issue