Move AstLoadingFilter to incompatible API and update usages
This commit is contained in:
+1
@@ -112,6 +112,7 @@
|
|||||||
<Problem reference="com.intellij.execution.configurations.RunConfigurationBase" reason="Generalized in 183. Use RunConfigurationBaseAny instead in signatures." />
|
<Problem reference="com.intellij.execution.configurations.RunConfigurationBase" reason="Generalized in 183. Use RunConfigurationBaseAny instead in signatures." />
|
||||||
<Problem reference="com.intellij.execution.configurations.LocatableConfigurationBase" reason="Generalized in 183. Use LocatableConfigurationBaseAny instead in signatures." />
|
<Problem reference="com.intellij.execution.configurations.LocatableConfigurationBase" reason="Generalized in 183. Use LocatableConfigurationBaseAny instead in signatures." />
|
||||||
<Problem reference="com.intellij.execution.configurations.ModuleBasedConfiguration" reason="Generalized in 183. Use ModuleBasedConfigurationElement instead." />
|
<Problem reference="com.intellij.execution.configurations.ModuleBasedConfiguration" reason="Generalized in 183. Use ModuleBasedConfigurationElement instead." />
|
||||||
|
<Problem reference="com.intellij.util.AstLoadingFilter" reason="Absent in 181. Almost all methods were renamed in 183. Use org.jetbrains.kotlin.util.AstLoadingFilter instead." />
|
||||||
</list>
|
</list>
|
||||||
</option>
|
</option>
|
||||||
</inspection_tool>
|
</inspection_tool>
|
||||||
|
|||||||
@@ -17,7 +17,6 @@
|
|||||||
package org.jetbrains.kotlin.resolve
|
package org.jetbrains.kotlin.resolve
|
||||||
|
|
||||||
import com.intellij.psi.PsiElement
|
import com.intellij.psi.PsiElement
|
||||||
import com.intellij.util.AstLoadingFilter
|
|
||||||
import org.jetbrains.kotlin.builtins.KotlinBuiltIns
|
import org.jetbrains.kotlin.builtins.KotlinBuiltIns
|
||||||
import org.jetbrains.kotlin.builtins.getReceiverTypeFromFunctionType
|
import org.jetbrains.kotlin.builtins.getReceiverTypeFromFunctionType
|
||||||
import org.jetbrains.kotlin.builtins.getValueParameterTypesFromFunctionType
|
import org.jetbrains.kotlin.builtins.getValueParameterTypesFromFunctionType
|
||||||
@@ -68,6 +67,7 @@ import org.jetbrains.kotlin.types.expressions.ExpressionTypingUtils
|
|||||||
import org.jetbrains.kotlin.types.expressions.ExpressionTypingUtils.isFunctionExpression
|
import org.jetbrains.kotlin.types.expressions.ExpressionTypingUtils.isFunctionExpression
|
||||||
import org.jetbrains.kotlin.types.expressions.ExpressionTypingUtils.isFunctionLiteral
|
import org.jetbrains.kotlin.types.expressions.ExpressionTypingUtils.isFunctionLiteral
|
||||||
import org.jetbrains.kotlin.types.typeUtil.replaceAnnotations
|
import org.jetbrains.kotlin.types.typeUtil.replaceAnnotations
|
||||||
|
import org.jetbrains.kotlin.util.AstLoadingFilter
|
||||||
import java.util.*
|
import java.util.*
|
||||||
|
|
||||||
class FunctionDescriptorResolver(
|
class FunctionDescriptorResolver(
|
||||||
@@ -264,7 +264,7 @@ class FunctionDescriptorResolver(
|
|||||||
if (!isContractsEnabled || !function.mayHaveContract()) return null
|
if (!isContractsEnabled || !function.mayHaveContract()) return null
|
||||||
|
|
||||||
return LazyContractProvider {
|
return LazyContractProvider {
|
||||||
AstLoadingFilter.forceEnableTreeLoading(function.containingFile) {
|
AstLoadingFilter.forceAllowTreeLoading(function.containingFile) {
|
||||||
expressionTypingServices.getBodyExpressionType(trace, scope, dataFlowInfo, function, functionDescriptor)
|
expressionTypingServices.getBodyExpressionType(trace, scope, dataFlowInfo, function, functionDescriptor)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -20,7 +20,6 @@ import com.intellij.lang.ASTNode
|
|||||||
import com.intellij.openapi.util.ThrowableComputable
|
import com.intellij.openapi.util.ThrowableComputable
|
||||||
import com.intellij.psi.PsiElement
|
import com.intellij.psi.PsiElement
|
||||||
import com.intellij.psi.util.PsiTreeUtil
|
import com.intellij.psi.util.PsiTreeUtil
|
||||||
import com.intellij.util.AstLoadingFilter
|
|
||||||
import org.jetbrains.kotlin.builtins.KotlinBuiltIns
|
import org.jetbrains.kotlin.builtins.KotlinBuiltIns
|
||||||
import org.jetbrains.kotlin.config.LanguageFeature
|
import org.jetbrains.kotlin.config.LanguageFeature
|
||||||
import org.jetbrains.kotlin.config.LanguageVersionSettings
|
import org.jetbrains.kotlin.config.LanguageVersionSettings
|
||||||
@@ -66,6 +65,7 @@ import org.jetbrains.kotlin.types.expressions.ExpressionTypingServices
|
|||||||
import org.jetbrains.kotlin.types.expressions.KotlinTypeInfo
|
import org.jetbrains.kotlin.types.expressions.KotlinTypeInfo
|
||||||
import org.jetbrains.kotlin.types.expressions.typeInfoFactory.createTypeInfo
|
import org.jetbrains.kotlin.types.expressions.typeInfoFactory.createTypeInfo
|
||||||
import org.jetbrains.kotlin.types.expressions.typeInfoFactory.noTypeInfo
|
import org.jetbrains.kotlin.types.expressions.typeInfoFactory.noTypeInfo
|
||||||
|
import org.jetbrains.kotlin.util.AstLoadingFilter
|
||||||
import javax.inject.Inject
|
import javax.inject.Inject
|
||||||
|
|
||||||
class CallExpressionResolver(
|
class CallExpressionResolver(
|
||||||
@@ -350,7 +350,7 @@ class CallExpressionResolver(
|
|||||||
val receiverCanBeNull = receiverDataFlowValue != null &&
|
val receiverCanBeNull = receiverDataFlowValue != null &&
|
||||||
initialDataFlowInfoForArguments.getStableNullability(receiverDataFlowValue).canBeNull()
|
initialDataFlowInfoForArguments.getStableNullability(receiverDataFlowValue).canBeNull()
|
||||||
|
|
||||||
val callOperationNode = AstLoadingFilter.forceEnableTreeLoading(element.qualified.containingFile, ThrowableComputable {
|
val callOperationNode = AstLoadingFilter.forceAllowTreeLoading(element.qualified.containingFile, ThrowableComputable {
|
||||||
element.node
|
element.node
|
||||||
})
|
})
|
||||||
|
|
||||||
|
|||||||
@@ -25,7 +25,6 @@ import com.intellij.psi.PsiModifiableCodeBlock;
|
|||||||
import com.intellij.psi.tree.IElementType;
|
import com.intellij.psi.tree.IElementType;
|
||||||
import com.intellij.psi.tree.TokenSet;
|
import com.intellij.psi.tree.TokenSet;
|
||||||
import com.intellij.psi.util.PsiTreeUtil;
|
import com.intellij.psi.util.PsiTreeUtil;
|
||||||
import com.intellij.util.AstLoadingFilter;
|
|
||||||
import org.jetbrains.annotations.NotNull;
|
import org.jetbrains.annotations.NotNull;
|
||||||
import org.jetbrains.annotations.Nullable;
|
import org.jetbrains.annotations.Nullable;
|
||||||
import org.jetbrains.kotlin.KtNodeTypes;
|
import org.jetbrains.kotlin.KtNodeTypes;
|
||||||
@@ -33,6 +32,7 @@ import org.jetbrains.kotlin.lexer.KtTokens;
|
|||||||
import org.jetbrains.kotlin.psi.stubs.KotlinPropertyStub;
|
import org.jetbrains.kotlin.psi.stubs.KotlinPropertyStub;
|
||||||
import org.jetbrains.kotlin.psi.stubs.elements.KtStubElementTypes;
|
import org.jetbrains.kotlin.psi.stubs.elements.KtStubElementTypes;
|
||||||
import org.jetbrains.kotlin.psi.typeRefHelpers.TypeRefHelpersKt;
|
import org.jetbrains.kotlin.psi.typeRefHelpers.TypeRefHelpersKt;
|
||||||
|
import org.jetbrains.kotlin.util.AstLoadingFilter;
|
||||||
|
|
||||||
import java.util.Collections;
|
import java.util.Collections;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
@@ -252,7 +252,7 @@ public class KtProperty extends KtTypeParameterListOwnerStub<KotlinPropertyStub>
|
|||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
return AstLoadingFilter.forceEnableTreeLoading(this.getContainingFile(), () ->
|
return AstLoadingFilter.forceAllowTreeLoading(this.getContainingFile(), () ->
|
||||||
PsiTreeUtil.getNextSiblingOfType(findChildByType(EQ), KtExpression.class)
|
PsiTreeUtil.getNextSiblingOfType(findChildByType(EQ), KtExpression.class)
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -0,0 +1,23 @@
|
|||||||
|
/*
|
||||||
|
* Copyright 2010-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license
|
||||||
|
* that can be found in the license/LICENSE.txt file.
|
||||||
|
*/
|
||||||
|
|
||||||
|
package org.jetbrains.kotlin.util
|
||||||
|
|
||||||
|
import com.intellij.openapi.util.ThrowableComputable
|
||||||
|
import com.intellij.psi.PsiFile
|
||||||
|
import com.intellij.util.AstLoadingFilter
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Absent in 181. Methods were renamed in 183.
|
||||||
|
*
|
||||||
|
* BUNCH: 183
|
||||||
|
*/
|
||||||
|
@Suppress("IncompatibleAPI")
|
||||||
|
object AstLoadingFilter {
|
||||||
|
@JvmStatic
|
||||||
|
fun <T, E : Throwable> forceAllowTreeLoading(psiFile: PsiFile, computable: ThrowableComputable<out T, E>): T {
|
||||||
|
return AstLoadingFilter.forceEnableTreeLoading(psiFile, computable)
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,22 @@
|
|||||||
|
/*
|
||||||
|
* Copyright 2010-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license
|
||||||
|
* that can be found in the license/LICENSE.txt file.
|
||||||
|
*/
|
||||||
|
|
||||||
|
package org.jetbrains.kotlin.util
|
||||||
|
|
||||||
|
import com.intellij.openapi.util.ThrowableComputable
|
||||||
|
import com.intellij.psi.PsiFile
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Absent in 181. Methods were renamed in 183.
|
||||||
|
*
|
||||||
|
* BUNCH: 183
|
||||||
|
*/
|
||||||
|
@Suppress("IncompatibleAPI")
|
||||||
|
object AstLoadingFilter {
|
||||||
|
@JvmStatic
|
||||||
|
fun <T, E : Throwable> forceAllowTreeLoading(psiFile: PsiFile, computable: ThrowableComputable<out T, E>): T {
|
||||||
|
return computable.compute()
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,23 @@
|
|||||||
|
/*
|
||||||
|
* Copyright 2010-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license
|
||||||
|
* that can be found in the license/LICENSE.txt file.
|
||||||
|
*/
|
||||||
|
|
||||||
|
package org.jetbrains.kotlin.util
|
||||||
|
|
||||||
|
import com.intellij.openapi.util.ThrowableComputable
|
||||||
|
import com.intellij.psi.PsiFile
|
||||||
|
import com.intellij.util.AstLoadingFilter
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Absent in 181. Methods were renamed in 183.
|
||||||
|
*
|
||||||
|
* BUNCH: 183
|
||||||
|
*/
|
||||||
|
@Suppress("IncompatibleAPI")
|
||||||
|
object AstLoadingFilter {
|
||||||
|
@JvmStatic
|
||||||
|
fun <T, E : Throwable> forceAllowTreeLoading(psiFile: PsiFile, computable: ThrowableComputable<out T, E>): T {
|
||||||
|
return AstLoadingFilter.forceAllowTreeLoading(psiFile, computable)
|
||||||
|
}
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user