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 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, JetExpression delegateExpression, JetType delegateType, BindingTrace trace, LexicalScope scope, boolean isGet, boolean isComplete)
           
 JetType getDelegatedPropertyGetMethodReturnType(PropertyDescriptor propertyDescriptor, JetExpression delegateExpression, JetType delegateType, BindingTrace trace, LexicalScope scope)
           
 void resolveDelegatedPropertyGetMethod(PropertyDescriptor propertyDescriptor, JetExpression delegateExpression, JetType delegateType, BindingTrace trace, LexicalScope scope)
           
 void resolveDelegatedPropertyPDMethod(PropertyDescriptor propertyDescriptor, JetExpression delegateExpression, JetType delegateType, BindingTrace trace, LexicalScope scope)
           
 void resolveDelegatedPropertySetMethod(PropertyDescriptor propertyDescriptor, JetExpression delegateExpression, JetType delegateType, BindingTrace trace, LexicalScope scope)
           
 JetType resolveDelegateExpression(JetExpression delegateExpression, JetProperty jetProperty, PropertyDescriptor propertyDescriptor, LexicalScope propertyDeclarationInnerScope, LexicalScope accessorScope, 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
Constructor Detail

DelegatedPropertyResolver

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

getDelegatedPropertyGetMethodReturnType

@Nullable
public JetType getDelegatedPropertyGetMethodReturnType(@NotNull
                                                                PropertyDescriptor propertyDescriptor,
                                                                @NotNull
                                                                JetExpression delegateExpression,
                                                                @NotNull
                                                                JetType delegateType,
                                                                @NotNull
                                                                BindingTrace trace,
                                                                @NotNull
                                                                LexicalScope scope)

resolveDelegatedPropertyGetMethod

public void resolveDelegatedPropertyGetMethod(@NotNull
                                              PropertyDescriptor propertyDescriptor,
                                              @NotNull
                                              JetExpression delegateExpression,
                                              @NotNull
                                              JetType delegateType,
                                              @NotNull
                                              BindingTrace trace,
                                              @NotNull
                                              LexicalScope scope)

resolveDelegatedPropertySetMethod

public void resolveDelegatedPropertySetMethod(@NotNull
                                              PropertyDescriptor propertyDescriptor,
                                              @NotNull
                                              JetExpression delegateExpression,
                                              @NotNull
                                              JetType delegateType,
                                              @NotNull
                                              BindingTrace trace,
                                              @NotNull
                                              LexicalScope scope)

resolveDelegatedPropertyPDMethod

public void resolveDelegatedPropertyPDMethod(@NotNull
                                             PropertyDescriptor propertyDescriptor,
                                             @NotNull
                                             JetExpression delegateExpression,
                                             @NotNull
                                             JetType delegateType,
                                             @NotNull
                                             BindingTrace trace,
                                             @NotNull
                                             LexicalScope scope)

getDelegatedPropertyConventionMethod

public OverloadResolutionResults<FunctionDescriptor> getDelegatedPropertyConventionMethod(@NotNull
                                                                                          PropertyDescriptor propertyDescriptor,
                                                                                          @NotNull
                                                                                          JetExpression delegateExpression,
                                                                                          @NotNull
                                                                                          JetType delegateType,
                                                                                          @NotNull
                                                                                          BindingTrace trace,
                                                                                          @NotNull
                                                                                          LexicalScope scope,
                                                                                          boolean isGet,
                                                                                          boolean isComplete)

resolveDelegateExpression

@Nullable
public JetType resolveDelegateExpression(@NotNull
                                                  JetExpression delegateExpression,
                                                  @NotNull
                                                  JetProperty jetProperty,
                                                  @NotNull
                                                  PropertyDescriptor propertyDescriptor,
                                                  @NotNull
                                                  LexicalScope propertyDeclarationInnerScope,
                                                  @NotNull
                                                  LexicalScope accessorScope,
                                                  @NotNull
                                                  BindingTrace trace,
                                                  @NotNull
                                                  DataFlowInfo dataFlowInfo)