org.jetbrains.kotlin.resolve.calls
Class CallExpressionResolver

java.lang.Object
  extended by org.jetbrains.kotlin.resolve.calls.CallExpressionResolver

public class CallExpressionResolver
extends java.lang.Object


Constructor Summary
CallExpressionResolver(CallResolver callResolver, ConstantExpressionEvaluator constantExpressionEvaluator, DataFlowAnalyzer dataFlowAnalyzer, KotlinBuiltIns builtIns, QualifiedExpressionResolver qualifiedExpressionResolver, SymbolUsageValidator symbolUsageValidator)
           
 
Method Summary
 KotlinTypeInfo getCallExpressionTypeInfo(KtCallExpression callExpression, ReceiverValue receiver, com.intellij.lang.ASTNode callOperationNode, ExpressionTypingContext context)
           
 KotlinTypeInfo getQualifiedExpressionTypeInfo(KtQualifiedExpression expression, ExpressionTypingContext context)
          Visits a qualified expression like x.y or x?.z controlling data flow information changes.
 ResolvedCall<FunctionDescriptor> getResolvedCallForFunction(Call call, ResolutionContext context, CheckArgumentTypesMode checkArguments, boolean[] result)
           
 KotlinTypeInfo getSimpleNameExpressionTypeInfo(KtSimpleNameExpression nameExpression, Receiver receiver, com.intellij.lang.ASTNode callOperationNode, ExpressionTypingContext context)
           
static void reportUnnecessarySafeCall(BindingTrace trace, KotlinType type, com.intellij.lang.ASTNode callOperationNode, Receiver explicitReceiver)
           
 void setExpressionTypingServices(ExpressionTypingServices expressionTypingServices)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

CallExpressionResolver

public CallExpressionResolver(@NotNull
                              CallResolver callResolver,
                              @NotNull
                              ConstantExpressionEvaluator constantExpressionEvaluator,
                              @NotNull
                              DataFlowAnalyzer dataFlowAnalyzer,
                              @NotNull
                              KotlinBuiltIns builtIns,
                              @NotNull
                              QualifiedExpressionResolver qualifiedExpressionResolver,
                              @NotNull
                              SymbolUsageValidator symbolUsageValidator)
Method Detail

setExpressionTypingServices

@Inject
public void setExpressionTypingServices(@NotNull
                                               ExpressionTypingServices expressionTypingServices)

getResolvedCallForFunction

@Nullable
public ResolvedCall<FunctionDescriptor> getResolvedCallForFunction(@NotNull
                                                                            Call call,
                                                                            @NotNull
                                                                            ResolutionContext context,
                                                                            @NotNull
                                                                            CheckArgumentTypesMode checkArguments,
                                                                            @NotNull
                                                                            boolean[] result)

getSimpleNameExpressionTypeInfo

@NotNull
public KotlinTypeInfo getSimpleNameExpressionTypeInfo(@NotNull
                                                              KtSimpleNameExpression nameExpression,
                                                              @NotNull
                                                              Receiver receiver,
                                                              @Nullable
                                                              com.intellij.lang.ASTNode callOperationNode,
                                                              @NotNull
                                                              ExpressionTypingContext context)

getCallExpressionTypeInfo

@NotNull
public KotlinTypeInfo getCallExpressionTypeInfo(@NotNull
                                                        KtCallExpression callExpression,
                                                        @NotNull
                                                        ReceiverValue receiver,
                                                        @Nullable
                                                        com.intellij.lang.ASTNode callOperationNode,
                                                        @NotNull
                                                        ExpressionTypingContext context)

reportUnnecessarySafeCall

public static void reportUnnecessarySafeCall(@NotNull
                                             BindingTrace trace,
                                             @NotNull
                                             KotlinType type,
                                             @NotNull
                                             com.intellij.lang.ASTNode callOperationNode,
                                             @Nullable
                                             Receiver explicitReceiver)

getQualifiedExpressionTypeInfo

@NotNull
public KotlinTypeInfo getQualifiedExpressionTypeInfo(@NotNull
                                                             KtQualifiedExpression expression,
                                                             @NotNull
                                                             ExpressionTypingContext context)
Visits a qualified expression like x.y or x?.z controlling data flow information changes.

Returns:
qualified expression type together with data flow information