## Uses of Interface
org.eclipse.emf.compare.Match

Packages that use Match
org.eclipse.emf.compare
org.eclipse.emf.compare.diff
org.eclipse.emf.compare.ide.ui.internal.contentmergeviewer.tree.provider
org.eclipse.emf.compare.impl
org.eclipse.emf.compare.internal
org.eclipse.emf.compare.internal.conflict
org.eclipse.emf.compare.internal.postprocessor.factories
org.eclipse.emf.compare.internal.spec
org.eclipse.emf.compare.internal.utils
org.eclipse.emf.compare.match.eobject
org.eclipse.emf.compare.match.impl
org.eclipse.emf.compare.merge
org.eclipse.emf.compare.provider.spec
org.eclipse.emf.compare.rcp.ui.internal.contentmergeviewer.accessor.impl
org.eclipse.emf.compare.rcp.ui.internal.mergeviewer.item.impl
org.eclipse.emf.compare.rcp.ui.internal.structuremergeviewer.groups.impl
org.eclipse.emf.compare.rcp.ui.internal.structuremergeviewer.match
org.eclipse.emf.compare.rcp.ui.internal.structuremergeviewer.nodes
org.eclipse.emf.compare.rcp.ui.internal.util
org.eclipse.emf.compare.util
org.eclipse.emf.compare.utils

### Uses of Match in org.eclipse.emf.compare

Methods in org.eclipse.emf.compare that return Match
`Match` CompareFactory.`createMatch()` Returns a new object of class 'Match'
`Match` Diff.`getMatch()` Returns the value of the 'Match' container reference.
`Match` Comparison.`getMatch(EObject element)` Finds and return the Match for the given EObject.

Methods in org.eclipse.emf.compare that return types with arguments of type Match
`Iterable<Match>` Match.`getAllSubmatches()` Finds and returns all matches contained in this Match and its children, recursively
`EList<Match>` Comparison.`getMatches()` Returns the value of the 'Matches' containment reference list.
`EList<Match>` Match.`getSubmatches()` Returns the value of the 'Submatches' containment reference list.

Methods in org.eclipse.emf.compare with parameters of type Match
`void` Diff.`setMatch(Match value)` Sets the value of the '`Match`' reference

### Uses of Match in org.eclipse.emf.compare.diff

Methods in org.eclipse.emf.compare.diff that return types with arguments of type Match
`protected static com.google.common.base.Optional<Match>` DefaultDiffEngine.`getMatchIfPresent(Comparison comparison, List<Object> list, int index)` This will be used in order to read the LCS synchronously with the iteration on its target lists' values.

Methods in org.eclipse.emf.compare.diff with parameters of type Match
`void` IDiffProcessor.`attributeChange(Match match, EAttribute attribute, Object value, DifferenceKind kind, DifferenceSource source)` This will be called whenever the diff engine detected a difference for a given attribute value.
`void` DiffBuilder.`attributeChange(Match match, EAttribute attribute, Object value, DifferenceKind kind, DifferenceSource source)` This will be called whenever the diff engine detected a difference for a given attribute value.
`protected void` DefaultDiffEngine.`checkForDifferences(Match match, Monitor monitor)` Checks the given `Match`'s sides for potential differences.
`protected void` DefaultDiffEngine.`checkResourceAttachment(Match match, Monitor monitor)` Checks whether the given `Match`'s sides have changed resources.
`protected void` DefaultDiffEngine.`computeContainmentDifferencesThreeWay(Match match, EReference reference, boolean checkOrdering)` Computes the difference between the sides of the given `match` for the given containment `reference`.
`protected void` DefaultDiffEngine.`computeContainmentDifferencesTwoWay(Match match, EReference reference, boolean checkOrdering)` Computes the difference between the sides of the given `match` for the given containment `reference`.
`protected void` DefaultDiffEngine.`computeDifferences(Match match, EAttribute attribute, boolean checkOrdering)` Computes the difference between the sides of the given `match` for the given `attribute`.
`protected void` DefaultDiffEngine.`computeDifferences(Match match, EReference reference, boolean checkOrdering)` Computes the difference between the sides of the given `match` for the given `reference`.
`protected void` DefaultDiffEngine.`computeMultiValuedFeatureDifferencesThreeWay(Match match, EStructuralFeature feature, boolean checkOrdering)` Computes the difference between the sides of the given `match` for the given multi-valued `feature`.
`protected void` DefaultDiffEngine.`computeMultiValuedFeatureDifferencesTwoWay(Match match, EStructuralFeature feature, boolean checkOrdering)` Computes the difference between the sides of the given `match` for the given multi-valued `feature`.
`protected void` DefaultDiffEngine.`computeSingleValuedAttributeDifferences(Match match, EAttribute attribute)` Computes the difference between the sides of the given `match` for the given single-valued `attribute`.
`protected void` DefaultDiffEngine.`computeSingleValuedReferenceDifferencesThreeWay(Match match, EReference reference)` Computes the difference between the sides of the given `match` for the given single-valued `reference`.
`protected void` DefaultDiffEngine.`computeSingleValuedReferenceDifferencesTwoWay(Match match, EReference reference)` Computes the difference between the sides of the given `match` for the given single-valued `reference`.
`protected void` DefaultDiffEngine.`createContainmentDifferences(Match match, EReference reference, boolean checkOrdering, List<Object> values, List<Object> lcsWithOrigin, DifferenceSource side)` Called from `DefaultDiffEngine.computeContainmentDifferencesThreeWay(Match, EReference, boolean)` once our LCS have been computed and we know what really changed.
`protected void` DefaultDiffEngine.`featureChange(Match match, EStructuralFeature feature, Object value, DifferenceKind kind, DifferenceSource source)` Delegates to the diff processor to create the specified feature change.
`void` IDiffProcessor.`featureMapChange(Match match, EAttribute attribute, Object value, DifferenceKind kind, DifferenceSource source)` This will be called whenever the diff engine detected a difference for a given attribute value.
`void` DiffBuilder.`featureMapChange(Match match, EAttribute attribute, Object value, DifferenceKind kind, DifferenceSource source)` This will be called whenever the diff engine detected a difference for a given attribute value.
`Iterator<EAttribute>` FeatureFilter.`getAttributesToCheck(Match match)` The diff engine expects this to return the set of attributes that need to be checked for differences for the given `Match` element.
`Iterator<EReference>` FeatureFilter.`getReferencesToCheck(Match match)` The diff engine expects this to return the set of references that need to be checked for differences for the given `Match` element.
`protected boolean` FeatureFilter.`isIgnoredReference(Match match, EReference reference)` This will be used by `FeatureFilter.getReferencesToCheck(Match)` in order to determine whether a given reference should be ignored.
`void` IDiffProcessor.`referenceChange(Match match, EReference reference, EObject value, DifferenceKind kind, DifferenceSource source)` This will be called whenever the Diff engine detected a difference for a given reference value.
`void` DiffBuilder.`referenceChange(Match match, EReference reference, EObject value, DifferenceKind kind, DifferenceSource source)` This will be called whenever the Diff engine detected a difference for a given reference value.
`protected boolean` FeatureFilter.`referenceIsSet(EReference reference, Match match)` Checks whether the given reference is set on at least one of the three sides of the given match.
`void` IDiffProcessor.`resourceAttachmentChange(Match match, String uri, DifferenceKind kind, DifferenceSource source)` This will be called whenever the diff engine detected the addition (or removal) of a root in a given Resource.
`void` DiffBuilder.`resourceAttachmentChange(Match match, String uri, DifferenceKind kind, DifferenceSource source)` This will be called whenever the diff engine detected the addition (or removal) of a root in a given Resource.

### Uses of Match in org.eclipse.emf.compare.ide.ui.internal.contentmergeviewer.tree.provider

Methods in org.eclipse.emf.compare.ide.ui.internal.contentmergeviewer.tree.provider with parameters of type Match
`protected IMergeViewerItem` TreeMergeViewerItemContentProvider.`createMergeViewerItem(Comparison comparison, Diff diff, Match match, IMergeViewer.MergeViewerSide side, AdapterFactory adapterFactory)` Creates the `IMergeViewerItem` from the given data.

### Uses of Match in org.eclipse.emf.compare.impl

Classes in org.eclipse.emf.compare.impl that implement Match
`class` `MatchImpl` An implementation of the model object 'Match'

Fields in org.eclipse.emf.compare.impl with type parameters of type Match
`protected EList<Match>` ComparisonImpl.`matches` The cached value of the '`Matches`' containment reference list.
`protected EList<Match>` MatchImpl.`submatches` The cached value of the '`Submatches`' containment reference list

Methods in org.eclipse.emf.compare.impl that return Match
`Match` DiffImpl.`basicGetMatch()`
`Match` CompareFactoryImpl.`createMatch()`
`Match` DiffImpl.`getMatch()`
`Match` ComparisonImpl.`getMatch(EObject element)`

Methods in org.eclipse.emf.compare.impl that return types with arguments of type Match
`Iterable<Match>` MatchImpl.`getAllSubmatches()`
`EList<Match>` ComparisonImpl.`getMatches()`
`EList<Match>` MatchImpl.`getSubmatches()`

Methods in org.eclipse.emf.compare.impl with parameters of type Match
`void` DiffImpl.`setMatch(Match newMatch)`

### Uses of Match in org.eclipse.emf.compare.internal

Methods in org.eclipse.emf.compare.internal that return types with arguments of type Match
`protected Iterator<? extends Match>` SubMatchIterator.`getChildren(Object obj)`
`protected Iterator<? extends Match>` SubMatchIterator.`getChildren(Object obj)`
`Iterator<Match>` SubMatchIterable.`iterator()`
`Iterator<Match>` SubMatchIterable.`iterator()`

Constructors in org.eclipse.emf.compare.internal with parameters of type Match
Constructor and Description
`SubMatchIterable(Match match)` Constructs an iterable given the root of its tree.
`SubMatchIterable(Match match)` Constructs an iterable given the root of its tree.
`SubMatchIterator(Match start)` Constructs an iterator given the root of its tree.
`SubMatchIterator(Match start)` Constructs an iterator given the root of its tree.

### Uses of Match in org.eclipse.emf.compare.internal.conflict

Methods in org.eclipse.emf.compare.internal.conflict that return types with arguments of type Match
`protected com.google.common.base.Predicate<? super Match>` AbstractConflictSearch.`isContainmentDelete()` This predicate will be `true` for any Match which represents a containment deletion.

Methods in org.eclipse.emf.compare.internal.conflict with parameters of type Match
`Collection<ReferenceChange>` ComparisonIndex.`getReferenceChangesByValueMatch(Match valueMatch)` The indexed `ReferenceChange`s whose value is in the given Match.

Method parameters in org.eclipse.emf.compare.internal.conflict with type arguments of type Match
`void` DiffTreeIterator.`setPruningFilter(com.google.common.base.Predicate<? super Match> pruningFilter)` Sets the pruning filter for this iterator.

Constructors in org.eclipse.emf.compare.internal.conflict with parameters of type Match
Constructor and Description
`DiffTreeIterator(Match start)` Constructs our iterator given the root of the Match tree to iterate over.

### Uses of Match in org.eclipse.emf.compare.internal.postprocessor.factories

Methods in org.eclipse.emf.compare.internal.postprocessor.factories that return Match
`Match` IChangeFactory.`getParentMatch(Diff input)` Returns the match in which the difference will be added.
`Match` AbstractChangeFactory.`getParentMatch(Diff input)` Returns the match in which the difference will be added.

### Uses of Match in org.eclipse.emf.compare.internal.spec

Classes in org.eclipse.emf.compare.internal.spec that implement Match
`class` `MatchSpec` This specialization of the `MatchImpl` class allows us to define the derived features and operations implementations.

Methods in org.eclipse.emf.compare.internal.spec that return Match
`Match` ReferenceChangeSpec.`basicGetMatch()`
`Match` ResourceLocationChangeSpec.`basicGetMatch()`
`Match` ResourceAttachmentChangeSpec.`basicGetMatch()`
`Match` FeatureMapChangeSpec.`basicGetMatch()`
`Match` DiffSpec.`basicGetMatch()`
`Match` AttributeChangeSpec.`basicGetMatch()`
`Match` ComparisonSpec.`getMatch(EObject element)` Finds and return the Match for the given EObject.

Methods in org.eclipse.emf.compare.internal.spec that return types with arguments of type Match
`Iterable<Match>` MatchSpec.`getAllSubmatches()` Finds and returns all matches contained in this Match and its children, recursively

Methods in org.eclipse.emf.compare.internal.spec with parameters of type Match
`void` ReferenceChangeSpec.`setMatch(Match newMatch)` Sets the value of the '`Match`' reference
`void` ResourceLocationChangeSpec.`setMatch(Match newMatch)` Sets the value of the '`Match`' reference
`void` ResourceAttachmentChangeSpec.`setMatch(Match newMatch)` Sets the value of the '`Match`' reference
`void` FeatureMapChangeSpec.`setMatch(Match newMatch)` Sets the value of the '`Match`' reference
`void` DiffSpec.`setMatch(Match newMatch)` Sets the value of the '`Match`' reference
`void` AttributeChangeSpec.`setMatch(Match newMatch)` Sets the value of the '`Match`' reference

### Uses of Match in org.eclipse.emf.compare.internal.utils

Methods in org.eclipse.emf.compare.internal.utils with parameters of type Match
`static EObject` ComparisonUtil.`getExpectedSide(Match match, DifferenceSource source, boolean mergeRightToLeft)` Determines the side of the given `Match` which represents the model state the other side will be changed to.

### Uses of Match in org.eclipse.emf.compare.match.eobject

Methods in org.eclipse.emf.compare.match.eobject that return types with arguments of type Match
`protected Set<Match>` IdentifierEObjectMatcher.`matchPerId(Iterator<? extends EObject> leftEObjects, Iterator<? extends EObject> rightEObjects, Iterator<? extends EObject> originEObjects, List<EObject> leftEObjectsNoID, List<EObject> rightEObjectsNoID, List<EObject> originEObjectsNoID)` Matches the EObject per ID.

### Uses of Match in org.eclipse.emf.compare.match.impl

Classes in org.eclipse.emf.compare.match.impl that implement Match
`class` `NotLoadedFragmentMatch` The not loaded fragment match.

Methods in org.eclipse.emf.compare.match.impl that return Match
`Match` NotLoadedFragmentMatch.`getFirstMatchChild()` Get the first match child.

Methods in org.eclipse.emf.compare.match.impl that return types with arguments of type Match
`Collection<Match>` NotLoadedFragmentMatch.`getChildren()` Get children.

Constructors in org.eclipse.emf.compare.match.impl with parameters of type Match
Constructor and Description
`NotLoadedFragmentMatch(Match child)` Constructor.

Constructor parameters in org.eclipse.emf.compare.match.impl with type arguments of type Match
Constructor and Description
`NotLoadedFragmentMatch(Collection<Match> children)` Constructor.

### Uses of Match in org.eclipse.emf.compare.merge

Methods in org.eclipse.emf.compare.merge with parameters of type Match
`protected URI` ResourceAttachmentChangeMerger.`computeTargetURI(Match match, boolean rightToLeft)` Computes the URI of the "target" resource.
`protected Resource` ResourceAttachmentChangeMerger.`findOrCreateTargetResource(Match match, boolean rightToLeft)` This will try and locate the "target" resource of this merge in the current comparison.

### Uses of Match in org.eclipse.emf.compare.provider.spec

Methods in org.eclipse.emf.compare.provider.spec with parameters of type Match
`Object` OverlayImageProvider.`getComposedImage(Match match, Object imageToCompose)` Returns a composed image with the image of the given match the appropriate overlay.

### Uses of Match in org.eclipse.emf.compare.rcp.ui.internal.contentmergeviewer.accessor.impl

Constructors in org.eclipse.emf.compare.rcp.ui.internal.contentmergeviewer.accessor.impl with parameters of type Match
Constructor and Description
`MatchAccessor(AdapterFactory adapterFactory, Match match, Diff diff, IMergeViewer.MergeViewerSide side)` Creates a new object wrapping the given `eObject`.
`MatchAccessor(AdapterFactory adapterFactory, Match match, IMergeViewer.MergeViewerSide side)` Creates a new object wrapping the given `eObject`.

### Uses of Match in org.eclipse.emf.compare.rcp.ui.internal.mergeviewer.item.impl

Constructors in org.eclipse.emf.compare.rcp.ui.internal.mergeviewer.item.impl with parameters of type Match
Constructor and Description
`Container(Comparison comparison, Diff diff, Match match, IMergeViewer.MergeViewerSide side, AdapterFactory adapterFactory)` Deprecated.
`MergeViewerItem(Comparison comparison, Diff diff, Match match, IMergeViewer.MergeViewerSide side, AdapterFactory adapterFactory)`
`ResourceAttachmentChangeMergeViewerItem(Comparison comparison, Diff diff, Match match, IMergeViewer.MergeViewerSide side, AdapterFactory adapterFactory)`

### Uses of Match in org.eclipse.emf.compare.rcp.ui.internal.structuremergeviewer.groups.impl

Methods in org.eclipse.emf.compare.rcp.ui.internal.structuremergeviewer.groups.impl that return Match
`protected Match` BasicDifferenceGroupImpl.`getTargetMatch(Diff diff)` Provide the Match that should directly contain the given diff.

Methods in org.eclipse.emf.compare.rcp.ui.internal.structuremergeviewer.groups.impl with parameters of type Match
`protected MatchNode` BasicDifferenceGroupImpl.`buildTree(Match match)` Compute a tree for the given match.
`protected MatchNode` BasicDifferenceGroupImpl.`createMatchNode(Match match)` Create a match node.

### Uses of Match in org.eclipse.emf.compare.rcp.ui.internal.structuremergeviewer.match

Methods in org.eclipse.emf.compare.rcp.ui.internal.structuremergeviewer.match with parameters of type Match
`protected void` MatchOfContainmentReferenceChangeProcessor.`checkForMatchRelatedToContainmentReferenceChange(Match match)` Check if the given `Match` is related to a containment ReferenceChange.

### Uses of Match in org.eclipse.emf.compare.rcp.ui.internal.structuremergeviewer.nodes

Methods in org.eclipse.emf.compare.rcp.ui.internal.structuremergeviewer.nodes that return Match
`Match` MatchNode.`getMatch()` Getter for the match represented by this TreeNode.

Constructors in org.eclipse.emf.compare.rcp.ui.internal.structuremergeviewer.nodes with parameters of type Match
Constructor and Description
`MatchNode(Match match)` Constructor.

### Uses of Match in org.eclipse.emf.compare.rcp.ui.internal.util

Methods in org.eclipse.emf.compare.rcp.ui.internal.util that return types with arguments of type Match
`static Collection<Match>` ResourceUIUtil.`getChildrenMatchWithNotLoadedParent(Comparison comparison, Match match, IMergeViewer.MergeViewerSide side)` Filters, from the root matches of the given comparison, those who will children matches of the given match if all fragments of the whole models involved in comparison had been loaded, for the given side of the comparison.
`static Collection<Match>` ResourceUIUtil.`getNotLoadedFragmentMatches(Collection<IMergeViewerItem> items)` Get from the given list of `IMergeViewerItem`s, the NotLoadedFragmentMatchs.

Methods in org.eclipse.emf.compare.rcp.ui.internal.util with parameters of type Match
`static IMergeViewerItem` ResourceUIUtil.`createItemForNotLoadedFragmentMatch(Match match, IMergeViewer.MergeViewerSide side, Comparison comparison, AdapterFactory adapterFactory)` Constructs a `NotLoadedFragmentMatch` from the given `Match` and then return the `IMergeViewerItem` corresponding to this NotLoadedFragmentMatch.
`static EObject` MergeViewerUtil.`getBestSideEObject(Match match, IMergeViewer.MergeViewerSide side)`
`static Collection<Match>` ResourceUIUtil.`getChildrenMatchWithNotLoadedParent(Comparison comparison, Match match, IMergeViewer.MergeViewerSide side)` Filters, from the root matches of the given comparison, those who will children matches of the given match if all fragments of the whole models involved in comparison had been loaded, for the given side of the comparison.
`static ResourceSet` ResourceUIUtil.`getDataResourceSet(Match match)` Get the Resource's ResourceSet of the data associated to the given Match.
`static ResourceSet` ResourceUIUtil.`getDataResourceSet(Match match, IMergeViewer.MergeViewerSide side)` Get the Resource's ResourceSet of the data associated to the given Match, and for the given side of the comparison.
`static URI` ResourceUIUtil.`getDataURI(Match match)` Get the Resource's URI of the data associated to the given Match
`static URI` ResourceUIUtil.`getDataURI(Match match, IMergeViewer.MergeViewerSide side)` Get the Resource's URI of the data associated to the given Match, and for the given side of the comparison. .
`static EObject` MergeViewerUtil.`getEObject(Match match, IMergeViewer.MergeViewerSide side)`
`static List<?>` MergeViewerUtil.`getFeatureValues(Match match, EStructuralFeature feature, IMergeViewer.MergeViewerSide side)`
`static TreeNode` ResourceUIUtil.`getTreeNode(Collection<TreeNode> nodes, Match match)` Search from the given list of TreeNodes (and recursively on its children), the one that is associated to the given Match.
`static boolean` ResourceUIUtil.`isFragment(Match rootMatch, IMergeViewer.MergeViewerSide side)` Check if the given match is a root match of its comparison model and is a fragment.

Method parameters in org.eclipse.emf.compare.rcp.ui.internal.util with type arguments of type Match
`static Collection<URI>` ResourceUIUtil.`getDataURIs(Collection<Match> matches, IMergeViewer.MergeViewerSide side)` Get the Resource's URIs of the data associated to the given list of Matches.

### Uses of Match in org.eclipse.emf.compare.util

Methods in org.eclipse.emf.compare.util with parameters of type Match
`T` CompareSwitch.`caseMatch(Match object)` Returns the result of interpreting the object as an instance of 'Match'

### Uses of Match in org.eclipse.emf.compare.utils

Methods in org.eclipse.emf.compare.utils that return Match
`protected Match` EqualityHelper.`getMatch(EObject o)` Returns the match of this EObject if any, `null` otherwise.

Methods in org.eclipse.emf.compare.utils with parameters of type Match
`static int` MatchUtil.`computeIndex(Match match, EStructuralFeature feature, Object value, DifferenceSource side)` Compute the index of an object in the list of elements of a given match+feature on a given side.
`static Iterable<Diff>` MatchUtil.`findAddOrDeleteContainmentDiffs(Match match)` Get the potential ReferenceChanges that represent add/delete containment differences in the parent Match of the given Match.
`static EObject` MatchUtil.`getMatchedObject(Match m, DifferenceSource side)` Get the object matched by a Match on a given side.
`static boolean` MatchUtil.`hasDeleteDiff(Match match, EStructuralFeature feature, Object value)` Checks whether the given `value` has been deleted from the given `feature` of `match` .
`static boolean` MatchUtil.`hasDiff(Match match, EStructuralFeature feature, Object value)` Checks whether the given `match` presents a difference of any kind on the given `feature`'s `value`.
`static boolean` MatchUtil.`matchingIndices(Match match, EStructuralFeature feature, Object value1, Object value2)` This will be used whenever we check for conflictual MOVEs in order to determine whether we have a pseudo conflict or a real conflict.