diff --git a/compiler/frontend/src/org/jetbrains/kotlin/resolve/calls/CallCompleter.kt b/compiler/frontend/src/org/jetbrains/kotlin/resolve/calls/CallCompleter.kt index ae9a2d7573e..a5858596d96 100644 --- a/compiler/frontend/src/org/jetbrains/kotlin/resolve/calls/CallCompleter.kt +++ b/compiler/frontend/src/org/jetbrains/kotlin/resolve/calls/CallCompleter.kt @@ -78,7 +78,7 @@ public class CallCompleter( temporaryTrace.commit() } - resolvedCall?.let { context.callResolverExtension.run(it, context) } + resolvedCall?.let { context.callChecker.check(it, context) } if (results.isSingleResult() && results.getResultingCall().getStatus().isSuccess()) { return results.changeStatusToSuccess() diff --git a/compiler/frontend/src/org/jetbrains/kotlin/resolve/calls/extensions/CallResolverExtension.java b/compiler/frontend/src/org/jetbrains/kotlin/resolve/calls/checkers/CallChecker.java similarity index 79% rename from compiler/frontend/src/org/jetbrains/kotlin/resolve/calls/extensions/CallResolverExtension.java rename to compiler/frontend/src/org/jetbrains/kotlin/resolve/calls/checkers/CallChecker.java index e1fbd04f290..86f91fa9b51 100644 --- a/compiler/frontend/src/org/jetbrains/kotlin/resolve/calls/extensions/CallResolverExtension.java +++ b/compiler/frontend/src/org/jetbrains/kotlin/resolve/calls/checkers/CallChecker.java @@ -14,13 +14,13 @@ * limitations under the License. */ -package org.jetbrains.kotlin.resolve.calls.extensions; +package org.jetbrains.kotlin.resolve.calls.checkers; import org.jetbrains.annotations.NotNull; import org.jetbrains.kotlin.descriptors.CallableDescriptor; import org.jetbrains.kotlin.resolve.calls.context.BasicCallResolutionContext; import org.jetbrains.kotlin.resolve.calls.model.ResolvedCall; -public interface CallResolverExtension { - void run(@NotNull ResolvedCall resolvedCall, @NotNull BasicCallResolutionContext context); +public interface CallChecker { + void check(@NotNull ResolvedCall resolvedCall, @NotNull BasicCallResolutionContext context); } diff --git a/compiler/frontend/src/org/jetbrains/kotlin/resolve/calls/extensions/CallResolverExtensionProvider.java b/compiler/frontend/src/org/jetbrains/kotlin/resolve/calls/checkers/CallResolverExtensionProvider.java similarity index 61% rename from compiler/frontend/src/org/jetbrains/kotlin/resolve/calls/extensions/CallResolverExtensionProvider.java rename to compiler/frontend/src/org/jetbrains/kotlin/resolve/calls/checkers/CallResolverExtensionProvider.java index 1e24bb64638..e46f53dfac9 100644 --- a/compiler/frontend/src/org/jetbrains/kotlin/resolve/calls/extensions/CallResolverExtensionProvider.java +++ b/compiler/frontend/src/org/jetbrains/kotlin/resolve/calls/checkers/CallResolverExtensionProvider.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.jetbrains.kotlin.resolve.calls.extensions; +package org.jetbrains.kotlin.resolve.calls.checkers; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; @@ -26,38 +26,38 @@ import java.util.*; public class CallResolverExtensionProvider { - private final static CompositeExtension DEFAULT = - new CompositeExtension(Arrays.asList( - new NeedSyntheticCallResolverExtension(), - new ReifiedTypeParameterSubstitutionCheck(), - new CapturingInClosureExtension() + private final static CompositeChecker DEFAULT = + new CompositeChecker(Arrays.asList( + new NeedSyntheticChecker(), + new ReifiedTypeParameterSubstitutionChecker(), + new CapturingInClosureChecker() )); - private WeakReference>> extensionsCache; + private WeakReference>> extensionsCache; @NotNull - public CallResolverExtension createExtension(@Nullable DeclarationDescriptor descriptor, boolean isAnnotationContext) { + public CallChecker createExtension(@Nullable DeclarationDescriptor descriptor, boolean isAnnotationContext) { if (descriptor == null || isAnnotationContext) { return DEFAULT; } - return new CompositeExtension(createExtensions(descriptor)); + return new CompositeChecker(createExtensions(descriptor)); } // create extension list with default one at the end @NotNull - private List createExtensions(@NotNull DeclarationDescriptor declaration) { - Map> map; + private List createExtensions(@NotNull DeclarationDescriptor declaration) { + Map> map; if (extensionsCache == null || (map = extensionsCache.get()) == null) { - map = new HashMap>(); - extensionsCache = new WeakReference>>(map); + map = new HashMap>(); + extensionsCache = new WeakReference>>(map); } - List extensions = map.get(declaration); + List extensions = map.get(declaration); if (extensions != null) { return extensions; } - extensions = new ArrayList(); + extensions = new ArrayList(); DeclarationDescriptor parent = declaration.getContainingDeclaration(); if (parent != null) { @@ -67,21 +67,21 @@ public class CallResolverExtensionProvider { appendExtensionsFor(declaration, extensions); - List immutableResult = Collections.unmodifiableList(extensions); + List immutableResult = Collections.unmodifiableList(extensions); map.put(declaration, immutableResult); return immutableResult; } // with default one at the end - private static void appendExtensionsFor(DeclarationDescriptor declarationDescriptor, List extensions) { + private static void appendExtensionsFor(DeclarationDescriptor declarationDescriptor, List extensions) { if (declarationDescriptor instanceof SimpleFunctionDescriptor) { SimpleFunctionDescriptor descriptor = (SimpleFunctionDescriptor) declarationDescriptor; if (descriptor.getInlineStrategy().isInline()) { - extensions.add(new InlineCallResolverExtension(descriptor)); + extensions.add(new InlineChecker(descriptor)); } } - // add your extensions here + // add your checkers here extensions.add(DEFAULT); } } diff --git a/compiler/frontend/src/org/jetbrains/kotlin/resolve/calls/extensions/CapturingInClosureExtension.kt b/compiler/frontend/src/org/jetbrains/kotlin/resolve/calls/checkers/CapturingInClosureChecker.kt similarity index 94% rename from compiler/frontend/src/org/jetbrains/kotlin/resolve/calls/extensions/CapturingInClosureExtension.kt rename to compiler/frontend/src/org/jetbrains/kotlin/resolve/calls/checkers/CapturingInClosureChecker.kt index 4d8faf6a2cf..0455a5d9a7b 100644 --- a/compiler/frontend/src/org/jetbrains/kotlin/resolve/calls/extensions/CapturingInClosureExtension.kt +++ b/compiler/frontend/src/org/jetbrains/kotlin/resolve/calls/checkers/CapturingInClosureChecker.kt @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.jetbrains.kotlin.resolve.calls.extensions +package org.jetbrains.kotlin.resolve.calls.checkers import org.jetbrains.kotlin.descriptors.CallableDescriptor import org.jetbrains.kotlin.resolve.calls.model.ResolvedCall @@ -33,8 +33,8 @@ import org.jetbrains.kotlin.resolve.calls.callUtil.* import org.jetbrains.kotlin.descriptors.SimpleFunctionDescriptor import org.jetbrains.kotlin.resolve.calls.model.VariableAsFunctionResolvedCall -class CapturingInClosureExtension : CallResolverExtension { - override fun run(resolvedCall: ResolvedCall, context: BasicCallResolutionContext) { +class CapturingInClosureChecker : CallChecker { + override fun check(resolvedCall: ResolvedCall, context: BasicCallResolutionContext) { val variableResolvedCall = if (resolvedCall is VariableAsFunctionResolvedCall) resolvedCall.variableCall else resolvedCall val variableDescriptor = variableResolvedCall.getResultingDescriptor() as? VariableDescriptor if (variableDescriptor != null) { diff --git a/compiler/frontend/src/org/jetbrains/kotlin/resolve/calls/extensions/CompositeExtension.java b/compiler/frontend/src/org/jetbrains/kotlin/resolve/calls/checkers/CompositeChecker.java similarity index 71% rename from compiler/frontend/src/org/jetbrains/kotlin/resolve/calls/extensions/CompositeExtension.java rename to compiler/frontend/src/org/jetbrains/kotlin/resolve/calls/checkers/CompositeChecker.java index afe8df30ecc..2cb326c4a57 100644 --- a/compiler/frontend/src/org/jetbrains/kotlin/resolve/calls/extensions/CompositeExtension.java +++ b/compiler/frontend/src/org/jetbrains/kotlin/resolve/calls/checkers/CompositeChecker.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.jetbrains.kotlin.resolve.calls.extensions; +package org.jetbrains.kotlin.resolve.calls.checkers; import org.jetbrains.annotations.NotNull; import org.jetbrains.kotlin.descriptors.CallableDescriptor; @@ -23,21 +23,21 @@ import org.jetbrains.kotlin.resolve.calls.model.ResolvedCall; import java.util.List; -public class CompositeExtension implements CallResolverExtension { +public class CompositeChecker implements CallChecker { - private final List extensions; + private final List extensions; - public CompositeExtension(@NotNull List extensions) { + public CompositeChecker(@NotNull List extensions) { this.extensions = extensions; } @Override - public void run( + public void check( @NotNull ResolvedCall resolvedCall, @NotNull BasicCallResolutionContext context ) { - for (CallResolverExtension resolverExtension : extensions) { - resolverExtension.run(resolvedCall, context); + for (CallChecker resolverExtension : extensions) { + resolverExtension.check(resolvedCall, context); } } } diff --git a/compiler/frontend/src/org/jetbrains/kotlin/resolve/calls/extensions/InlineCallResolverExtension.java b/compiler/frontend/src/org/jetbrains/kotlin/resolve/calls/checkers/InlineChecker.java similarity index 97% rename from compiler/frontend/src/org/jetbrains/kotlin/resolve/calls/extensions/InlineCallResolverExtension.java rename to compiler/frontend/src/org/jetbrains/kotlin/resolve/calls/checkers/InlineChecker.java index 680c97a29e7..9633d4de715 100644 --- a/compiler/frontend/src/org/jetbrains/kotlin/resolve/calls/extensions/InlineCallResolverExtension.java +++ b/compiler/frontend/src/org/jetbrains/kotlin/resolve/calls/checkers/InlineChecker.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.jetbrains.kotlin.resolve.calls.extensions; +package org.jetbrains.kotlin.resolve.calls.checkers; import com.intellij.psi.PsiElement; import com.intellij.psi.util.PsiTreeUtil; @@ -46,7 +46,7 @@ import java.util.Set; import static org.jetbrains.kotlin.resolve.InlineDescriptorUtils.allowsNonLocalReturns; import static org.jetbrains.kotlin.resolve.InlineDescriptorUtils.checkNonLocalReturnUsage; -public class InlineCallResolverExtension implements CallResolverExtension { +public class InlineChecker implements CallChecker { private final SimpleFunctionDescriptor descriptor; @@ -54,7 +54,7 @@ public class InlineCallResolverExtension implements CallResolverExtension { private final boolean isEffectivelyPublicApiFunction; - public InlineCallResolverExtension(@NotNull SimpleFunctionDescriptor descriptor) { + public InlineChecker(@NotNull SimpleFunctionDescriptor descriptor) { assert descriptor.getInlineStrategy().isInline() : "This extension should be created only for inline functions but not " + descriptor; this.descriptor = descriptor; this.isEffectivelyPublicApiFunction = isEffectivelyPublicApi(descriptor); @@ -75,7 +75,7 @@ public class InlineCallResolverExtension implements CallResolverExtension { } @Override - public void run(@NotNull ResolvedCall resolvedCall, @NotNull BasicCallResolutionContext context) { + public void check(@NotNull ResolvedCall resolvedCall, @NotNull BasicCallResolutionContext context) { JetExpression expression = context.call.getCalleeExpression(); if (expression == null) { return; diff --git a/compiler/frontend/src/org/jetbrains/kotlin/resolve/calls/extensions/NeedSyntheticCallResolverExtension.java b/compiler/frontend/src/org/jetbrains/kotlin/resolve/calls/checkers/NeedSyntheticChecker.java similarity index 92% rename from compiler/frontend/src/org/jetbrains/kotlin/resolve/calls/extensions/NeedSyntheticCallResolverExtension.java rename to compiler/frontend/src/org/jetbrains/kotlin/resolve/calls/checkers/NeedSyntheticChecker.java index 463fa9a5c8e..adf1ee53513 100644 --- a/compiler/frontend/src/org/jetbrains/kotlin/resolve/calls/extensions/NeedSyntheticCallResolverExtension.java +++ b/compiler/frontend/src/org/jetbrains/kotlin/resolve/calls/checkers/NeedSyntheticChecker.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.jetbrains.kotlin.resolve.calls.extensions; +package org.jetbrains.kotlin.resolve.calls.checkers; import org.jetbrains.annotations.NotNull; import org.jetbrains.kotlin.descriptors.CallableDescriptor; @@ -26,10 +26,10 @@ import org.jetbrains.kotlin.resolve.scopes.JetScope; import static org.jetbrains.kotlin.resolve.BindingContext.NEED_SYNTHETIC_ACCESSOR; -public class NeedSyntheticCallResolverExtension implements CallResolverExtension { +public class NeedSyntheticChecker implements CallChecker { @Override - public void run( + public void check( @NotNull ResolvedCall resolvedCall, @NotNull BasicCallResolutionContext context ) { diff --git a/compiler/frontend/src/org/jetbrains/kotlin/resolve/calls/extensions/ReifiedTypeParameterSubstitutionCheck.java b/compiler/frontend/src/org/jetbrains/kotlin/resolve/calls/checkers/ReifiedTypeParameterSubstitutionChecker.java similarity index 93% rename from compiler/frontend/src/org/jetbrains/kotlin/resolve/calls/extensions/ReifiedTypeParameterSubstitutionCheck.java rename to compiler/frontend/src/org/jetbrains/kotlin/resolve/calls/checkers/ReifiedTypeParameterSubstitutionChecker.java index 3addd64a515..5b066f00f94 100644 --- a/compiler/frontend/src/org/jetbrains/kotlin/resolve/calls/extensions/ReifiedTypeParameterSubstitutionCheck.java +++ b/compiler/frontend/src/org/jetbrains/kotlin/resolve/calls/checkers/ReifiedTypeParameterSubstitutionChecker.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.jetbrains.kotlin.resolve.calls.extensions; +package org.jetbrains.kotlin.resolve.calls.checkers; import com.intellij.psi.PsiElement; import org.jetbrains.annotations.NotNull; @@ -30,9 +30,9 @@ import org.jetbrains.kotlin.types.typeUtil.TypeUtilPackage; import java.util.Map; -public class ReifiedTypeParameterSubstitutionCheck implements CallResolverExtension { +public class ReifiedTypeParameterSubstitutionChecker implements CallChecker { @Override - public void run( + public void check( @NotNull ResolvedCall resolvedCall, @NotNull BasicCallResolutionContext context ) { Map typeArguments = resolvedCall.getTypeArguments(); diff --git a/compiler/frontend/src/org/jetbrains/kotlin/resolve/calls/context/BasicCallResolutionContext.java b/compiler/frontend/src/org/jetbrains/kotlin/resolve/calls/context/BasicCallResolutionContext.java index 5fa8e68bb95..5898913b183 100644 --- a/compiler/frontend/src/org/jetbrains/kotlin/resolve/calls/context/BasicCallResolutionContext.java +++ b/compiler/frontend/src/org/jetbrains/kotlin/resolve/calls/context/BasicCallResolutionContext.java @@ -20,7 +20,7 @@ import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; import org.jetbrains.kotlin.psi.Call; import org.jetbrains.kotlin.resolve.BindingTrace; -import org.jetbrains.kotlin.resolve.calls.extensions.CallResolverExtension; +import org.jetbrains.kotlin.resolve.calls.checkers.CallChecker; import org.jetbrains.kotlin.resolve.calls.model.MutableDataFlowInfoForArguments; import org.jetbrains.kotlin.resolve.calls.smartcasts.DataFlowInfo; import org.jetbrains.kotlin.resolve.scopes.JetScope; @@ -37,12 +37,12 @@ public class BasicCallResolutionContext extends CallResolutionContext @NotNull CheckValueArgumentsMode checkArguments, @NotNull ResolutionResultsCache resolutionResultsCache, @Nullable MutableDataFlowInfoForArguments dataFlowInfoForArguments, - @NotNull CallResolverExtension callResolverExtension, + @NotNull CallChecker callChecker, @NotNull ReceiverValue explicitExtensionReceiverForInvoke, boolean isAnnotationContext, boolean collectAllCandidates ) { super(trace, scope, call, expectedType, dataFlowInfo, contextDependency, checkArguments, resolutionResultsCache, - dataFlowInfoForArguments, callResolverExtension, isAnnotationContext, collectAllCandidates); + dataFlowInfoForArguments, callChecker, isAnnotationContext, collectAllCandidates); this.candidateCall = candidateCall; this.tracing = tracing; this.explicitExtensionReceiverForInvoke = explicitExtensionReceiverForInvoke; @@ -71,7 +71,7 @@ public final class CallCandidateResolutionContext candidateCall, tracing, trace, context.scope, call, context.expectedType, context.dataFlowInfo, context.contextDependency, context.checkArguments, context.resolutionResultsCache, context.dataFlowInfoForArguments, - context.callResolverExtension, explicitExtensionReceiverForInvoke, context.isAnnotationContext, context.collectAllCandidates); + context.callChecker, explicitExtensionReceiverForInvoke, context.isAnnotationContext, context.collectAllCandidates); } public static CallCandidateResolutionContext create( @@ -94,7 +94,7 @@ public final class CallCandidateResolutionContext return new CallCandidateResolutionContext( candidateCall, tracing, context.trace, context.scope, context.call, context.expectedType, context.dataFlowInfo, context.contextDependency, context.checkArguments, context.resolutionResultsCache, - context.dataFlowInfoForArguments, context.callResolverExtension, ReceiverValue.NO_RECEIVER, + context.dataFlowInfoForArguments, context.callChecker, ReceiverValue.NO_RECEIVER, context.isAnnotationContext, context.collectAllCandidates); } @@ -110,7 +110,7 @@ public final class CallCandidateResolutionContext ) { return new CallCandidateResolutionContext( candidateCall, tracing, trace, scope, call, expectedType, dataFlowInfo, contextDependency, checkArguments, - resolutionResultsCache, dataFlowInfoForArguments, callResolverExtension, explicitExtensionReceiverForInvoke, + resolutionResultsCache, dataFlowInfoForArguments, callChecker, explicitExtensionReceiverForInvoke, isAnnotationContext, collectAllCandidates); } } diff --git a/compiler/frontend/src/org/jetbrains/kotlin/resolve/calls/context/CallResolutionContext.java b/compiler/frontend/src/org/jetbrains/kotlin/resolve/calls/context/CallResolutionContext.java index 230392c1089..bf2796a46bf 100644 --- a/compiler/frontend/src/org/jetbrains/kotlin/resolve/calls/context/CallResolutionContext.java +++ b/compiler/frontend/src/org/jetbrains/kotlin/resolve/calls/context/CallResolutionContext.java @@ -20,7 +20,7 @@ import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; import org.jetbrains.kotlin.psi.Call; import org.jetbrains.kotlin.resolve.BindingTrace; -import org.jetbrains.kotlin.resolve.calls.extensions.CallResolverExtension; +import org.jetbrains.kotlin.resolve.calls.checkers.CallChecker; import org.jetbrains.kotlin.resolve.calls.model.DataFlowInfoForArgumentsImpl; import org.jetbrains.kotlin.resolve.calls.model.MutableDataFlowInfoForArguments; import org.jetbrains.kotlin.resolve.calls.smartcasts.DataFlowInfo; @@ -46,11 +46,11 @@ public abstract class CallResolutionContext extends C @NotNull CheckValueArgumentsMode checkArguments, @NotNull ResolutionResultsCache resolutionResultsCache, @Nullable MutableDataFlowInfoForArguments dataFlowInfoForArguments, - @NotNull CallResolverExtension callResolverExtension, + @NotNull CallChecker callChecker, @NotNull Collection> resolvedCalls, boolean isAnnotationContext, boolean collectAllCandidates ) { super(trace, scope, call, expectedType, dataFlowInfo, contextDependency, checkArguments, resolutionResultsCache, - dataFlowInfoForArguments, callResolverExtension, isAnnotationContext, collectAllCandidates); + dataFlowInfoForArguments, callChecker, isAnnotationContext, collectAllCandidates); this.lazyCandidates = lazyCandidates; this.resolvedCalls = resolvedCalls; this.tracing = tracing; @@ -75,7 +75,7 @@ public class ResolutionTask extends C context.trace, context.scope, context.call, context.expectedType, context.dataFlowInfo, context.contextDependency, context.checkArguments, context.resolutionResultsCache, context.dataFlowInfoForArguments, - context.callResolverExtension, Lists.>newArrayList(), context.isAnnotationContext, context.collectAllCandidates); + context.callChecker, Lists.>newArrayList(), context.isAnnotationContext, context.collectAllCandidates); } public ResolutionTask( @@ -117,7 +117,7 @@ public class ResolutionTask extends C ) { return new ResolutionTask( lazyCandidates, tracing, trace, scope, call, expectedType, dataFlowInfo, contextDependency, checkArguments, - resolutionResultsCache, dataFlowInfoForArguments, callResolverExtension, resolvedCalls, isAnnotationContext, + resolutionResultsCache, dataFlowInfoForArguments, callChecker, resolvedCalls, isAnnotationContext, collectAllCandidates); } @@ -128,7 +128,7 @@ public class ResolutionTask extends C public ResolutionTask replaceCall(@NotNull Call newCall) { return new ResolutionTask( lazyCandidates, tracing, trace, scope, newCall, expectedType, dataFlowInfo, contextDependency, checkArguments, - resolutionResultsCache, dataFlowInfoForArguments, callResolverExtension, resolvedCalls, + resolutionResultsCache, dataFlowInfoForArguments, callChecker, resolvedCalls, isAnnotationContext, collectAllCandidates); } diff --git a/compiler/frontend/src/org/jetbrains/kotlin/types/expressions/BasicExpressionTypingVisitor.java b/compiler/frontend/src/org/jetbrains/kotlin/types/expressions/BasicExpressionTypingVisitor.java index d75ab1ddf36..6d31c4f2c27 100644 --- a/compiler/frontend/src/org/jetbrains/kotlin/types/expressions/BasicExpressionTypingVisitor.java +++ b/compiler/frontend/src/org/jetbrains/kotlin/types/expressions/BasicExpressionTypingVisitor.java @@ -437,8 +437,8 @@ public class BasicExpressionTypingVisitor extends ExpressionTypingVisitor { trace.record(RESOLVED_CALL, call, resolvedCall); trace.record(CALL, expression, call); - context.callResolverExtension.run(resolvedCall, - BasicCallResolutionContext.create(context, call, CheckValueArgumentsMode.DISABLED)); + context.callChecker.check(resolvedCall, + BasicCallResolutionContext.create(context, call, CheckValueArgumentsMode.DISABLED)); } private static boolean isDeclaredInClass(ReceiverParameterDescriptor receiver) { diff --git a/compiler/frontend/src/org/jetbrains/kotlin/types/expressions/ExpressionTypingContext.java b/compiler/frontend/src/org/jetbrains/kotlin/types/expressions/ExpressionTypingContext.java index 535ec728311..e8170ce5061 100644 --- a/compiler/frontend/src/org/jetbrains/kotlin/types/expressions/ExpressionTypingContext.java +++ b/compiler/frontend/src/org/jetbrains/kotlin/types/expressions/ExpressionTypingContext.java @@ -22,7 +22,7 @@ import org.jetbrains.kotlin.resolve.calls.context.ContextDependency; import org.jetbrains.kotlin.resolve.calls.context.ResolutionContext; import org.jetbrains.kotlin.resolve.calls.context.ResolutionResultsCache; import org.jetbrains.kotlin.resolve.calls.context.ResolutionResultsCacheImpl; -import org.jetbrains.kotlin.resolve.calls.extensions.CallResolverExtension; +import org.jetbrains.kotlin.resolve.calls.checkers.CallChecker; import org.jetbrains.kotlin.resolve.calls.smartcasts.DataFlowInfo; import org.jetbrains.kotlin.resolve.constants.CompileTimeConstantChecker; import org.jetbrains.kotlin.resolve.scopes.JetScope; @@ -47,7 +47,7 @@ public class ExpressionTypingContext extends ResolutionContext