Package org.eclipse.emf.compare

## Interface ReferenceChange

All Superinterfaces:
  `Diff`, `EObject`, `Notifier`

All Known Implementing Classes:
  `ReferenceChangeImpl`, `ReferenceChangeSpec`

    public interface ReferenceChange
    extends Diff

A representation of the model object 'Reference Change'. This particular kind of difference will be used to describe changes within a reference, whether the feature is multi-valued or not. In the case of a MOVE difference, this could actually mean two things : either the value has been moved from one index to another (moving the value at another position of the same reference), or the value has been moved from one container to another. This second case will only happen with containment references.

The following features are supported:

- `Reference`
- `Value`

See Also:
  `ComparePackage.getReferenceChange()`
Generated:

### Field Summary

Fields
`static String` `copyright`

### Method Summary

All Methods Instance Methods Abstract Methods
`EReference` `getReference()` Returns the value of the 'Reference' reference.
`EObject` `getValue()` Returns the value of the 'Value' reference.
`void` `setReference​(EReference value)` Sets the value of the '`Reference`' reference.
`void` `setValue​(EObject value)` Sets the value of the '`Value`' reference.

### Methods inherited from interface org.eclipse.emf.compare.Diff

`copyLeftToRight, copyRightToLeft, discard, getConflict, getEquivalence, getImpliedBy, getImplies, getKind, getMatch, getPrimeRefining, getRefinedBy, getRefines, getRequiredBy, getRequires, getSource, getState, setConflict, setEquivalence, setKind, setMatch, setSource, setState`

### Methods inherited from interface org.eclipse.emf.ecore.EObject

`eAllContents, eClass, eContainer, eContainingFeature, eContainmentFeature, eContents, eCrossReferences, eGet, eGet, eInvoke, eIsProxy, eIsSet, eResource, eSet, eUnset`

### Methods inherited from interface org.eclipse.emf.common.notify.Notifier

`eAdapters, eDeliver, eNotify, eSetDeliver`

### Field Detail

#### copyright

    static final String copyright

See Also:
  Constant Field Values
Generated:

### Method Detail

#### getReference

    EReference getReference()

Returns the value of the 'Reference' reference. The reference in which "something" changed. If this difference is a MOVE from one reference to another, this will point towards the left reference.

Returns:
  the value of the 'Reference' reference.
See Also:
  `setReference(EReference)`, `ComparePackage.getReferenceChange_Reference()`
Generated:

#### setReference

    void setReference​(EReference value)

Sets the value of the '`Reference`' reference.

Parameters:
  `value` - the new value of the 'Reference' reference.
See Also:
  `getReference()`
Generated:

#### getValue

    EObject getValue()

Returns the value of the 'Value' reference. References the actual value on which a difference has been detected.

Returns:
  the value of the 'Value' reference.
See Also:
  `setValue(EObject)`, `ComparePackage.getReferenceChange_Value()`
Generated:

#### setValue

    void setValue​(EObject value)

Sets the value of the '`Value`' reference.

Parameters:
  `value` - the new value of the 'Value' reference.
See Also:
  `getValue()`
Generated: