pub struct DiffLine {
pub line_type: DiffLineType,
pub content: String,
pub old_line_num: Option<usize>,
pub new_line_num: Option<usize>,
pub inline_changes: Vec<(usize, usize)>,
}Expand description
A single line in a diff
Fields§
§line_type: DiffLineTypeType of the line (context, addition, deletion, header)
content: StringContent of the line (without the +/- prefix)
old_line_num: Option<usize>Line number in the old file (None for additions/headers)
new_line_num: Option<usize>Line number in the new file (None for deletions/headers)
inline_changes: Vec<(usize, usize)>Character ranges for inline changes (start, end) within the line
Implementations§
Source§impl DiffLine
impl DiffLine
Sourcepub fn new(line_type: DiffLineType, content: String) -> Self
pub fn new(line_type: DiffLineType, content: String) -> Self
Create a new diff line
Sourcepub fn hunk_header(content: String) -> Self
pub fn hunk_header(content: String) -> Self
Create a hunk header line
Sourcepub fn with_inline_changes(self, changes: Vec<(usize, usize)>) -> Self
pub fn with_inline_changes(self, changes: Vec<(usize, usize)>) -> Self
Set inline changes for highlighting
Trait Implementations§
Auto Trait Implementations§
impl Freeze for DiffLine
impl RefUnwindSafe for DiffLine
impl Send for DiffLine
impl Sync for DiffLine
impl Unpin for DiffLine
impl UnwindSafe for DiffLine
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more