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
FieldsModifier and TypeFieldDescriptionstatic final intThree-way change constant indicating the same change in both right and left, that is only the ancestor is different.protected intprotected intstatic final intTwo-way change constant indicating two-way change (same asRIGHT)static final intThree-way change constant indicating a change in both right and left.static final intConstant indicating an unknown change kind.protected intthe kind of change: NOCHANGE, CHANGE, LEFT, RIGHT, ANCESTOR, CONFLICT, ERRORstatic final intThree-way change constant indicating a change in left.protected intprotected intstatic final intTwo-way change constant indicating no change.static final intThree-way change constant indicating a change in right.protected intprotected int -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedRangeDifference(int changeKind) Creates a new range difference with the given change kind.protectedRangeDifference(int kind, int rightStart, int rightLength, int leftStart, int leftLength) Creates a newRangeDifferencewith the given change kind and left and right ranges.protectedRangeDifference(int kind, int rightStart, int rightLength, int leftStart, int leftLength, int ancestorStart, int ancestorLength) Creates a newRangeDifferencewith the given change kind and left, right, and ancestor ranges. -
Method Summary
Modifier and TypeMethodDescriptionintReturns the end index of the entity range on the ancestor side.intReturns the number of entities on the ancestor side.intReturns the start index of the entity range on the ancestor side.booleaninthashCode()intkind()Returns the kind of difference.intleftEnd()Returns the end index of the entity range on the left side.intReturns the number of entities on the left side.intReturns the start index of the entity range on the left side.intReturns the maximum number of entities in the left, right, and ancestor sides of this range.intrightEnd()Returns the end index of the entity range on the right side.intReturns the number of entities on the right side.intReturns 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 newRangeDifferencewith 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 newRangeDifferencewith 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
-