boolean (int patternIndex, int nextOccurrence, @NotNull ErrorState errorState) { // uppercase should match either uppercase or a word start return !isUpperCase(patternIndex, errorState) || Character.isUpperCase(myName.charAt(nextOccurrence)) || NameUtilCore.isWordStart(myName, nextOccurrence) || // accept uppercase matching lowercase if the whole prefix is uppercase and case sensitivity allows that !myHasHumps && myOptions != NameUtil.MatchingCaseSensitivity.ALL; }