public class Edit extends Object
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) at
beginA.
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).
| Modifier and Type | Class and Description |
|---|---|
static class |
Edit.Type
Type of edit
|
| Constructor and Description |
|---|
Edit(int as,
int bs)
Create a new empty edit.
|
Edit(int as,
int ae,
int bs,
int be)
Create a new edit.
|
| Modifier and Type | Method and 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(Object o) |
void |
extendA()
Increase
getEndA() by 1. |
void |
extendB()
Increase
getEndB() by 1. |
int |
getBeginA()
Get start point in sequence A
|
int |
getBeginB()
Get start point in sequence B
|
int |
getEndA()
Get end point in sequence A
|
int |
getEndB()
Get end point in sequence B
|
int |
getLengthA()
Get length of the region in A
|
int |
getLengthB()
Get length of the region in B
|
Edit.Type |
getType()
Get type
|
int |
hashCode() |
boolean |
isEmpty()
Whether edit is empty
|
void |
shift(int amount)
Move the edit region by the specified amount.
|
void |
swap()
Swap A and B, so the edit goes the other direction.
|
String |
toString() |
public Edit(int as,
int bs)
as - beginA: start and end of region in sequence A; 0 based.bs - beginB: start and end of region in sequence B; 0 based.public Edit(int as,
int ae,
int bs,
int be)
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.public final Edit.Type getType()
public final boolean isEmpty()
true if the edit is empty (lengths of both a and b is
zero)public final int getBeginA()
public final int getEndA()
public final int getBeginB()
public final int getEndB()
public final int getLengthA()
public final int getLengthB()
public final void shift(int amount)
amount - the region is shifted by this amount, and can be positive or
negative.public final Edit before(Edit cut)
cut - the cut point. The beginning A and B points are used as the
end points of the returned edit.this edit that occurs
before cut starts.public final Edit after(Edit cut)
cut - the cut point. The ending A and B points are used as the
starting points of the returned edit.this edit that occurs
after cut ends.public void extendA()
getEndA() by 1.public void extendB()
getEndB() by 1.public void swap()
Copyright © 2019 Eclipse JGit Project. All rights reserved.