mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-03-22 06:50:54 +07:00
IJPL-797 intellij.platform.duplicates.analysis review internal API
GitOrigin-RevId: c43f630d7ec2b4ba45aebb72269710c6a8950a80
This commit is contained in:
committed by
intellij-monorepo-bot
parent
bbeb4ab06d
commit
993ce19e72
@@ -16,18 +16,6 @@ a:com.intellij.dupLocator.AbstractMatchingVisitor
|
||||
- matchSons(com.intellij.psi.PsiElement,com.intellij.psi.PsiElement):Z
|
||||
- f:matchSonsInAnyOrder(com.intellij.psi.PsiElement,com.intellij.psi.PsiElement):Z
|
||||
- matchSonsOptionally(com.intellij.psi.PsiElement,com.intellij.psi.PsiElement):Z
|
||||
f:com.intellij.dupLocator.DefaultDuplocatorState
|
||||
- com.intellij.dupLocator.ExternalizableDuplocatorState
|
||||
- DISCARD_COST:I
|
||||
- DISTINGUISH_FUNCTIONS:Z
|
||||
- DISTINGUISH_LITERALS:Z
|
||||
- DISTINGUISH_VARIABLES:Z
|
||||
- LOWER_BOUND:I
|
||||
- <init>():V
|
||||
- distinguishLiterals():Z
|
||||
- distinguishRole(com.intellij.dupLocator.PsiElementRole):Z
|
||||
- getDiscardCost():I
|
||||
- getLowerBound():I
|
||||
com.intellij.dupLocator.DupInfo
|
||||
- a:getComment(I):java.lang.String
|
||||
- a:getFileCount(I):I
|
||||
@@ -38,11 +26,7 @@ com.intellij.dupLocator.DupInfo
|
||||
- a:getPatterns():I
|
||||
- a:getTitle(I):java.lang.String
|
||||
- a:getUsageOccurences(I):com.intellij.usageView.UsageInfo[]
|
||||
f:com.intellij.dupLocator.DupLocatorBundle
|
||||
- s:message(java.lang.String,java.lang.Object[]):java.lang.String
|
||||
- s:messagePointer(java.lang.String,java.lang.Object[]):java.util.function.Supplier
|
||||
a:com.intellij.dupLocator.DuplicatesProfile
|
||||
- sf:EP_NAME:com.intellij.openapi.extensions.ExtensionPointName
|
||||
- <init>():V
|
||||
- acceptsContentForIndexing(com.intellij.util.indexing.FileContent):Z
|
||||
- a:createVisitor(com.intellij.dupLocator.treeHash.FragmentsCollector):com.intellij.dupLocator.DuplocateVisitor
|
||||
@@ -54,6 +38,7 @@ a:com.intellij.dupLocator.DuplicatesProfile
|
||||
- getComment(com.intellij.dupLocator.DupInfo,I):java.lang.String
|
||||
- a:getDuplocatorState(com.intellij.lang.Language):com.intellij.dupLocator.DuplocatorState
|
||||
- getLanguage(com.intellij.psi.PsiElement):com.intellij.lang.Language
|
||||
- s:getProfile(java.lang.Class):com.intellij.dupLocator.DuplicatesProfile
|
||||
- getRole(com.intellij.psi.PsiElement):com.intellij.dupLocator.PsiElementRole
|
||||
- isMyDuplicate(com.intellij.dupLocator.DupInfo,I):Z
|
||||
- a:isMyLanguage(com.intellij.lang.Language):Z
|
||||
@@ -91,14 +76,6 @@ com.intellij.dupLocator.LightDuplicateProfile
|
||||
- a:process(com.intellij.lang.LighterAST,com.intellij.dupLocator.LightDuplicateProfile$Callback):V
|
||||
com.intellij.dupLocator.LightDuplicateProfile$Callback
|
||||
- a:process(I,I,com.intellij.lang.LighterAST,com.intellij.lang.LighterASTNode[]):V
|
||||
f:com.intellij.dupLocator.MultilanguageDuplocatorSettings
|
||||
- com.intellij.openapi.components.PersistentStateComponent
|
||||
- <init>():V
|
||||
- s:getInstance():com.intellij.dupLocator.MultilanguageDuplocatorSettings
|
||||
- getState():org.jdom.Element
|
||||
- getState(com.intellij.lang.Language):com.intellij.dupLocator.DefaultDuplocatorState
|
||||
- loadState(org.jdom.Element):V
|
||||
- registerState(com.intellij.lang.Language,com.intellij.dupLocator.DefaultDuplocatorState):V
|
||||
a:com.intellij.dupLocator.NodeSpecificHasher
|
||||
- com.intellij.dupLocator.DuplocateVisitor
|
||||
- <init>():V
|
||||
@@ -115,16 +92,8 @@ e:com.intellij.dupLocator.PsiElementRole
|
||||
- sf:VARIABLE_NAME:com.intellij.dupLocator.PsiElementRole
|
||||
- s:valueOf(java.lang.String):com.intellij.dupLocator.PsiElementRole
|
||||
- s:values():com.intellij.dupLocator.PsiElementRole[]
|
||||
f:com.intellij.dupLocator.TreeComparator
|
||||
- s:areEqual(com.intellij.psi.PsiElement,com.intellij.psi.PsiElement,com.intellij.dupLocator.NodeSpecificHasher,I):Z
|
||||
com.intellij.dupLocator.TreeHasher
|
||||
- a:hash(com.intellij.psi.PsiElement,com.intellij.dupLocator.NodeSpecificHasher):V
|
||||
com.intellij.dupLocator._DupInfo
|
||||
- a:getDensity(java.lang.Integer):I
|
||||
- a:getHeight(java.lang.Integer):I
|
||||
- a:getOccurencies(java.lang.Integer):java.util.HashSet
|
||||
- a:getPatterns():java.util.TreeSet
|
||||
- a:toString(java.lang.Integer):java.lang.String
|
||||
com.intellij.dupLocator.equivalence.EquivalenceDescriptor
|
||||
- a:getCodeBlocks():java.util.List
|
||||
- a:getConstants():java.util.List
|
||||
@@ -151,40 +120,12 @@ c:com.intellij.dupLocator.equivalence.EquivalenceDescriptorBuilder
|
||||
- optionallyInPattern(com.intellij.psi.PsiElement):com.intellij.dupLocator.equivalence.EquivalenceDescriptorBuilder
|
||||
- optionallyInPattern(com.intellij.psi.PsiElement[]):com.intellij.dupLocator.equivalence.EquivalenceDescriptorBuilder
|
||||
a:com.intellij.dupLocator.equivalence.EquivalenceDescriptorProvider
|
||||
- sf:EP_NAME:com.intellij.openapi.extensions.ExtensionPointName
|
||||
- s:ourUseDefaultEquivalence:Z
|
||||
- <init>():V
|
||||
- a:buildDescriptor(com.intellij.psi.PsiElement):com.intellij.dupLocator.equivalence.EquivalenceDescriptor
|
||||
- getIgnoredTokens():com.intellij.psi.tree.TokenSet
|
||||
- s:getInstance(com.intellij.psi.PsiElement):com.intellij.dupLocator.equivalence.EquivalenceDescriptorProvider
|
||||
- a:isMyContext(com.intellij.psi.PsiElement):Z
|
||||
c:com.intellij.dupLocator.equivalence.MultiChildDescriptor
|
||||
- <init>(com.intellij.dupLocator.equivalence.MultiChildDescriptor$MyType,com.intellij.psi.PsiElement[]):V
|
||||
- getElements():com.intellij.psi.PsiElement[]
|
||||
- getType():com.intellij.dupLocator.equivalence.MultiChildDescriptor$MyType
|
||||
e:com.intellij.dupLocator.equivalence.MultiChildDescriptor$MyType
|
||||
- java.lang.Enum
|
||||
- sf:DEFAULT:com.intellij.dupLocator.equivalence.MultiChildDescriptor$MyType
|
||||
- sf:IN_ANY_ORDER:com.intellij.dupLocator.equivalence.MultiChildDescriptor$MyType
|
||||
- sf:OPTIONALLY:com.intellij.dupLocator.equivalence.MultiChildDescriptor$MyType
|
||||
- sf:OPTIONALLY_IN_PATTERN:com.intellij.dupLocator.equivalence.MultiChildDescriptor$MyType
|
||||
- s:valueOf(java.lang.String):com.intellij.dupLocator.equivalence.MultiChildDescriptor$MyType
|
||||
- s:values():com.intellij.dupLocator.equivalence.MultiChildDescriptor$MyType[]
|
||||
c:com.intellij.dupLocator.equivalence.SingleChildDescriptor
|
||||
- <init>(com.intellij.dupLocator.equivalence.SingleChildDescriptor$MyType,com.intellij.psi.PsiElement):V
|
||||
- getElement():com.intellij.psi.PsiElement
|
||||
- getType():com.intellij.dupLocator.equivalence.SingleChildDescriptor$MyType
|
||||
e:com.intellij.dupLocator.equivalence.SingleChildDescriptor$MyType
|
||||
- java.lang.Enum
|
||||
- sf:CHILDREN:com.intellij.dupLocator.equivalence.SingleChildDescriptor$MyType
|
||||
- sf:CHILDREN_IN_ANY_ORDER:com.intellij.dupLocator.equivalence.SingleChildDescriptor$MyType
|
||||
- sf:CHILDREN_OPTIONALLY:com.intellij.dupLocator.equivalence.SingleChildDescriptor$MyType
|
||||
- sf:CHILDREN_OPTIONALLY_IN_PATTERN:com.intellij.dupLocator.equivalence.SingleChildDescriptor$MyType
|
||||
- sf:DEFAULT:com.intellij.dupLocator.equivalence.SingleChildDescriptor$MyType
|
||||
- sf:OPTIONALLY:com.intellij.dupLocator.equivalence.SingleChildDescriptor$MyType
|
||||
- sf:OPTIONALLY_IN_PATTERN:com.intellij.dupLocator.equivalence.SingleChildDescriptor$MyType
|
||||
- s:valueOf(java.lang.String):com.intellij.dupLocator.equivalence.SingleChildDescriptor$MyType
|
||||
- s:values():com.intellij.dupLocator.equivalence.SingleChildDescriptor$MyType[]
|
||||
f:com.intellij.dupLocator.iterators.ArrayBackedNodeIterator
|
||||
- com.intellij.dupLocator.iterators.NodeIterator
|
||||
- <init>(com.intellij.psi.PsiElement[]):V
|
||||
@@ -244,8 +185,8 @@ a:com.intellij.dupLocator.treeHash.AbstractTreeHasher
|
||||
- pf:myCallBack:com.intellij.dupLocator.treeHash.FragmentsCollector
|
||||
- pf:myForIndexing:Z
|
||||
- <init>(com.intellij.dupLocator.treeHash.FragmentsCollector,Z):V
|
||||
- p:buildFragment(com.intellij.dupLocator.NodeSpecificHasher,com.intellij.psi.PsiElement,I):com.intellij.dupLocator.treeHash.TreePsiFragment
|
||||
- p:buildFragment(com.intellij.dupLocator.NodeSpecificHasher,java.util.List,I,I):com.intellij.dupLocator.treeHash.TreePsiFragment
|
||||
- p:buildFragment(com.intellij.dupLocator.NodeSpecificHasher,com.intellij.psi.PsiElement,I):com.intellij.dupLocator.util.PsiFragment
|
||||
- p:buildFragment(com.intellij.dupLocator.NodeSpecificHasher,java.util.List,I,I):com.intellij.dupLocator.util.PsiFragment
|
||||
- p:computeElementHash(com.intellij.psi.PsiElement,com.intellij.dupLocator.util.PsiFragment,com.intellij.dupLocator.NodeSpecificHasher):com.intellij.dupLocator.treeHash.TreeHashResult
|
||||
- p:getCost(com.intellij.psi.PsiElement):I
|
||||
- pa:getDiscardCost(com.intellij.psi.PsiElement):I
|
||||
@@ -257,11 +198,6 @@ a:com.intellij.dupLocator.treeHash.AbstractTreeHasher
|
||||
- shouldAnonymize(com.intellij.psi.PsiElement,com.intellij.dupLocator.NodeSpecificHasher):Z
|
||||
- s:vector(I[]):I
|
||||
- s:vector(I[],I):I
|
||||
f:com.intellij.dupLocator.treeHash.DuplicatesMatchingVisitor
|
||||
- com.intellij.dupLocator.AbstractMatchingVisitor
|
||||
- <init>(com.intellij.dupLocator.treeHash.NodeSpecificHasherBase,com.intellij.dupLocator.util.NodeFilter,I):V
|
||||
- match(com.intellij.psi.PsiElement,com.intellij.psi.PsiElement):Z
|
||||
- matchSequentially(com.intellij.dupLocator.iterators.NodeIterator,com.intellij.dupLocator.iterators.NodeIterator):Z
|
||||
a:com.intellij.dupLocator.treeHash.DuplicatesProfileBase
|
||||
- com.intellij.dupLocator.DuplicatesProfile
|
||||
- <init>():V
|
||||
@@ -282,26 +218,6 @@ c:com.intellij.dupLocator.treeHash.DuplocatorHashCallback
|
||||
- s:writeDuplicates(java.nio.file.Path,com.intellij.openapi.project.Project,com.intellij.dupLocator.DupInfo):V
|
||||
com.intellij.dupLocator.treeHash.FragmentsCollector
|
||||
- a:add(I,I,com.intellij.dupLocator.util.PsiFragment):V
|
||||
c:com.intellij.dupLocator.treeHash.GroupNodeDescription
|
||||
- <init>(I,java.lang.String,java.lang.String):V
|
||||
- getComment():java.lang.String
|
||||
- getFilesCount():I
|
||||
- getTitle():java.lang.String
|
||||
c:com.intellij.dupLocator.treeHash.NodeSpecificHasherBase
|
||||
- com.intellij.dupLocator.NodeSpecificHasher
|
||||
- pf:myForIndexing:Z
|
||||
- <init>(com.intellij.dupLocator.DuplocatorSettings,com.intellij.dupLocator.treeHash.FragmentsCollector,com.intellij.dupLocator.treeHash.DuplicatesProfileBase):V
|
||||
- <init>(com.intellij.dupLocator.DuplocatorSettings,com.intellij.dupLocator.treeHash.FragmentsCollector,com.intellij.dupLocator.treeHash.DuplicatesProfileBase,Z):V
|
||||
- areNodesEqual(com.intellij.psi.PsiElement,com.intellij.psi.PsiElement):Z
|
||||
- areTreesEqual(com.intellij.psi.PsiElement,com.intellij.psi.PsiElement,I):Z
|
||||
- checkDeep(com.intellij.psi.PsiElement,com.intellij.psi.PsiElement):Z
|
||||
- getDuplicatesProfile():com.intellij.dupLocator.treeHash.DuplicatesProfileBase
|
||||
- getNodeChildren(com.intellij.psi.PsiElement):java.util.List
|
||||
- getNodeCost(com.intellij.psi.PsiElement):I
|
||||
- getNodeFilter():com.intellij.dupLocator.util.NodeFilter
|
||||
- getNodeHash(com.intellij.psi.PsiElement):I
|
||||
- hashingFinished():V
|
||||
- visitNode(com.intellij.psi.PsiElement):V
|
||||
c:com.intellij.dupLocator.treeHash.TreeHashResult
|
||||
- <init>(I,I,com.intellij.dupLocator.util.PsiFragment):V
|
||||
- getCost():I
|
||||
@@ -310,11 +226,6 @@ c:com.intellij.dupLocator.treeHash.TreeHashResult
|
||||
f:com.intellij.dupLocator.treeHash.TreeHashingUtils
|
||||
- <init>():V
|
||||
- s:hashCodeBlockForIndexing(com.intellij.dupLocator.treeHash.AbstractTreeHasher,com.intellij.dupLocator.treeHash.FragmentsCollector,java.util.List,com.intellij.dupLocator.util.PsiFragment,com.intellij.dupLocator.NodeSpecificHasher):com.intellij.dupLocator.treeHash.TreeHashResult
|
||||
c:com.intellij.dupLocator.treeHash.TreePsiFragment
|
||||
- com.intellij.dupLocator.util.PsiFragment
|
||||
- <init>(com.intellij.dupLocator.NodeSpecificHasher,com.intellij.psi.PsiElement,I):V
|
||||
- <init>(com.intellij.dupLocator.NodeSpecificHasher,java.util.List,I,I):V
|
||||
- isEqual(com.intellij.psi.PsiElement[],I):Z
|
||||
com.intellij.dupLocator.treeView.NodeMatcher
|
||||
- a:match(com.intellij.psi.PsiElement):Z
|
||||
f:com.intellij.dupLocator.util.DuplocatorUtil
|
||||
@@ -15,12 +15,12 @@
|
||||
*/
|
||||
package com.intellij.dupLocator;
|
||||
|
||||
import com.intellij.dupLocator.util.NodeFilter;
|
||||
import com.intellij.psi.PsiElement;
|
||||
import com.intellij.dupLocator.iterators.ArrayBackedNodeIterator;
|
||||
import com.intellij.dupLocator.iterators.FilteringNodeIterator;
|
||||
import com.intellij.dupLocator.iterators.NodeIterator;
|
||||
import com.intellij.dupLocator.iterators.SiblingNodeIterator;
|
||||
import com.intellij.dupLocator.util.NodeFilter;
|
||||
import com.intellij.psi.PsiElement;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
package com.intellij.dupLocator;
|
||||
|
||||
import com.intellij.openapi.diagnostic.Logger;
|
||||
import org.jetbrains.annotations.ApiStatus;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
@ApiStatus.Internal
|
||||
public final class DefaultDuplocatorState implements ExternalizableDuplocatorState {
|
||||
private static final Logger LOG = Logger.getInstance(DefaultDuplocatorState.class);
|
||||
|
||||
public boolean DISTINGUISH_VARIABLES = false;
|
||||
public boolean DISTINGUISH_FUNCTIONS = true;
|
||||
|
||||
@@ -1,13 +1,11 @@
|
||||
package com.intellij.dupLocator;
|
||||
|
||||
import com.intellij.DynamicBundle;
|
||||
import org.jetbrains.annotations.Nls;
|
||||
import org.jetbrains.annotations.NonNls;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.annotations.PropertyKey;
|
||||
import org.jetbrains.annotations.*;
|
||||
|
||||
import java.util.function.Supplier;
|
||||
|
||||
@ApiStatus.Internal
|
||||
public final class DupLocatorBundle {
|
||||
private static final @NonNls String BUNDLE = "messages.DupLocatorBundle";
|
||||
|
||||
|
||||
@@ -29,7 +29,7 @@ import org.jetbrains.annotations.Nullable;
|
||||
import java.util.List;
|
||||
|
||||
public abstract class DuplicatesProfile {
|
||||
public static final ExtensionPointName<DuplicatesProfile> EP_NAME = ExtensionPointName.create("com.intellij.duplicates.profile");
|
||||
private static final ExtensionPointName<DuplicatesProfile> EP_NAME = ExtensionPointName.create("com.intellij.duplicates.profile");
|
||||
|
||||
@NotNull
|
||||
public abstract DuplocateVisitor createVisitor(@NotNull FragmentsCollector collector);
|
||||
@@ -109,6 +109,10 @@ public abstract class DuplicatesProfile {
|
||||
return null;
|
||||
}
|
||||
|
||||
public static <T extends DuplicatesProfile> DuplicatesProfile getProfile(Class<T> profileClass) {
|
||||
return EP_NAME.findExtensionOrFail(profileClass);
|
||||
}
|
||||
|
||||
@NotNull
|
||||
public Language getLanguage(@NotNull PsiElement element) {
|
||||
return element.getLanguage();
|
||||
|
||||
@@ -10,11 +10,13 @@ import com.intellij.openapi.components.Storage;
|
||||
import com.intellij.util.xmlb.SkipDefaultValuesSerializationFilters;
|
||||
import com.intellij.util.xmlb.XmlSerializer;
|
||||
import org.jdom.Element;
|
||||
import org.jetbrains.annotations.ApiStatus;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
import java.util.Map;
|
||||
import java.util.TreeMap;
|
||||
|
||||
@ApiStatus.Internal
|
||||
@State(
|
||||
name = "MultiLanguageDuplocatorSettings",
|
||||
storages = @Storage("duplocatorSettings.xml"),
|
||||
|
||||
@@ -5,7 +5,7 @@ import org.jetbrains.annotations.NotNull;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public final class TreeComparator {
|
||||
final class TreeComparator {
|
||||
private TreeComparator() {
|
||||
}
|
||||
|
||||
|
||||
@@ -1,18 +0,0 @@
|
||||
package com.intellij.dupLocator;
|
||||
|
||||
import com.intellij.psi.PsiElement;
|
||||
|
||||
import java.util.HashSet;
|
||||
import java.util.TreeSet;
|
||||
|
||||
public interface _DupInfo {
|
||||
TreeSet<Integer> getPatterns();
|
||||
|
||||
int getHeight(Integer pattern);
|
||||
|
||||
int getDensity(Integer pattern);
|
||||
|
||||
HashSet<PsiElement> getOccurencies(Integer pattern);
|
||||
|
||||
String toString(Integer pattern);
|
||||
}
|
||||
@@ -8,7 +8,7 @@ import org.jetbrains.annotations.Nullable;
|
||||
import org.jetbrains.annotations.TestOnly;
|
||||
|
||||
public abstract class EquivalenceDescriptorProvider {
|
||||
public static final ExtensionPointName<EquivalenceDescriptorProvider> EP_NAME = ExtensionPointName.create("com.intellij.equivalenceDescriptorProvider");
|
||||
private static final ExtensionPointName<EquivalenceDescriptorProvider> EP_NAME = ExtensionPointName.create("com.intellij.equivalenceDescriptorProvider");
|
||||
|
||||
// for using in tests only !!!
|
||||
@SuppressWarnings("StaticNonFinalField")
|
||||
|
||||
@@ -1,8 +1,10 @@
|
||||
package com.intellij.dupLocator.equivalence;
|
||||
|
||||
import com.intellij.psi.PsiElement;
|
||||
import org.jetbrains.annotations.ApiStatus;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
@ApiStatus.Internal
|
||||
public class MultiChildDescriptor {
|
||||
private final MyType myType;
|
||||
private final PsiElement[] myElements;
|
||||
|
||||
@@ -1,9 +1,11 @@
|
||||
package com.intellij.dupLocator.equivalence;
|
||||
|
||||
import com.intellij.psi.PsiElement;
|
||||
import org.jetbrains.annotations.ApiStatus;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
|
||||
@ApiStatus.Internal
|
||||
public class SingleChildDescriptor {
|
||||
private final MyType myType;
|
||||
private final PsiElement myElement;
|
||||
|
||||
@@ -77,7 +77,7 @@ public abstract class AbstractTreeHasher implements TreeHasher {
|
||||
return new TreeHashResult(h, c, fragment);
|
||||
}
|
||||
|
||||
protected TreePsiFragment buildFragment(NodeSpecificHasher hasher, PsiElement root,int cost) {
|
||||
protected PsiFragment buildFragment(NodeSpecificHasher hasher, PsiElement root,int cost) {
|
||||
if (myForIndexing) {
|
||||
return new TreePsiFragment(hasher, root, cost) {
|
||||
@Override
|
||||
@@ -94,7 +94,7 @@ public abstract class AbstractTreeHasher implements TreeHasher {
|
||||
return new TreePsiFragment(hasher, root, cost);
|
||||
}
|
||||
|
||||
protected TreePsiFragment buildFragment(NodeSpecificHasher hasher, List<? extends PsiElement> elements, int from, int to) {
|
||||
protected PsiFragment buildFragment(NodeSpecificHasher hasher, List<? extends PsiElement> elements, int from, int to) {
|
||||
if (myForIndexing) {
|
||||
return new TreePsiFragment(hasher, elements, from, to) {
|
||||
@Override
|
||||
|
||||
@@ -21,14 +21,14 @@ import org.jetbrains.annotations.NotNull;
|
||||
|
||||
import java.util.*;
|
||||
|
||||
public final class DuplicatesMatchingVisitor extends AbstractMatchingVisitor {
|
||||
final class DuplicatesMatchingVisitor extends AbstractMatchingVisitor {
|
||||
private final NodeSpecificHasherBase myNodeSpecificHasher;
|
||||
private final NodeFilter myNodeFilter;
|
||||
private final int myDiscardCost;
|
||||
private final TreeHasherBase myTreeHasher;
|
||||
private final Map<PsiElement, TreeHashResult> myPsiElement2HashAndCost = new HashMap<>();
|
||||
|
||||
public DuplicatesMatchingVisitor(NodeSpecificHasherBase nodeSpecificHasher,
|
||||
DuplicatesMatchingVisitor(NodeSpecificHasherBase nodeSpecificHasher,
|
||||
@NotNull NodeFilter nodeFilter,
|
||||
int discardCost) {
|
||||
myNodeSpecificHasher = nodeSpecificHasher;
|
||||
|
||||
@@ -2,13 +2,13 @@ package com.intellij.dupLocator.treeHash;
|
||||
|
||||
import org.jetbrains.annotations.Nls;
|
||||
|
||||
public class GroupNodeDescription {
|
||||
class GroupNodeDescription {
|
||||
private final int myFilesCount;
|
||||
private final @Nls String myTitle;
|
||||
private final @Nls String myComment;
|
||||
|
||||
|
||||
public GroupNodeDescription(final int filesCount, final @Nls String title, final @Nls String comment) {
|
||||
GroupNodeDescription(final int filesCount, final @Nls String title, final @Nls String comment) {
|
||||
myFilesCount = filesCount;
|
||||
myTitle = title;
|
||||
myComment = comment;
|
||||
|
||||
@@ -15,11 +15,13 @@ import com.intellij.psi.PsiFile;
|
||||
import com.intellij.psi.PsiWhiteSpace;
|
||||
import com.intellij.psi.impl.source.tree.LeafElement;
|
||||
import com.intellij.psi.tree.IElementType;
|
||||
import org.jetbrains.annotations.ApiStatus;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
@ApiStatus.Internal
|
||||
public class NodeSpecificHasherBase extends NodeSpecificHasher {
|
||||
private final TreeHasherBase myTreeHasher;
|
||||
private final DuplocatorSettings mySettings;
|
||||
|
||||
@@ -6,15 +6,15 @@ import com.intellij.psi.PsiElement;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public class TreePsiFragment extends PsiFragment {
|
||||
class TreePsiFragment extends PsiFragment {
|
||||
private final NodeSpecificHasher myHasher;
|
||||
|
||||
public TreePsiFragment(final NodeSpecificHasher hasher, final PsiElement root, final int cost) {
|
||||
TreePsiFragment(final NodeSpecificHasher hasher, final PsiElement root, final int cost) {
|
||||
super(root, cost);
|
||||
myHasher = hasher;
|
||||
}
|
||||
|
||||
public TreePsiFragment(final NodeSpecificHasher hasher, final List<? extends PsiElement> element, final int from, final int to) {
|
||||
TreePsiFragment(final NodeSpecificHasher hasher, final List<? extends PsiElement> element, final int from, final int to) {
|
||||
super(element, from, to);
|
||||
myHasher = hasher;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user