Package org.eclipse.jgit.diff
Class Edit
- java.lang.Object
-
- org.eclipse.jgit.diff.Edit
-
public class Edit extends java.lang.Object
A modified region detected between two versions of roughly the same content.An edit covers the modified region only. It does not cover a common region.
Regions should be specified using 0 based notation, so add 1 to the start and end marks for line numbers in a file.
An edit where
beginA == endA && beginB < endB
is an insert edit, that is sequence B inserted the elements in region[beginB, endB)
atbeginA
.An edit where
beginA < endA && beginB == endB
is a delete edit, that is sequence B has removed the elements between[beginA, endA)
.An edit where
beginA < endA && beginB < endB
is a replace edit, that is sequence B has replaced the range of elements between[beginA, endA)
with those found in[beginB, endB)
.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
Edit.Type
Type of edit
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Edit
after(Edit cut)
Construct a new edit representing the region after cut.Edit
before(Edit cut)
Construct a new edit representing the region before cut.boolean
equals(java.lang.Object o)
void
extendA()
IncreasegetEndA()
by 1.void
extendB()
IncreasegetEndB()
by 1.int
getBeginA()
int
getBeginB()
int
getEndA()
int
getEndB()
int
getLengthA()
int
getLengthB()
Edit.Type
getType()
int
hashCode()
boolean
isEmpty()
void
swap()
Swap A and B, so the edit goes the other direction.java.lang.String
toString()
-
-
-
Constructor Detail
-
Edit
public Edit(int as, int bs)
Create a new empty edit.- Parameters:
as
- beginA: start and end of region in sequence A; 0 based.bs
- beginB: start and end of region in sequence B; 0 based.
-
Edit
public Edit(int as, int ae, int bs, int be)
Create a new edit.- Parameters:
as
- beginA: start of region in sequence A; 0 based.ae
- endA: end of region in sequence A; must be >= as.bs
- beginB: start of region in sequence B; 0 based.be
- endB: end of region in sequence B; must be > = bs.
-
-
Method Detail
-
getType
public final Edit.Type getType()
- Returns:
- the type of this region
-
isEmpty
public final boolean isEmpty()
- Returns:
- true if the edit is empty (lengths of both a and b is zero).
-
getBeginA
public final int getBeginA()
- Returns:
- start point in sequence A.
-
getEndA
public final int getEndA()
- Returns:
- end point in sequence A.
-
getBeginB
public final int getBeginB()
- Returns:
- start point in sequence B.
-
getEndB
public final int getEndB()
- Returns:
- end point in sequence B.
-
getLengthA
public final int getLengthA()
- Returns:
- length of the region in A.
-
getLengthB
public final int getLengthB()
- Returns:
- length of the region in B.
-
before
public final Edit before(Edit cut)
Construct a new edit representing the region before cut.- Parameters:
cut
- the cut point. The beginning A and B points are used as the end points of the returned edit.- Returns:
- an edit representing the slice of
this
edit that occurs beforecut
starts.
-
after
public final Edit after(Edit cut)
Construct a new edit representing the region after cut.- Parameters:
cut
- the cut point. The ending A and B points are used as the starting points of the returned edit.- Returns:
- an edit representing the slice of
this
edit that occurs aftercut
ends.
-
extendA
public void extendA()
IncreasegetEndA()
by 1.
-
extendB
public void extendB()
IncreasegetEndB()
by 1.
-
swap
public void swap()
Swap A and B, so the edit goes the other direction.
-
hashCode
public int hashCode()
- Overrides:
hashCode
in classjava.lang.Object
-
equals
public boolean equals(java.lang.Object o)
- Overrides:
equals
in classjava.lang.Object
-
toString
public java.lang.String toString()
- Overrides:
toString
in classjava.lang.Object
-
-