From 8a3e220697a8a55e6dc6011e94d4d9ddc79589f1 Mon Sep 17 00:00:00 2001 From: Alexey Kudravtsev Date: Wed, 10 Oct 2012 19:49:39 +0400 Subject: [PATCH] notnull --- .../psi/codeStyle/MinusculeMatcher.java | 34 +++++++++---------- .../src/com/intellij/util/text/Matcher.java | 3 +- 2 files changed, 19 insertions(+), 18 deletions(-) diff --git a/platform/util/src/com/intellij/psi/codeStyle/MinusculeMatcher.java b/platform/util/src/com/intellij/psi/codeStyle/MinusculeMatcher.java index 1e337c32cd05..13702013cb01 100644 --- a/platform/util/src/com/intellij/psi/codeStyle/MinusculeMatcher.java +++ b/platform/util/src/com/intellij/psi/codeStyle/MinusculeMatcher.java @@ -21,13 +21,12 @@ import com.intellij.util.containers.FList; import com.intellij.util.text.CharArrayCharSequence; import com.intellij.util.text.CharArrayUtil; import com.intellij.util.text.Matcher; +import org.jetbrains.annotations.NonNls; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; import java.util.Iterator; -import static com.intellij.psi.codeStyle.NameUtil.MatchingCaseSensitivity.*; - /** * @author peter */ @@ -52,7 +51,7 @@ public class MinusculeMatcher implements Matcher { myHasHumps = false; } - private static FList prependRange(FList ranges, int from, int length) { + private static FList prependRange(@NotNull FList ranges, int from, int length) { TextRange head = ranges.getHead(); if (head != null && head.getStartOffset() == from + length) { return ranges.getTail().prepend(new TextRange(from, head.getEndOffset())); @@ -60,7 +59,7 @@ public class MinusculeMatcher implements Matcher { return ranges.prepend(TextRange.from(from, length)); } - public int matchingDegree(String name) { + public int matchingDegree(@NotNull String name) { Iterable iterable = matchingFragments(name); if (iterable == null) return Integer.MIN_VALUE; @@ -110,7 +109,7 @@ public class MinusculeMatcher implements Matcher { return -fragmentCount + matchingCase * 20 + commonStart * 30 - startIndex + (prefixMatching ? 2 : middleWordStart ? 1 : 0) * 1000 - integral; } - public boolean isStartMatch(String name) { + public boolean isStartMatch(@NotNull String name) { Iterable fragments = matchingFragments(name); if (fragments != null) { Iterator iterator = fragments.iterator(); @@ -121,7 +120,7 @@ public class MinusculeMatcher implements Matcher { return false; } - private static boolean isStartMatch(String name, int startIndex) { + private static boolean isStartMatch(@NotNull String name, int startIndex) { for (int i = 0; i < startIndex; i++) { if (!NameUtil.isWordSeparator(name.charAt(i))) { return false; @@ -131,17 +130,17 @@ public class MinusculeMatcher implements Matcher { } @Override - public boolean matches(String name) { + public boolean matches(@NotNull String name) { return matchingFragments(name) != null; } @Nullable - public Iterable matchingFragments(String name) { + public Iterable matchingFragments(@NotNull String name) { return matchWildcards(name, 0, 0); } @Nullable - private FList matchWildcards(String name, int patternIndex, int nameIndex) { + private FList matchWildcards(@NotNull String name, int patternIndex, int nameIndex) { if (nameIndex < 0) { return null; } @@ -172,7 +171,7 @@ public class MinusculeMatcher implements Matcher { } @Nullable - private FList matchSkippingWords(String name, int patternIndex, int nameIndex, boolean allowSpecialChars) { + private FList matchSkippingWords(@NotNull String name, int patternIndex, int nameIndex, boolean allowSpecialChars) { boolean star = isPatternChar(patternIndex - 1, '*'); char p = myPattern[patternIndex]; while (true) { @@ -191,7 +190,7 @@ public class MinusculeMatcher implements Matcher { } @Nullable - private FList matchFragment(String name, int patternIndex, int nameIndex) { + private FList matchFragment(@NotNull String name, int patternIndex, int nameIndex) { if (!isFirstCharMatching(name, nameIndex, myPattern[patternIndex])) { return null; } @@ -200,7 +199,7 @@ public class MinusculeMatcher implements Matcher { int i = 1; while (nameIndex + i < name.length() && patternIndex + i < myPattern.length && - StringUtil.charsEqual(myPattern[patternIndex + i], name.charAt(nameIndex + i), myOptions != ALL)) { + StringUtil.charsEqual(myPattern[patternIndex + i], name.charAt(nameIndex + i), myOptions != NameUtil.MatchingCaseSensitivity.ALL)) { if (Character.isUpperCase(myPattern[patternIndex + i])) { if (i < minFragment) { return null; @@ -231,20 +230,20 @@ public class MinusculeMatcher implements Matcher { return null; } - private boolean isFirstCharMatching(String name, int nameIndex, char p) { + private boolean isFirstCharMatching(@NotNull String name, int nameIndex, char p) { return nameIndex < name.length() && StringUtil.charsEqual(p, name.charAt(nameIndex), - myOptions == FIRST_LETTER && nameIndex > 0 || myOptions == NONE); + myOptions == NameUtil.MatchingCaseSensitivity.FIRST_LETTER && nameIndex > 0 || + myOptions == NameUtil.MatchingCaseSensitivity.NONE); } private boolean isWildcard(int patternIndex) { return isPatternChar(patternIndex, ' ') || isPatternChar(patternIndex, '*'); } private boolean isPatternChar(int patternIndex, char c) { - if (patternIndex < 0 || patternIndex >= myPattern.length) return false; - return myPattern[patternIndex] == c; + return patternIndex >= 0 && patternIndex < myPattern.length && myPattern[patternIndex] == c; } - private int indexOfWordStart(String name, int patternIndex, int startFrom) { + private int indexOfWordStart(@NotNull String name, int patternIndex, int startFrom) { char p = myPattern[patternIndex]; if (p == '.' || NameUtil.isWordSeparator(p)) { return StringUtil.indexOfIgnoreCase(name, p, startFrom + 1); @@ -265,6 +264,7 @@ public class MinusculeMatcher implements Matcher { } } + @NonNls @Override public String toString() { return "MinusculeMatcher{" + diff --git a/platform/util/src/com/intellij/util/text/Matcher.java b/platform/util/src/com/intellij/util/text/Matcher.java index f501d1269798..229a9ecee4ae 100644 --- a/platform/util/src/com/intellij/util/text/Matcher.java +++ b/platform/util/src/com/intellij/util/text/Matcher.java @@ -1,11 +1,12 @@ package com.intellij.util.text; import com.intellij.psi.codeStyle.NameUtil; +import org.jetbrains.annotations.NotNull; /** * @author Konstantin Bulenkov */ @SuppressWarnings("ClassNameSameAsAncestorName") public interface Matcher extends NameUtil.Matcher { - boolean matches(String name); + boolean matches(@NotNull String name); }