Class RangeDifference
java.lang.Object
org.eclipse.compare.rangedifferencer.RangeDifference
Description of a change between two or three ranges of comparable entities.
RangeDifference
objects are the elements of a compare result returned from
the RangeDifferencer
find*
methods.
Clients use these objects as they are returned from the differencer.
This class is not intended to be instantiated outside of the Compare framework.
Note: A range in the RangeDifference
object is given as a start index
and length in terms of comparable entities. However, these entity indices and counts
are not necessarily character positions. For example, if an entity represents a line
in a document, the start index would be a line number and the count would be in lines.
- See Also:
- Restriction:
- This class is not intended to be instantiated by clients.
-
Field Summary
Modifier and TypeFieldDescriptionstatic final int
Three-way change constant indicating the same change in both right and left, that is only the ancestor is different.protected int
protected int
static final int
Two-way change constant indicating two-way change (same asRIGHT
)static final int
Three-way change constant indicating a change in both right and left.static final int
Constant indicating an unknown change kind.protected int
the kind of change: NOCHANGE, CHANGE, LEFT, RIGHT, ANCESTOR, CONFLICT, ERRORstatic final int
Three-way change constant indicating a change in left.protected int
protected int
static final int
Two-way change constant indicating no change.static final int
Three-way change constant indicating a change in right.protected int
protected int
-
Constructor Summary
ModifierConstructorDescriptionprotected
RangeDifference
(int changeKind) Creates a new range difference with the given change kind.protected
RangeDifference
(int kind, int rightStart, int rightLength, int leftStart, int leftLength) Creates a newRangeDifference
with the given change kind and left and right ranges.protected
RangeDifference
(int kind, int rightStart, int rightLength, int leftStart, int leftLength, int ancestorStart, int ancestorLength) Creates a newRangeDifference
with the given change kind and left, right, and ancestor ranges. -
Method Summary
Modifier and TypeMethodDescriptionint
Returns the end index of the entity range on the ancestor side.int
Returns the number of entities on the ancestor side.int
Returns the start index of the entity range on the ancestor side.boolean
int
hashCode()
int
kind()
Returns the kind of difference.int
leftEnd()
Returns the end index of the entity range on the left side.int
Returns the number of entities on the left side.int
Returns the start index of the entity range on the left side.int
Returns the maximum number of entities in the left, right, and ancestor sides of this range.int
rightEnd()
Returns the end index of the entity range on the right side.int
Returns the number of entities on the right side.int
Returns the start index of the entity range on the right side.toString()
-
Field Details
-
NOCHANGE
public static final int NOCHANGETwo-way change constant indicating no change.- See Also:
-
CHANGE
public static final int CHANGETwo-way change constant indicating two-way change (same asRIGHT
)- See Also:
-
CONFLICT
public static final int CONFLICTThree-way change constant indicating a change in both right and left.- See Also:
-
RIGHT
public static final int RIGHTThree-way change constant indicating a change in right.- See Also:
-
LEFT
public static final int LEFTThree-way change constant indicating a change in left.- See Also:
-
ANCESTOR
public static final int ANCESTORThree-way change constant indicating the same change in both right and left, that is only the ancestor is different.- See Also:
-
ERROR
public static final int ERRORConstant indicating an unknown change kind.- See Also:
-
kind
protected int kindthe kind of change: NOCHANGE, CHANGE, LEFT, RIGHT, ANCESTOR, CONFLICT, ERROR- Since:
- org.eclipse.compare.core 3.5
-
leftStart
protected int leftStart- Since:
- org.eclipse.compare.core 3.5
-
leftLength
protected int leftLength- Since:
- org.eclipse.compare.core 3.5
-
rightStart
protected int rightStart- Since:
- org.eclipse.compare.core 3.5
-
rightLength
protected int rightLength- Since:
- org.eclipse.compare.core 3.5
-
ancestorStart
protected int ancestorStart- Since:
- org.eclipse.compare.core 3.5
-
ancestorLength
protected int ancestorLength- Since:
- org.eclipse.compare.core 3.5
-
-
Constructor Details
-
RangeDifference
protected RangeDifference(int changeKind) Creates a new range difference with the given change kind.- Parameters:
changeKind
- the kind of change- Since:
- org.eclipse.compare.core 3.5
-
RangeDifference
protected RangeDifference(int kind, int rightStart, int rightLength, int leftStart, int leftLength) Creates a newRangeDifference
with the given change kind and left and right ranges.- Parameters:
kind
- the kind of changerightStart
- start index of entity on right siderightLength
- number of entities on right sideleftStart
- start index of entity on left sideleftLength
- number of entities on left side- Since:
- org.eclipse.compare.core 3.5
-
RangeDifference
protected RangeDifference(int kind, int rightStart, int rightLength, int leftStart, int leftLength, int ancestorStart, int ancestorLength) Creates a newRangeDifference
with the given change kind and left, right, and ancestor ranges.- Parameters:
kind
- the kind of changerightStart
- start index of entity on right siderightLength
- number of entities on right sideleftStart
- start index of entity on left sideleftLength
- number of entities on left sideancestorStart
- start index of entity on ancestor sideancestorLength
- number of entities on ancestor side- Since:
- org.eclipse.compare.core 3.5
-
-
Method Details
-
kind
public int kind()Returns the kind of difference.- Returns:
- the kind of difference, one of
NOCHANGE
,CHANGE
,LEFT
,RIGHT
,ANCESTOR
,CONFLICT
,ERROR
-
ancestorStart
public int ancestorStart()Returns the start index of the entity range on the ancestor side.- Returns:
- the start index of the entity range on the ancestor side
-
ancestorLength
public int ancestorLength()Returns the number of entities on the ancestor side.- Returns:
- the number of entities on the ancestor side
-
ancestorEnd
public int ancestorEnd()Returns the end index of the entity range on the ancestor side.- Returns:
- the end index of the entity range on the ancestor side
-
rightStart
public int rightStart()Returns the start index of the entity range on the right side.- Returns:
- the start index of the entity range on the right side
-
rightLength
public int rightLength()Returns the number of entities on the right side.- Returns:
- the number of entities on the right side
-
rightEnd
public int rightEnd()Returns the end index of the entity range on the right side.- Returns:
- the end index of the entity range on the right side
-
leftStart
public int leftStart()Returns the start index of the entity range on the left side.- Returns:
- the start index of the entity range on the left side
-
leftLength
public int leftLength()Returns the number of entities on the left side.- Returns:
- the number of entities on the left side
-
leftEnd
public int leftEnd()Returns the end index of the entity range on the left side.- Returns:
- the end index of the entity range on the left side
-
maxLength
public int maxLength()Returns the maximum number of entities in the left, right, and ancestor sides of this range.- Returns:
- the maximum number of entities in the left, right, and ancestor sides of this range
-
equals
-
hashCode
public int hashCode() -
toString
-