Merge remote-tracking branch 'origin/master'

This commit is contained in:
Konstantin Bulenkov
2018-05-03 15:28:52 +02:00
6 changed files with 18 additions and 2 deletions
+1
View File
@@ -158,6 +158,7 @@
<inspection_tool class="BeforeOrAfterIsPublicVoidNoArg" enabled="true" level="WARNING" enabled_by_default="true" />
<inspection_tool class="BindingAnnotationWithoutInject" enabled="false" level="WARNING" enabled_by_default="false" />
<inspection_tool class="BooleanMethodIsAlwaysInverted" enabled="false" level="WARNING" enabled_by_default="false" />
<inspection_tool class="BoundedWildcard" enabled="true" level="WARNING" enabled_by_default="true" />
<inspection_tool class="BpmnConfigDomInspection" enabled="false" level="ERROR" enabled_by_default="false" />
<inspection_tool class="BuildoutUnresolvedPartInspection" enabled="false" level="WARNING" enabled_by_default="false" />
<inspection_tool class="BusyWait" enabled="true" level="WARNING" enabled_by_default="true" />
@@ -59,7 +59,7 @@ public class FileUtil extends FileUtilRt {
public static final TObjectHashingStrategy<String> PATH_HASHING_STRATEGY = FilePathHashingStrategy.create();
public static final TObjectHashingStrategy<File> FILE_HASHING_STRATEGY =
SystemInfo.isFileSystemCaseSensitive ? ContainerUtil.<File>canonicalStrategy() : new TObjectHashingStrategy<File>() {
new TObjectHashingStrategy<File>() {
@Override
public int computeHashCode(File object) {
return fileHashCode(object);
@@ -23,6 +23,7 @@ import com.intellij.util.ui.accessibility.ScreenReader;
import org.intellij.lang.annotations.JdkConstants;
import org.intellij.lang.annotations.Language;
import org.jetbrains.annotations.*;
import sun.awt.HeadlessToolkit;
import sun.java2d.SunGraphicsEnvironment;
import javax.sound.sampled.AudioInputStream;
@@ -3359,6 +3360,7 @@ public class UIUtil {
public static void fixFormattedField(JFormattedTextField field) {
if (SystemInfo.isMac) {
final Toolkit toolkit = Toolkit.getDefaultToolkit();
if (toolkit instanceof HeadlessToolkit) return;
final int commandKeyMask = toolkit.getMenuShortcutKeyMask();
final InputMap inputMap = field.getInputMap();
final KeyStroke copyKeyStroke = KeyStroke.getKeyStroke(KeyEvent.VK_C, commandKeyMask);
@@ -2281,7 +2281,7 @@
key="assert.message.not.string.display.name" groupBundle="messages.InspectionsBundle" groupKey="group.names.code.style.issues"
enabledByDefault="false" level="WARNING" implementationClass="com.siyeh.ig.style.AssertMessageNotStringInspection"/>
<localInspection groupPath="Java" language="JAVA" shortName="BoundedWildcard" bundle="com.siyeh.InspectionGadgetsBundle" key="bounded.wildcard.display.name"
groupBundle="messages.InspectionsBundle" groupKey="group.names.code.style.issues" enabledByDefault="true"
groupBundle="messages.InspectionsBundle" groupKey="group.names.code.style.issues" enabledByDefault="false"
level="WARNING" implementationClass="com.siyeh.ig.style.BoundedWildcardInspection"/>
<localInspection groupPath="Java" language="JAVA" shortName="CallToStringConcatCanBeReplacedByOperator" bundle="com.siyeh.InspectionGadgetsBundle"
key="call.to.string.concat.can.be.replaced.by.operator.display.name" groupBundle="messages.InspectionsBundle"
@@ -308,6 +308,9 @@ public class BoundedWildcardInspection extends AbstractBaseJavaLocalInspectionTo
else {
boolean canBeSuperT = isPassedToMethodWhichAlreadyAcceptsQuestionT(ref, superT, method);
boolean canBeExtendsT = isPassedToMethodWhichAlreadyAcceptsQuestionT(ref, extendsT, method);
if (canBeExtendsT && canBeSuperT) {
return true; // ignore e.g. recursive call
}
// otherwise it can be just "foo(Object)" to which anything can be passed - not very interesting
if (canBeSuperT != canBeExtendsT || v[0] != Variance.NOVARIANT) {
if (canBeSuperT && (v[0] == Variance.NOVARIANT || v[0] == Variance.CONTRAVARIANT)) {
@@ -319,6 +322,7 @@ public class BoundedWildcardInspection extends AbstractBaseJavaLocalInspectionTo
return true;
}
}
// some strange usage. do not highlight
v[0] = Variance.INVARIANT;
}
@@ -113,6 +113,15 @@ public class Simple<T> {
//buffer.append(" [...]\n");
}
}
///////// recursive 2
public static boolean isBackpointerReference(Object expression, Processor<<warning descr="Can generalize to '? super Number'">Number</warning>> numberCond) {
if (expression instanceof Number) {
final String contents = expression.toString();
return isBackpointerReference(contents, numberCond);
}
return expression instanceof Number && numberCond.process((Number)expression);
}
///////// can't deduce anything - too general
private static String findNonCodeAnnotation(Collection<String> annotationNames, Map<Collection<String>, String> map ) {