org.jetbrains.kotlin.resolve
Class DelegatedPropertyResolver

java.lang.Object
  extended by org.jetbrains.kotlin.resolve.DelegatedPropertyResolver

public class DelegatedPropertyResolver
extends java.lang.Object


Field Summary
static Name GETTER_NAME
           
static Name OLD_GETTER_NAME
           
static Name OLD_SETTER_NAME
           
static Name PROPERTY_DELEGATED_FUNCTION_NAME
           
static Name SETTER_NAME
           
 
Constructor Summary
DelegatedPropertyResolver(SymbolUsageValidator symbolUsageValidator, KotlinBuiltIns builtIns, FakeCallResolver fakeCallResolver, ExpressionTypingServices expressionTypingServices)
           
 
Method Summary
 OverloadResolutionResults<FunctionDescriptor> getDelegatedPropertyConventionMethod(PropertyDescriptor propertyDescriptor, KtExpression delegateExpression, KotlinType delegateType, BindingTrace trace, LexicalScope delegateFunctionsScope, boolean isGet, boolean isComplete)
           
 KotlinType getDelegatedPropertyGetMethodReturnType(PropertyDescriptor propertyDescriptor, KtExpression delegateExpression, KotlinType delegateType, BindingTrace trace, LexicalScope delegateFunctionsScope)
           
 void resolveDelegatedPropertyGetMethod(PropertyDescriptor propertyDescriptor, KtExpression delegateExpression, KotlinType delegateType, BindingTrace trace, LexicalScope delegateFunctionsScope)
           
 void resolveDelegatedPropertyPDMethod(PropertyDescriptor propertyDescriptor, KtExpression delegateExpression, KotlinType delegateType, BindingTrace trace, LexicalScope delegateFunctionsScope)
           
 void resolveDelegatedPropertySetMethod(PropertyDescriptor propertyDescriptor, KtExpression delegateExpression, KotlinType delegateType, BindingTrace trace, LexicalScope delegateFunctionsScope)
           
 KotlinType resolveDelegateExpression(KtExpression delegateExpression, KtProperty property, PropertyDescriptor propertyDescriptor, LexicalScope scopeForDelegate, BindingTrace trace, DataFlowInfo dataFlowInfo)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

PROPERTY_DELEGATED_FUNCTION_NAME

public static final Name PROPERTY_DELEGATED_FUNCTION_NAME

GETTER_NAME

public static final Name GETTER_NAME

SETTER_NAME

public static final Name SETTER_NAME

OLD_GETTER_NAME

public static final Name OLD_GETTER_NAME

OLD_SETTER_NAME

public static final Name OLD_SETTER_NAME
Constructor Detail

DelegatedPropertyResolver

public DelegatedPropertyResolver(@NotNull
                                 SymbolUsageValidator symbolUsageValidator,
                                 @NotNull
                                 KotlinBuiltIns builtIns,
                                 @NotNull
                                 FakeCallResolver fakeCallResolver,
                                 @NotNull
                                 ExpressionTypingServices expressionTypingServices)
Method Detail

getDelegatedPropertyGetMethodReturnType

@Nullable
public KotlinType getDelegatedPropertyGetMethodReturnType(@NotNull
                                                                   PropertyDescriptor propertyDescriptor,
                                                                   @NotNull
                                                                   KtExpression delegateExpression,
                                                                   @NotNull
                                                                   KotlinType delegateType,
                                                                   @NotNull
                                                                   BindingTrace trace,
                                                                   @NotNull
                                                                   LexicalScope delegateFunctionsScope)

resolveDelegatedPropertyGetMethod

public void resolveDelegatedPropertyGetMethod(@NotNull
                                              PropertyDescriptor propertyDescriptor,
                                              @NotNull
                                              KtExpression delegateExpression,
                                              @NotNull
                                              KotlinType delegateType,
                                              @NotNull
                                              BindingTrace trace,
                                              @NotNull
                                              LexicalScope delegateFunctionsScope)

resolveDelegatedPropertySetMethod

public void resolveDelegatedPropertySetMethod(@NotNull
                                              PropertyDescriptor propertyDescriptor,
                                              @NotNull
                                              KtExpression delegateExpression,
                                              @NotNull
                                              KotlinType delegateType,
                                              @NotNull
                                              BindingTrace trace,
                                              @NotNull
                                              LexicalScope delegateFunctionsScope)

resolveDelegatedPropertyPDMethod

public void resolveDelegatedPropertyPDMethod(@NotNull
                                             PropertyDescriptor propertyDescriptor,
                                             @NotNull
                                             KtExpression delegateExpression,
                                             @NotNull
                                             KotlinType delegateType,
                                             @NotNull
                                             BindingTrace trace,
                                             @NotNull
                                             LexicalScope delegateFunctionsScope)

getDelegatedPropertyConventionMethod

public OverloadResolutionResults<FunctionDescriptor> getDelegatedPropertyConventionMethod(@NotNull
                                                                                          PropertyDescriptor propertyDescriptor,
                                                                                          @NotNull
                                                                                          KtExpression delegateExpression,
                                                                                          @NotNull
                                                                                          KotlinType delegateType,
                                                                                          @NotNull
                                                                                          BindingTrace trace,
                                                                                          @NotNull
                                                                                          LexicalScope delegateFunctionsScope,
                                                                                          boolean isGet,
                                                                                          boolean isComplete)

resolveDelegateExpression

@NotNull
public KotlinType resolveDelegateExpression(@NotNull
                                                    KtExpression delegateExpression,
                                                    @NotNull
                                                    KtProperty property,
                                                    @NotNull
                                                    PropertyDescriptor propertyDescriptor,
                                                    @NotNull
                                                    LexicalScope scopeForDelegate,
                                                    @NotNull
                                                    BindingTrace trace,
                                                    @NotNull
                                                    DataFlowInfo dataFlowInfo)